diff --git a/bundles/org.eclipse.e4.ui.workbench.fragment/Application.xmi b/bundles/org.eclipse.e4.ui.workbench.fragment/Application.xmi
index efcab42..f202148 100644
--- a/bundles/org.eclipse.e4.ui.workbench.fragment/Application.xmi
+++ b/bundles/org.eclipse.e4.ui.workbench.fragment/Application.xmi
@@ -27,14 +27,14 @@
       <children xsi:type="org.eclipse.e4.ui.model.application:MSashForm" policy="HorizontalSash">
         <children xsi:type="org.eclipse.e4.ui.model.application:MSashForm" policy="VerticalSash">
           <children xsi:type="org.eclipse.e4.ui.model.application:MStack">
-            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Library" tooltip="" URI="platform:/plugin/org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.parts.SampleView"/>
+            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Library" tooltip="" URI="bundleclass://org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.parts.SampleView"/>
           </children>
         </children>
         <children xsi:type="org.eclipse.e4.ui.model.application:MSashForm" policy="VerticalSash">
-          <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Preview" URI="platform:/plugin/org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.parts.SampleView"/>
+          <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Preview" URI="bundleclass://org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.parts.SampleView"/>
           <children xsi:type="org.eclipse.e4.ui.model.application:MStack">
-            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Thumbnails" URI="platform:/plugin/org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.parts.SampleView"/>
-            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Exif" tooltip="" URI="platform:/plugin/org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.parts.SampleView"/>
+            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Thumbnails" URI="bundleclass://org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.parts.SampleView"/>
+            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Exif" tooltip="" URI="bundleclass://org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.parts.SampleView"/>
           </children>
           <weights>70</weights>
           <weights>30</weights>
@@ -43,7 +43,7 @@
         <weights>70</weights>
       </children>
     </children>
-    <handlers URI="platform:/plugin/org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.ExitHandler" command="//@command.0"/>
+    <handlers URI="bundleclass://org.eclipse.e4.ui.workbench/org.eclipse.e4.workbench.ui.internal.ExitHandler" command="//@command.0"/>
   </windows>
   <command id="org.eclipse.e4.ui.workbench.exit" name="Exit"/>
 </org.eclipse.e4.ui.model.application:MApplication>
diff --git a/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/e4/compatibility/LegacyEditor.java b/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/e4/compatibility/LegacyEditor.java
index 9660059..e92b87f 100644
--- a/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/e4/compatibility/LegacyEditor.java
+++ b/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/e4/compatibility/LegacyEditor.java
@@ -14,17 +14,14 @@
 import java.util.Map;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.e4.core.services.context.IEclipseContext;
-import org.eclipse.e4.core.services.context.spi.IContextConstants;
+import org.eclipse.e4.core.contexts.IEclipseContext;
 import org.eclipse.e4.extensions.ExtensionUtils;
 import org.eclipse.e4.extensions.ModelEditorReference;
-import org.eclipse.e4.ui.model.application.MPart;
+import org.eclipse.e4.ui.internal.workbench.Trackable;
+import org.eclipse.e4.ui.internal.workbench.swt.AbstractPartRenderer;
+import org.eclipse.e4.ui.model.application.ui.basic.MPart;
 import org.eclipse.e4.ui.widgets.CTabFolder;
 import org.eclipse.e4.ui.widgets.CTabItem;
-import org.eclipse.e4.ui.workbench.swt.internal.AbstractPartRenderer;
-import org.eclipse.e4.workbench.ui.internal.Activator;
-import org.eclipse.e4.workbench.ui.internal.Policy;
-import org.eclipse.e4.workbench.ui.internal.Trackable;
 import org.eclipse.swt.events.DisposeEvent;
 import org.eclipse.swt.events.DisposeListener;
 import org.eclipse.swt.layout.FillLayout;
@@ -54,7 +51,7 @@
  * 
  */
 public class LegacyEditor {
-	public final static String LEGACY_VIEW_URI = "platform:/plugin/org.eclipse.ui.workbench/org.eclipse.e4.compatibility.LegacyEditor"; //$NON-NLS-1$
+	public final static String LEGACY_VIEW_URI = "bundleclass://org.eclipse.ui.workbench/org.eclipse.e4.compatibility.LegacyEditor"; //$NON-NLS-1$
 
 	private static final String IS_DIRTY = "isDirty"; //$NON-NLS-1$
 	private static final String EDITOR_DISPOSED = "editorDisposed"; //$NON-NLS-1$
@@ -123,8 +120,8 @@
 					.get(WorkbenchPage.class.getName());
 			ModelEditorReference ref = new ModelEditorReference(part, page);
 			EditorSite site = new EditorSite(ref, editorWBPart, page);
-			EditorActionBars bars = getEditorActionBars(desc, page, page
-					.getWorkbenchWindow(), part.getId());
+			EditorActionBars bars = getEditorActionBars(desc, page,
+					page.getWorkbenchWindow(), part.getId());
 			site.setActionBars(bars);
 			site.setConfigurationElement(editorElement);
 			editorWBPart.init(site, (IEditorInput) localContext
diff --git a/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/e4/compatibility/LegacyView.java b/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/e4/compatibility/LegacyView.java
index 7c54c34..cd98b2e 100644
--- a/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/e4/compatibility/LegacyView.java
+++ b/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/e4/compatibility/LegacyView.java
@@ -14,14 +14,13 @@
 import java.util.Set;
 import org.eclipse.core.runtime.CoreException;
 import org.eclipse.core.runtime.IConfigurationElement;
-import org.eclipse.e4.core.services.context.IEclipseContext;
-import org.eclipse.e4.core.services.context.spi.IContextConstants;
+import org.eclipse.e4.core.contexts.IEclipseContext;
 import org.eclipse.e4.extensions.ExtensionUtils;
 import org.eclipse.e4.extensions.ModelViewReference;
 import org.eclipse.e4.ui.model.application.MApplicationFactory;
-import org.eclipse.e4.ui.model.application.MMenu;
-import org.eclipse.e4.ui.model.application.MPart;
-import org.eclipse.e4.ui.model.application.MToolBar;
+import org.eclipse.e4.ui.model.application.ui.basic.MPart;
+import org.eclipse.e4.ui.model.application.ui.menu.MMenu;
+import org.eclipse.e4.ui.model.application.ui.menu.MToolBar;
 import org.eclipse.e4.workbench.ui.menus.MenuHelper;
 import org.eclipse.jface.action.MenuManager;
 import org.eclipse.jface.action.ToolBarManager;
@@ -42,7 +41,7 @@
  * 
  */
 public class LegacyView {
-	public final static String LEGACY_VIEW_URI = "platform:/plugin/org.eclipse.ui.workbench/org.eclipse.e4.compatibility.LegacyView"; //$NON-NLS-1$
+	public final static String LEGACY_VIEW_URI = "bundleclass://org.eclipse.ui.workbench/org.eclipse.e4.compatibility.LegacyView"; //$NON-NLS-1$
 	private IViewPart impl;
 
 	public LegacyView(Composite parent, IEclipseContext context, MPart part) {
@@ -108,8 +107,8 @@
 			String tbURI = "toolbar:" + part.getId(); //$NON-NLS-1$
 			menuSvc.populateContributionManager(tbMgr, tbURI);
 			MToolBar viewTB = MApplicationFactory.eINSTANCE.createToolBar();
-			MenuHelper.processToolbarManager(localContext, viewTB, tbMgr
-					.getItems());
+			MenuHelper.processToolbarManager(localContext, viewTB,
+					tbMgr.getItems());
 			part.setToolbar(viewTB);
 			tbMgr.getControl().dispose();
 
@@ -119,8 +118,8 @@
 			menuSvc.populateContributionManager(menuMgr, menuURI);
 			MMenu viewMenu = MApplicationFactory.eINSTANCE.createMenu();
 			viewMenu.setId(menuURI);
-			MenuHelper.processMenuManager(localContext, viewMenu, menuMgr
-					.getItems());
+			MenuHelper.processMenuManager(localContext, viewMenu,
+					menuMgr.getItems());
 			part.getMenus().add(viewMenu);
 		} catch (Exception e) {
 			e.printStackTrace();
diff --git a/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/ui/internal/Workbench.java b/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/ui/internal/Workbench.java
index 9b02385..ce0a3ff 100644
--- a/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/ui/internal/Workbench.java
+++ b/bundles/org.eclipse.e4.ui.workbench.fragment/src/org/eclipse/ui/internal/Workbench.java
@@ -63,22 +63,16 @@
 import org.eclipse.core.runtime.dynamichelpers.IExtensionTracker;
 import org.eclipse.core.runtime.jobs.Job;
 import org.eclipse.e4.core.commands.ECommandService;
-import org.eclipse.e4.core.services.context.EclipseContextFactory;
-import org.eclipse.e4.core.services.context.IEclipseContext;
-import org.eclipse.e4.core.services.context.spi.ContextFunction;
-import org.eclipse.e4.core.services.context.spi.IContextConstants;
+import org.eclipse.e4.core.contexts.ContextFunction;
+import org.eclipse.e4.core.contexts.EclipseContextFactory;
+import org.eclipse.e4.core.contexts.IEclipseContext;
 import org.eclipse.e4.extensions.ExtensionUtils;
+import org.eclipse.e4.ui.internal.workbench.swt.ResourceUtility;
 import org.eclipse.e4.ui.model.application.MApplication;
 import org.eclipse.e4.ui.model.application.MApplicationFactory;
-import org.eclipse.e4.ui.model.application.MCommand;
-import org.eclipse.e4.ui.model.application.MPerspective;
+import org.eclipse.e4.ui.model.application.commands.MCommand;
+import org.eclipse.e4.ui.model.application.ui.advanced.MPerspective;
 import org.eclipse.e4.ui.services.EContextService;
-import org.eclipse.e4.ui.workbench.swt.Activator;
-import org.eclipse.e4.ui.workbench.swt.internal.CSSStylingSupport;
-import org.eclipse.e4.ui.workbench.swt.internal.ResourceUtility;
-import org.eclipse.e4.ui.workbench.swt.internal.WorkbenchWindowHandler;
-import org.eclipse.e4.workbench.ui.IResourceUtiltities;
-import org.eclipse.e4.workbench.ui.internal.UISchedulerStrategy;
 import org.eclipse.e4.workbench.ui.menus.MenuHelper;
 import org.eclipse.emf.common.util.URI;
 import org.eclipse.emf.ecore.EObject;
@@ -86,12 +80,12 @@
 import org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl;
 import org.eclipse.jface.action.ActionContributionItem;
 import org.eclipse.jface.action.ExternalActionManager;
-import org.eclipse.jface.action.IAction;
-import org.eclipse.jface.action.LegacyActionTools;
-import org.eclipse.jface.action.MenuManager;
 import org.eclipse.jface.action.ExternalActionManager.CommandCallback;
 import org.eclipse.jface.action.ExternalActionManager.IActiveChecker;
 import org.eclipse.jface.action.ExternalActionManager.IExecuteApplicable;
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.action.LegacyActionTools;
+import org.eclipse.jface.action.MenuManager;
 import org.eclipse.jface.bindings.BindingManager;
 import org.eclipse.jface.bindings.BindingManagerEvent;
 import org.eclipse.jface.bindings.IBindingManagerListener;
@@ -208,7 +202,6 @@
 import org.eclipse.ui.internal.themes.WorkbenchThemeManager;
 import org.eclipse.ui.internal.tweaklets.GrabFocus;
 import org.eclipse.ui.internal.tweaklets.Tweaklets;
-import org.eclipse.ui.internal.tweaklets.WorkbenchImplementation;
 import org.eclipse.ui.internal.util.PrefUtil;
 import org.eclipse.ui.internal.util.Util;
 import org.eclipse.ui.intro.IIntroManager;
@@ -457,7 +450,7 @@
 		Location instanceLocation = getInstanceLocation();
 		PackageAdmin packageAdmin = (PackageAdmin) appContext
 				.get(PackageAdmin.class.getName());
-		String engineURI = "platform:/plugin/org.eclipse.e4.ui.workbench.swt/"; //$NON-NLS-1$
+		String engineURI = "bundleclass://org.eclipse.e4.ui.workbench.swt/"; //$NON-NLS-1$
 		engineURI += "org.eclipse.e4.ui.workbench.swt.internal.PartRenderingEngine"; //$NON-NLS-1$
 
 		e4Workbench = new org.eclipse.e4.workbench.ui.internal.Workbench(
@@ -664,8 +657,9 @@
 						// for this to be relevant
 					}
 				};
-				registration[0] = context.registerService(StartupMonitor.class
-						.getName(), startupMonitor, properties);
+				registration[0] = context.registerService(
+						StartupMonitor.class.getName(), startupMonitor,
+						properties);
 
 				splash.init(splashShell);
 			}
@@ -970,8 +964,7 @@
 				public void run() {
 
 					org.eclipse.e4.workbench.ui.internal.Activator
-							.trace(
-									org.eclipse.e4.workbench.ui.internal.Policy.DEBUG_WORKBENCH,
+							.trace(org.eclipse.e4.workbench.ui.internal.Policy.DEBUG_WORKBENCH,
 									"saveing model to " + getXmiLocation(), null); //$NON-NLS-1$
 					try {
 						// because we created the model we need to set the
@@ -999,8 +992,8 @@
 						message = WorkbenchMessages.ErrorClosingNoArg;
 					} else {
 						message = NLS.bind(
-								WorkbenchMessages.ErrorClosingOneArg, e
-										.getMessage());
+								WorkbenchMessages.ErrorClosingOneArg,
+								e.getMessage());
 					}
 
 					if (!MessageDialog.openQuestion(null,
@@ -1033,8 +1026,8 @@
 	}
 
 	private String getXmiLocation() {
-		return WorkbenchPlugin.getDefault().getDataLocation().append(
-				"workbench.xmi").toOSString(); //$NON-NLS-1$
+		return WorkbenchPlugin.getDefault().getDataLocation()
+				.append("workbench.xmi").toOSString(); //$NON-NLS-1$
 	}
 
 	/*
@@ -1587,8 +1580,8 @@
 						new IActiveChecker() {
 							public final boolean isActive(final String commandId) {
 								return getActivitySupport()
-										.getActivityManager().getIdentifier(
-												commandId).isEnabled();
+										.getActivityManager()
+										.getIdentifier(commandId).isEnabled();
 							}
 						}, new IExecuteApplicable() {
 							public boolean isApplicable(IAction action) {
@@ -1609,9 +1602,12 @@
 			public void runWithException() {
 				ColorDefinition[] colorDefinitions = WorkbenchPlugin
 						.getDefault().getThemeRegistry().getColors();
-				ThemeElementHelper.populateRegistry(getThemeManager().getTheme(
-						IThemeManager.DEFAULT_THEME), colorDefinitions,
-						PrefUtil.getInternalPreferenceStore());
+				ThemeElementHelper
+						.populateRegistry(
+								getThemeManager().getTheme(
+										IThemeManager.DEFAULT_THEME),
+								colorDefinitions,
+								PrefUtil.getInternalPreferenceStore());
 			}
 		});
 	}
@@ -1828,8 +1824,7 @@
 					}
 				});
 		e4Context
-				.set(
-						ISources.ACTIVE_WORKBENCH_WINDOW_IS_PERSPECTIVEBAR_VISIBLE_NAME,
+				.set(ISources.ACTIVE_WORKBENCH_WINDOW_IS_PERSPECTIVEBAR_VISIBLE_NAME,
 						new ContextFunction() {
 							@Override
 							public Object compute(IEclipseContext context,
@@ -1856,8 +1851,7 @@
 						final String perspId = persp == null ? null : persp
 								.getId();
 						org.eclipse.e4.workbench.ui.internal.Activator
-								.trace(
-										org.eclipse.e4.workbench.ui.internal.Policy.DEBUG_CMDS,
+								.trace(org.eclipse.e4.workbench.ui.internal.Policy.DEBUG_CMDS,
 										"asked for perspective " + perspId, //$NON-NLS-1$
 										null);
 						return perspId;
@@ -2104,8 +2098,8 @@
 					final Iterator i = sourceValuesByName.entrySet().iterator();
 					while (i.hasNext()) {
 						Map.Entry entry = (Map.Entry) i.next();
-						sourceChanged(0, (String) entry.getKey(), entry
-								.getValue());
+						sourceChanged(0, (String) entry.getKey(),
+								entry.getValue());
 					}
 				}
 			};
@@ -2133,8 +2127,7 @@
 					sourceValue);
 			if (updated) {
 				org.eclipse.e4.workbench.ui.internal.Activator
-						.trace(
-								org.eclipse.e4.workbench.ui.internal.Policy.DEBUG_WORKBENCH,
+						.trace(org.eclipse.e4.workbench.ui.internal.Policy.DEBUG_WORKBENCH,
 								"activated shell: " + sourceValue, null); //$NON-NLS-1$
 				if (sourceValue instanceof Shell) {
 					activateShell((Shell) sourceValue);
@@ -2424,8 +2417,8 @@
 
 				public void runWithException() throws Throwable {
 					ErrorDialog.openError(null,
-							WorkbenchMessages.Problems_Opening_Page, e
-									.getMessage(), e.getStatus());
+							WorkbenchMessages.Problems_Opening_Page,
+							e.getMessage(), e.getStatus());
 				}
 			});
 		}
@@ -2596,8 +2589,8 @@
 		}
 		Job job = new Job("Workbench early startup") { //$NON-NLS-1$
 			protected IStatus run(IProgressMonitor monitor) {
-				HashSet disabledPlugins = new HashSet(Arrays
-						.asList(getDisabledEarlyActivatedPlugins()));
+				HashSet disabledPlugins = new HashSet(
+						Arrays.asList(getDisabledEarlyActivatedPlugins()));
 				monitor.beginTask(WorkbenchMessages.Workbench_startingPlugins,
 						extensions.length);
 				for (int i = 0; i < extensions.length; ++i) {
@@ -2679,12 +2672,11 @@
 			display.asyncExec(new Runnable() {
 				public void run() {
 					if (isStarting()) {
-						WorkbenchPlugin
-								.log(StatusUtil
-										.newStatus(
-												IStatus.WARNING,
-												"Event loop should not be run while the Workbench is starting.", //$NON-NLS-1$
-												new RuntimeException()));
+						WorkbenchPlugin.log(StatusUtil
+								.newStatus(
+										IStatus.WARNING,
+										"Event loop should not be run while the Workbench is starting.", //$NON-NLS-1$
+										new RuntimeException()));
 					}
 				}
 			});
@@ -2988,10 +2980,9 @@
 					.findPerspectiveWithId(perspectiveId);
 			if (desc == null) {
 				throw new WorkbenchException(
-						NLS
-								.bind(
-										WorkbenchMessages.WorkbenchPage_ErrorCreatingPerspective,
-										perspectiveId));
+						NLS.bind(
+								WorkbenchMessages.WorkbenchPage_ErrorCreatingPerspective,
+								perspectiveId));
 			}
 			win.getShell().open();
 			if (page == null) {
@@ -3003,8 +2994,8 @@
 		}
 
 		// Just throw an exception....
-		throw new WorkbenchException(NLS
-				.bind(WorkbenchMessages.Workbench_showPerspectiveError,
+		throw new WorkbenchException(
+				NLS.bind(WorkbenchMessages.Workbench_showPerspectiveError,
 						perspectiveId));
 	}
 
@@ -3094,10 +3085,9 @@
 						.findPerspectiveWithId(perspectiveId);
 				if (desc == null) {
 					throw new WorkbenchException(
-							NLS
-									.bind(
-											WorkbenchMessages.WorkbenchPage_ErrorCreatingPerspective,
-											perspectiveId));
+							NLS.bind(
+									WorkbenchMessages.WorkbenchPage_ErrorCreatingPerspective,
+									perspectiveId));
 				}
 				win.getShell().open();
 				if (page == null) {
@@ -3122,10 +3112,9 @@
 						.findPerspectiveWithId(perspectiveId);
 				if (desc == null) {
 					throw new WorkbenchException(
-							NLS
-									.bind(
-											WorkbenchMessages.WorkbenchPage_ErrorCreatingPerspective,
-											perspectiveId));
+							NLS.bind(
+									WorkbenchMessages.WorkbenchPage_ErrorCreatingPerspective,
+									perspectiveId));
 				}
 				win.getShell().open();
 				if (page == null) {
diff --git a/examples/org.eclipse.e4.demo.e4photo.flickr/xmi/components.e4xmi b/examples/org.eclipse.e4.demo.e4photo.flickr/xmi/components.e4xmi
index 6dea43e..fc6e480 100644
--- a/examples/org.eclipse.e4.demo.e4photo.flickr/xmi/components.e4xmi
+++ b/examples/org.eclipse.e4.demo.e4photo.flickr/xmi/components.e4xmi
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="ASCII"?>
 <application:ModelComponents xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:application="http://www.eclipse.org/ui/2008/UIModel" xsi:schemaLocation="http://www.eclipse.org/ui/2008/UIModel ../../org.eclipse.e4.ui.model.workbench/model/UIElements.ecore" xmi:id="_UW9TZfr3Ed6gmo7caOxU9h">
   <components xmi:id="_UW9TZfr3Ed6gmo7caOxU9q" id="" parentID="_AXU5Wu8IEd6FC9cDb6iV7g">
-    <children xsi:type="application:Part" id="flickrView" URI="platform:/plugin/org.eclipse.e4.demo.e4photo.flickr/org.eclipse.e4.demo.e4photo.flickr.ui.Flickr" persistedState="" label="Flickr Search"/>
+    <children xsi:type="application:Part" id="flickrView" URI="bundleclass://org.eclipse.e4.demo.e4photo.flickr/org.eclipse.e4.demo.e4photo.flickr.ui.Flickr" persistedState="" label="Flickr Search"/>
   </components>
 </application:ModelComponents>
diff --git a/examples/org.eclipse.e4.demo.e4photo.flickr/xmi/fragment.e4xmi b/examples/org.eclipse.e4.demo.e4photo.flickr/xmi/fragment.e4xmi
index 4bff673..6bed8a5 100644
--- a/examples/org.eclipse.e4.demo.e4photo.flickr/xmi/fragment.e4xmi
+++ b/examples/org.eclipse.e4.demo.e4photo.flickr/xmi/fragment.e4xmi
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="ASCII"?>
 <fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:basic="http://www.eclipse.org/ui/2010/UIModel/application/ui/basic" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmi:id="_BVHewHimEd-BhZHV_Fwq8Q">
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_PoZXIHimEd-cPe0oSIgEPQ" featurename="children" parentElementId="_sRLYgEleEd-TVO58rzJVgA">
-    <elements xsi:type="basic:Part" xmi:id="_ZyE84HimEd-cPe0oSIgEPQ" contributionURI="platform:/plugin/org.eclipse.e4.demo.e4photo.flickr/org.eclipse.e4.demo.e4photo.flickr.ui.Flickr" label="Flickr Search"/>
+    <elements xsi:type="basic:Part" xmi:id="_ZyE84HimEd-cPe0oSIgEPQ" contributionURI="bundleclass://org.eclipse.e4.demo.e4photo.flickr/org.eclipse.e4.demo.e4photo.flickr.ui.Flickr" label="Flickr Search"/>
   </fragments>
 </fragment:ModelFragments>
diff --git a/examples/org.eclipse.e4.demo.log/xmi/components.e4xmi b/examples/org.eclipse.e4.demo.log/xmi/components.e4xmi
index 4751f3c..9868083 100644
--- a/examples/org.eclipse.e4.demo.log/xmi/components.e4xmi
+++ b/examples/org.eclipse.e4.demo.log/xmi/components.e4xmi
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="ASCII"?>
 <application:ModelComponents xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:advanced="http://www.eclipse.org/ui/2010/UIModel/application/ui/advanced" xmlns:application="http://www.eclipse.org/ui/2010/UIModel/application" xmlns:basic="http://www.eclipse.org/ui/2010/UIModel/application/ui/basic" xmlns:menu="http://www.eclipse.org/ui/2010/UIModel/application/ui/menu"  xmi:id="_UW9TZfr3Ed6gmo7caOxU9h">
   <components xmi:id="_UW9TZfr3Ed6gmo7caOxU9q" elementId="component.add.bindingContextView" parentID="org.eclipse.e4.ide.application">
-    <descriptors xmi:id="_2JqwsDEtEd-VhpFUss_l2g" elementId="org.eclipse.e4.demo.log.contextView" contributionURI="platform:/plugin/org.eclipse.e4.demo.log/org.eclipse.e4.demo.log.KeyContextView" label="Binding Context View" category="org.eclipse.e4.secondaryDataStack">
+    <descriptors xmi:id="_2JqwsDEtEd-VhpFUss_l2g" elementId="org.eclipse.e4.demo.log.contextView" contributionURI="bundleclass://org.eclipse.e4.demo.log/org.eclipse.e4.demo.log.KeyContextView" label="Binding Context View" category="org.eclipse.e4.secondaryDataStack">
       <bindingContexts>org.eclipse.e4.ui.contexts.views</bindingContexts>
     </descriptors>
-    <handlers xmi:id="_8DQrEDK-Ed-ltJ9rgXYhSw" elementId="bindingContexts.display.handler" contributionURI="platform:/plugin/org.eclipse.e4.demo.log/org.eclipse.e4.demo.log.ViewCurrentContextsHandler" command="bindingContexts.display"/>
+    <handlers xmi:id="_8DQrEDK-Ed-ltJ9rgXYhSw" elementId="bindingContexts.display.handler" contributionURI="bundleclass://org.eclipse.e4.demo.log/org.eclipse.e4.demo.log.ViewCurrentContextsHandler" command="bindingContexts.display"/>
     <commands xmi:id="bindingContexts.display" elementId="bindingContexts.display" commandName="Display Current Contexts"/>
   </components>
   <components xmi:id="_UW9TZfr3Ed6gmo7caOxU9y" elementId="component.add.bindingContextView.legacy" parentID="org.eclipse.e4.legacy.ide.application">
-    <descriptors xmi:id="_2JqwsDEtEd-VhpFUss_l2g" elementId="org.eclipse.e4.demo.log.contextView" contributionURI="platform:/plugin/org.eclipse.e4.demo.log/org.eclipse.e4.demo.log.KeyContextView" label="Binding Context View" category="org.eclipse.e4.secondaryDataStack">
+    <descriptors xmi:id="_2JqwsDEtEd-VhpFUss_l2g" elementId="org.eclipse.e4.demo.log.contextView" contributionURI="bundleclass://org.eclipse.e4.demo.log/org.eclipse.e4.demo.log.KeyContextView" label="Binding Context View" category="org.eclipse.e4.secondaryDataStack">
       <bindingContexts>org.eclipse.e4.ui.contexts.views</bindingContexts>
     </descriptors>
-    <handlers xmi:id="_8DQrEDK-Ed-ltJ9rgXYhSw" elementId="bindingContexts.display.handler" contributionURI="platform:/plugin/org.eclipse.e4.demo.log/org.eclipse.e4.demo.log.ViewCurrentContextsHandler" command="bindingContexts.display"/>
+    <handlers xmi:id="_8DQrEDK-Ed-ltJ9rgXYhSw" elementId="bindingContexts.display.handler" contributionURI="bundleclass://org.eclipse.e4.demo.log/org.eclipse.e4.demo.log.ViewCurrentContextsHandler" command="bindingContexts.display"/>
     <commands xmi:id="bindingContexts.display" elementId="bindingContexts.display" commandName="Display Current Contexts"/>
   </components>
   <components xmi:id="_UW9TZfr3Ed6gmo7caOxU9l" elementId="component.add.menu.window" parentID="org.eclipse.e4.ide.app.menu.window">
diff --git a/examples/org.eclipse.e4.demo.minimal/Application.e4xmi b/examples/org.eclipse.e4.demo.minimal/Application.e4xmi
index 43f5241..df78989 100644
--- a/examples/org.eclipse.e4.demo.minimal/Application.e4xmi
+++ b/examples/org.eclipse.e4.demo.minimal/Application.e4xmi
@@ -3,12 +3,12 @@
   <children xsi:type="basic:TrimmedWindow" xmi:id="_UOFhgIBJEd-ARoTbg-msxg" elementId="main" selectedElement="_-1RUYIBJEd-ARoTbg-msxg" label="" width="640" height="480">
     <children xsi:type="basic:PartSashContainer" xmi:id="_-1RUYIBJEd-ARoTbg-msxg" horizontal="true">
       <children xsi:type="basic:PartStack" xmi:id="__lfQYIBJEd-ARoTbg-msxg">
-        <children xsi:type="basic:Part" xmi:id="_B3vm4IBKEd-ARoTbg-msxg" contributionURI="platform:/plugin/org.eclipse.e4.demo.minimal/org.eclipse.e4.demo.minimal.Part" label="Part"/>
+        <children xsi:type="basic:Part" xmi:id="_B3vm4IBKEd-ARoTbg-msxg" contributionURI="bundleclass://org.eclipse.e4.demo.minimal/org.eclipse.e4.demo.minimal.Part" label="Part"/>
       </children>
     </children>
     <mainMenu xmi:id="_u006IIBKEd-ARoTbg-msxg">
       <children xsi:type="menu:Menu" xmi:id="_wDyAkIBKEd-ARoTbg-msxg" label="File">
-        <children xsi:type="menu:DirectMenuItem" xmi:id="_1DVq0IBKEd-ARoTbg-msxg" label="Exit" contributionURI="platform:/plugin/org.eclipse.e4.demo.minimal/org.eclipse.e4.demo.minimal.ExitHandler"/>
+        <children xsi:type="menu:DirectMenuItem" xmi:id="_1DVq0IBKEd-ARoTbg-msxg" label="Exit" contributionURI="bundleclass://org.eclipse.e4.demo.minimal/org.eclipse.e4.demo.minimal.ExitHandler"/>
       </children>
     </mainMenu>
   </children>
diff --git a/examples/org.eclipse.e4.demo.minimal/css/minimal.css b/examples/org.eclipse.e4.demo.minimal/css/minimal.css
index 0423c5d..af04df0 100644
--- a/examples/org.eclipse.e4.demo.minimal/css/minimal.css
+++ b/examples/org.eclipse.e4.demo.minimal/css/minimal.css
@@ -7,7 +7,7 @@
 }
 
 .MPartStack {
-    tab-renderer: url('platform:/plugin/org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
+    tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
     unselected-tabs-color: #FFFFFF #FFFFFF #FFFFFF 100% 100%;
     outer-keyline-color: #FFFFFF;
 	inner-keyline-color: #FFFFFF;
diff --git a/examples/org.eclipse.e4.demo.modifier/xmi/UIModelViewer.xmi b/examples/org.eclipse.e4.demo.modifier/xmi/UIModelViewer.xmi
index 02775f9..84f7ac6 100644
--- a/examples/org.eclipse.e4.demo.modifier/xmi/UIModelViewer.xmi
+++ b/examples/org.eclipse.e4.demo.modifier/xmi/UIModelViewer.xmi
@@ -1,11 +1,11 @@
 <?xml version="1.0" encoding="ASCII"?>
 <application:Window xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:application="http://www.eclipse.org/ui/2008/UIModel" xsi:schemaLocation="http://www.eclipse.org/ui/2008/UIModel ../../org.eclipse.e4.ui.model.workbench/model/UIElements.ecore">
   <children xsi:type="application:PartSashContainer" horizontal="true">
-    <children xsi:type="application:Part" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.ModelExplorer" name="Model View"/>
+    <children xsi:type="application:Part" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.ModelExplorer" name="Model View"/>
     <children xsi:type="application:PartStack">
-      <children xsi:type="application:Part" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.TabBasic" name="&amp;Basic"/>
-      <children xsi:type="application:Part" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.TabAdvanced" name="&amp;Advanced"/>
-      <children xsi:type="application:Part" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ElementView" name="&amp;Javascript"/>
+      <children xsi:type="application:Part" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.TabBasic" name="&amp;Basic"/>
+      <children xsi:type="application:Part" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.TabAdvanced" name="&amp;Advanced"/>
+      <children xsi:type="application:Part" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ElementView" name="&amp;Javascript"/>
     </children>
   </children>
 </application:Window>
diff --git a/examples/org.eclipse.e4.demo.modifier/xmi/modelViewer.xmi b/examples/org.eclipse.e4.demo.modifier/xmi/modelViewer.xmi
index 48e28cc..06d1ccf 100644
--- a/examples/org.eclipse.e4.demo.modifier/xmi/modelViewer.xmi
+++ b/examples/org.eclipse.e4.demo.modifier/xmi/modelViewer.xmi
@@ -1,11 +1,11 @@
 <?xml version="1.0" encoding="ASCII"?>
 <org.eclipse.e4.ui.model.application:MWindow xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:org.eclipse.e4.ui.model.application="http://www.eclipse.org/ui/2008/Application" xsi:schemaLocation="http://www.eclipse.org/ui/2008/Application ../../org.eclipse.e4.ui.model.workbench/model/Application.ecore" xmi:id="_0" id="UI Editor" visible="false" name="UI Model Editor" width="600" height="500">
   <children xsi:type="org.eclipse.e4.ui.model.application:MSashForm" policy="VerticalSash">
-    <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Model View" tooltip="" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.ModelExplorer"/>
+    <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Model View" tooltip="" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.ModelExplorer"/>
     <children xsi:type="org.eclipse.e4.ui.model.application:MStack">
-      <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="&amp;Basic" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.TabBasic"/>
-      <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="&amp;Advanced" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.TabAdvanced"/>
-      <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="&amp;Javascript" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ElementView"/>
+      <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="&amp;Basic" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.TabBasic"/>
+      <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="&amp;Advanced" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.viewer.TabAdvanced"/>
+      <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="&amp;Javascript" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ElementView"/>
     </children>
     <variables>selection</variables>
     <weights>50</weights>
diff --git a/examples/org.eclipse.e4.demo.modifier/xmi/modifyWorkbench.xmi b/examples/org.eclipse.e4.demo.modifier/xmi/modifyWorkbench.xmi
index 59b754b..1dbfced 100644
--- a/examples/org.eclipse.e4.demo.modifier/xmi/modifyWorkbench.xmi
+++ b/examples/org.eclipse.e4.demo.modifier/xmi/modifyWorkbench.xmi
@@ -27,14 +27,14 @@
       <children xsi:type="org.eclipse.e4.ui.model.application:MSashForm" policy="HorizontalSash">
         <children xsi:type="org.eclipse.e4.ui.model.application:MSashForm" policy="VerticalSash">
           <children xsi:type="org.eclipse.e4.ui.model.application:MStack">
-            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Model View" tooltip="" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ModelView"/>
+            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Model View" tooltip="" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ModelView"/>
           </children>
         </children>
         <children xsi:type="org.eclipse.e4.ui.model.application:MSashForm" policy="VerticalSash">
-          <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Preview" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ElementView"/>
+          <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Preview" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ElementView"/>
           <children xsi:type="org.eclipse.e4.ui.model.application:MStack">
-            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Thumbnails" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.SampleView"/>
-            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Exif" tooltip="" URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.SampleView"/>
+            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Thumbnails" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.SampleView"/>
+            <children xsi:type="org.eclipse.e4.ui.model.application:MContributedPart" name="Exif" tooltip="" URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.SampleView"/>
           </children>
           <weights>70</weights>
           <weights>30</weights>
@@ -43,7 +43,7 @@
         <weights>70</weights>
       </children>
     </children>
-    <handlers URI="platform:/plugin/org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ExitHandler" command="//@command.0"/>
+    <handlers URI="bundleclass://org.eclipse.e4.demo.modifier/org.eclipse.e4.demo.modifier.ExitHandler" command="//@command.0"/>
   </windows>
   <command id="org.eclipse.e4.demo.modifier.exit" name="Exit"/>
 </org.eclipse.e4.ui.model.application:MApplication>
diff --git a/examples/org.eclipse.e4.demo.simpleide.e4editor/xmi/fragment.e4xmi b/examples/org.eclipse.e4.demo.simpleide.e4editor/xmi/fragment.e4xmi
index 34b721b..d300acf 100644
--- a/examples/org.eclipse.e4.demo.simpleide.e4editor/xmi/fragment.e4xmi
+++ b/examples/org.eclipse.e4.demo.simpleide.e4editor/xmi/fragment.e4xmi
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="ASCII"?>
 <fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmlns:simpleide="http://www.eclipse.org/e4/demo/simpleide" xmi:id="_Y_hlIHZiEd-iDrIYpK0HDA">
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_s3LFAHZiEd-84etnte_XqQ" featurename="editorPartDescriptors" parentElementId="app.simpleide">
-    <elements xsi:type="simpleide:EditorPartDescriptor" xmi:id="_Vg-BUHZnEd-hBfer1g14pA" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.e4editor/icons/application_view_tile.png" contributionURI="platform:/plugin/org.eclipse.e4.tools.emf.ui/org.eclipse.e4.tools.emf.ui.internal.wbm.ApplicationModelEditor">
+    <elements xsi:type="simpleide:EditorPartDescriptor" xmi:id="_Vg-BUHZnEd-hBfer1g14pA" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.e4editor/icons/application_view_tile.png" contributionURI="bundleclass://org.eclipse.e4.tools.emf.ui/org.eclipse.e4.tools.emf.ui.internal.wbm.ApplicationModelEditor">
       <fileextensions>e4xmi</fileextensions>
     </elements>
   </fragments>
diff --git a/examples/org.eclipse.e4.demo.simpleide.editor.text/xmi/fragment.e4xmi b/examples/org.eclipse.e4.demo.simpleide.editor.text/xmi/fragment.e4xmi
index bfd2660..b327453 100644
--- a/examples/org.eclipse.e4.demo.simpleide.editor.text/xmi/fragment.e4xmi
+++ b/examples/org.eclipse.e4.demo.simpleide.editor.text/xmi/fragment.e4xmi
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="ASCII"?>
 <fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmlns:simpleide="http://www.eclipse.org/e4/demo/simpleide" xmi:id="_jwyiYHieEd-X-LLzc-gFOA">
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_phxCgHieEd-X-LLzc-gFOA" featurename="editorPartDescriptors" parentElementId="app.simpleide">
-    <elements xsi:type="simpleide:EditorPartDescriptor" xmi:id="_7qZb0HieEd-ivry1rGVmOg" label="Text Editor" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.editor.text/icons/file_obj.gif" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.editor.text/org.eclipse.e4.demo.simpleide.editor.text.PlainTextEditor">
+    <elements xsi:type="simpleide:EditorPartDescriptor" xmi:id="_7qZb0HieEd-ivry1rGVmOg" label="Text Editor" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.editor.text/icons/file_obj.gif" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.editor.text/org.eclipse.e4.demo.simpleide.editor.text.PlainTextEditor">
       <fileextensions>txt</fileextensions>
     </elements>
-    <elements xsi:type="simpleide:EditorPartDescriptor" xmi:id="_ILaFUHifEd-ivry1rGVmOg" label="XML Editor" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.editor.text/icons/elements_obj.gif" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.editor.text/org.eclipse.e4.demo.simpleide.editor.text.XMLTextEditor">
+    <elements xsi:type="simpleide:EditorPartDescriptor" xmi:id="_ILaFUHifEd-ivry1rGVmOg" label="XML Editor" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.editor.text/icons/elements_obj.gif" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.editor.text/org.eclipse.e4.demo.simpleide.editor.text.XMLTextEditor">
       <fileextensions>xml</fileextensions>
     </elements>
   </fragments>
diff --git a/examples/org.eclipse.e4.demo.simpleide.editor/xmi/fragment.e4xmi b/examples/org.eclipse.e4.demo.simpleide.editor/xmi/fragment.e4xmi
index 46e366e..0422960 100644
--- a/examples/org.eclipse.e4.demo.simpleide.editor/xmi/fragment.e4xmi
+++ b/examples/org.eclipse.e4.demo.simpleide.editor/xmi/fragment.e4xmi
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="ASCII"?>
 <fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:commands="http://www.eclipse.org/ui/2010/UIModel/application/commands" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmi:id="_tkhKcHiXEd-pEoU9D4-ITQ">
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_xOhvUHidEd-X-LLzc-gFOA" featurename="handlers" parentElementId="app.simpleide">
-    <elements xsi:type="commands:Handler" xmi:id="_CDBAMHieEd-X-LLzc-gFOA" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.editor/org.eclipse.e4.demo.simpleide.editor.handler.OpenEditor" command="_9a6zsHidEd-X-LLzc-gFOA"/>
+    <elements xsi:type="commands:Handler" xmi:id="_CDBAMHieEd-X-LLzc-gFOA" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.editor/org.eclipse.e4.demo.simpleide.editor.handler.OpenEditor" command="_9a6zsHidEd-X-LLzc-gFOA"/>
   </fragments>
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_2pDeUHidEd-X-LLzc-gFOA" featurename="commands" parentElementId="app.simpleide">
     <elements xsi:type="commands:Command" xmi:id="_9a6zsHidEd-X-LLzc-gFOA" elementId="simpleide.command.openeditor" commandName="Open Editor"/>
diff --git a/examples/org.eclipse.e4.demo.simpleide.iconview/xmi/fragment.e4xmi b/examples/org.eclipse.e4.demo.simpleide.iconview/xmi/fragment.e4xmi
index 5915f2e..4c36784 100644
--- a/examples/org.eclipse.e4.demo.simpleide.iconview/xmi/fragment.e4xmi
+++ b/examples/org.eclipse.e4.demo.simpleide.iconview/xmi/fragment.e4xmi
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="ASCII"?>
 <fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:basic="http://www.eclipse.org/ui/2010/UIModel/application/descriptor/basic" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmi:id="_DxU0wHihEd-WTYrypQ0Yjg">
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_GGkN0HihEd-WTYrypQ0Yjg" featurename="descriptors" parentElementId="app.simpleide">
-    <elements xsi:type="basic:PartDescriptor" xmi:id="_W-aUsHihEd-1hY0DgxUB9A" label="Icon Folder View" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.iconview/icons/folder_picture.png" elementId="simpleide.descriptors.iconview" category="org.eclipse.e4.secondaryDataStack" closeable="true" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.iconview/org.eclipse.e4.demo.simpleide.iconview.IconView">
+    <elements xsi:type="basic:PartDescriptor" xmi:id="_W-aUsHihEd-1hY0DgxUB9A" label="Icon Folder View" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.iconview/icons/folder_picture.png" elementId="simpleide.descriptors.iconview" category="org.eclipse.e4.secondaryDataStack" closeable="true" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.iconview/org.eclipse.e4.demo.simpleide.iconview.IconView">
       <tags>View</tags>
       <tags>categoryTag:Utilities</tags>
     </elements>
diff --git a/examples/org.eclipse.e4.demo.simpleide.jdt/xmi/fragment.e4xmi b/examples/org.eclipse.e4.demo.simpleide.jdt/xmi/fragment.e4xmi
index 6c0c6d7..8d312af 100644
--- a/examples/org.eclipse.e4.demo.simpleide.jdt/xmi/fragment.e4xmi
+++ b/examples/org.eclipse.e4.demo.simpleide.jdt/xmi/fragment.e4xmi
@@ -7,10 +7,10 @@
     <elements xsi:type="commands:Command" xmi:id="_WCXtwHiiEd-QLpUkCzu7EA" elementId="simpleide.command.jdt.newannotion" commandName="New Java Annotation"/>
   </fragments>
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_aBkHMHiiEd-QLpUkCzu7EA" featurename="handlers" parentElementId="app.simpleide">
-    <elements xsi:type="commands:Handler" xmi:id="_eKIfEHiiEd-QLpUkCzu7EA" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.handlers.NewJavaClassHandler" command="_Ov-eMHiiEd-QLpUkCzu7EA"/>
-    <elements xsi:type="commands:Handler" xmi:id="_hb7nAHiiEd-QLpUkCzu7EA" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.handlers.NewJavaInterfaceHandler" command="_SUdRkHiiEd-QLpUkCzu7EA"/>
-    <elements xsi:type="commands:Handler" xmi:id="_jfZTkHiiEd-QLpUkCzu7EA" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.handlers.NewJavaEnumHandler" command="_Uncn4HiiEd-QLpUkCzu7EA"/>
-    <elements xsi:type="commands:Handler" xmi:id="_l6VE8HiiEd-QLpUkCzu7EA" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.handlers.NewJavaAnnotationHandler" command="_WCXtwHiiEd-QLpUkCzu7EA"/>
+    <elements xsi:type="commands:Handler" xmi:id="_eKIfEHiiEd-QLpUkCzu7EA" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.handlers.NewJavaClassHandler" command="_Ov-eMHiiEd-QLpUkCzu7EA"/>
+    <elements xsi:type="commands:Handler" xmi:id="_hb7nAHiiEd-QLpUkCzu7EA" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.handlers.NewJavaInterfaceHandler" command="_SUdRkHiiEd-QLpUkCzu7EA"/>
+    <elements xsi:type="commands:Handler" xmi:id="_jfZTkHiiEd-QLpUkCzu7EA" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.handlers.NewJavaEnumHandler" command="_Uncn4HiiEd-QLpUkCzu7EA"/>
+    <elements xsi:type="commands:Handler" xmi:id="_l6VE8HiiEd-QLpUkCzu7EA" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.handlers.NewJavaAnnotationHandler" command="_WCXtwHiiEd-QLpUkCzu7EA"/>
   </fragments>
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_ppKHIHiiEd-QLpUkCzu7EA" featurename="children" parentElementId="simpleide.mainmenu.file.new">
     <elements xsi:type="menu:HandledMenuItem" xmi:id="_wvvvUHiiEd-QLpUkCzu7EA" label="Class" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.jdt/icons/class_obj.gif" command="_Ov-eMHiiEd-QLpUkCzu7EA"/>
@@ -19,7 +19,7 @@
     <elements xsi:type="menu:HandledMenuItem" xmi:id="_7TroIHiiEd-QLpUkCzu7EA" label="Annotation" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.jdt/icons/annotation_obj.gif" command="_WCXtwHiiEd-QLpUkCzu7EA"/>
   </fragments>
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="__FnosHiiEd-QLpUkCzu7EA" featurename="editorPartDescriptors" parentElementId="app.simpleide">
-    <elements xsi:type="simpleide:EditorPartDescriptor" xmi:id="_EpikQHijEd-QLpUkCzu7EA" label="Java Source Editor" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.jdt/icons/jcu_obj.gif" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.internal.editor.JavaEditor">
+    <elements xsi:type="simpleide:EditorPartDescriptor" xmi:id="_EpikQHijEd-QLpUkCzu7EA" label="Java Source Editor" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.jdt/icons/jcu_obj.gif" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.jdt/org.eclipse.e4.demo.simpleide.jdt.internal.editor.JavaEditor">
       <fileextensions>java</fileextensions>
     </elements>
   </fragments>
diff --git a/examples/org.eclipse.e4.demo.simpleide.navigator/src/org/eclipse/e4/demo/simpleide/menu/ContextMenuViewProcessor.java b/examples/org.eclipse.e4.demo.simpleide.navigator/src/org/eclipse/e4/demo/simpleide/menu/ContextMenuViewProcessor.java
index 6942722..942b655 100644
--- a/examples/org.eclipse.e4.demo.simpleide.navigator/src/org/eclipse/e4/demo/simpleide/menu/ContextMenuViewProcessor.java
+++ b/examples/org.eclipse.e4.demo.simpleide.navigator/src/org/eclipse/e4/demo/simpleide/menu/ContextMenuViewProcessor.java
@@ -30,7 +30,7 @@
 		desc.setLabel("Context Menu View");
 		desc.setElementId("org.eclipse.e4.demo.simpleide.menu.ContextMenuView");
 		desc.setCategory("org.eclipse.e4.secondaryDataStack");
-		desc.setContributionURI("platform:/plugin/org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.menu.ContextMenuView");
+		desc.setContributionURI("bundleclass://org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.menu.ContextMenuView");
 
 		MMenu menu = MenuFactoryImpl.eINSTANCE.createMenu();
 		menu.getTags().add("ViewMenu");
@@ -71,7 +71,7 @@
 		MHandler handler = CommandsFactoryImpl.eINSTANCE.createHandler();
 		handler.setCommand(cmd);
 		handler.setElementId("open.dialog.on.selection");
-		handler.setContributionURI("platform:/plugin/org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.menu.OpenDialogHandler");
+		handler.setContributionURI("bundleclass://org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.menu.OpenDialogHandler");
 		app.getCommands().add(cmd);
 		app.getHandlers().add(handler);
 	}
diff --git a/examples/org.eclipse.e4.demo.simpleide.navigator/xmi/contextViewMenuFragment.e4xmi b/examples/org.eclipse.e4.demo.simpleide.navigator/xmi/contextViewMenuFragment.e4xmi
index d334f2c..cf0225f 100644
--- a/examples/org.eclipse.e4.demo.simpleide.navigator/xmi/contextViewMenuFragment.e4xmi
+++ b/examples/org.eclipse.e4.demo.simpleide.navigator/xmi/contextViewMenuFragment.e4xmi
@@ -4,10 +4,10 @@
     <elements xsi:type="commands:Command" xmi:id="_NtAhUHZdEd-izNVw4-awdw" elementId="open.dialog.on.selection" commandName="Show Info"/>
   </fragments>
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_TaVQgHZdEd-izNVw4-awdw" featurename="handlers" parentElementId="app.simpleide">
-    <elements xsi:type="commands:Handler" xmi:id="_W8wOYHZdEd-izNVw4-awdw" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.menu.OpenDialogHandler" command="_NtAhUHZdEd-izNVw4-awdw"/>
+    <elements xsi:type="commands:Handler" xmi:id="_W8wOYHZdEd-izNVw4-awdw" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.menu.OpenDialogHandler" command="_NtAhUHZdEd-izNVw4-awdw"/>
   </fragments>
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_lAjq4HZeEd-R6aDhnXWjVw" featurename="descriptors" parentElementId="app.simpleide">
-    <elements xsi:type="basic:PartDescriptor" xmi:id="_wtS-0HZeEd-R6aDhnXWjVw" label="Context Menu View" elementId="org.eclipse.e4.demo.simpleide.menu.ContextMenuView" category="org.eclipse.e4.secondaryDataStack" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.menu.ContextMenuView">
+    <elements xsi:type="basic:PartDescriptor" xmi:id="_wtS-0HZeEd-R6aDhnXWjVw" label="Context Menu View" elementId="org.eclipse.e4.demo.simpleide.menu.ContextMenuView" category="org.eclipse.e4.secondaryDataStack" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.menu.ContextMenuView">
       <tags>View</tags>
       <tags>categoryTag:Utilities</tags>
       <menus xmi:id="_JWJ4wV6WEd-kocunFhpHRA" elementId="org.eclipse.e4.demo.simpleide.menu.ContextMenuView">
diff --git a/examples/org.eclipse.e4.demo.simpleide.navigator/xmi/fragment.e4xmi b/examples/org.eclipse.e4.demo.simpleide.navigator/xmi/fragment.e4xmi
index 28b1ec4..97547ea 100644
--- a/examples/org.eclipse.e4.demo.simpleide.navigator/xmi/fragment.e4xmi
+++ b/examples/org.eclipse.e4.demo.simpleide.navigator/xmi/fragment.e4xmi
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="ASCII"?>
 <fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:basic="http://www.eclipse.org/ui/2010/UIModel/application/ui/basic" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmi:id="_WisR8HZEEd-peaY5fFiGdQ">
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_ZN23sHZEEd-peaY5fFiGdQ" featurename="children" parentElementId="org.eclipse.e4.primaryNavigationStack">
-    <elements xsi:type="basic:Part" xmi:id="_81XEMHZbEd-Sp-lHczMPZw" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.navigator.internal.ResourceNavigator" label="Navigator" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.navigator/icons/application_side_tree.png"/>
+    <elements xsi:type="basic:Part" xmi:id="_81XEMHZbEd-Sp-lHczMPZw" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.navigator/org.eclipse.e4.demo.simpleide.navigator.internal.ResourceNavigator" label="Navigator" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.navigator/icons/application_side_tree.png"/>
   </fragments>
 </fragment:ModelFragments>
diff --git a/examples/org.eclipse.e4.demo.simpleide.outline/xmi/fragment.e4xmi b/examples/org.eclipse.e4.demo.simpleide.outline/xmi/fragment.e4xmi
index 23e34c6..56ad614 100644
--- a/examples/org.eclipse.e4.demo.simpleide.outline/xmi/fragment.e4xmi
+++ b/examples/org.eclipse.e4.demo.simpleide.outline/xmi/fragment.e4xmi
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="ASCII"?>
 <fragment:ModelFragments xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:basic="http://www.eclipse.org/ui/2010/UIModel/application/ui/basic" xmlns:fragment="http://www.eclipse.org/ui/2010/UIModel/fragment" xmi:id="_glJTgHijEd-QLpUkCzu7EA">
   <fragments xsi:type="fragment:StringModelFragment" xmi:id="_ocBJIHijEd-TPIFsLcQOCg" featurename="children" parentElementId="org.eclipse.e4.secondaryNavigationStack">
-    <elements xsi:type="basic:Part" xmi:id="_tcCtcHijEd-TPIFsLcQOCg" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide.outline/org.eclipse.e4.demo.simpleide.outline.internal.OutlineView" label="Outline" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.outline/icons/outline_co.gif"/>
+    <elements xsi:type="basic:Part" xmi:id="_tcCtcHijEd-TPIFsLcQOCg" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide.outline/org.eclipse.e4.demo.simpleide.outline.internal.OutlineView" label="Outline" iconURI="platform:/plugin/org.eclipse.e4.demo.simpleide.outline/icons/outline_co.gif"/>
   </fragments>
 </fragment:ModelFragments>
diff --git a/examples/org.eclipse.e4.demo.simpleide/Application.e4xmi b/examples/org.eclipse.e4.demo.simpleide/Application.e4xmi
index 95e6457..7975b1c 100644
--- a/examples/org.eclipse.e4.demo.simpleide/Application.e4xmi
+++ b/examples/org.eclipse.e4.demo.simpleide/Application.e4xmi
@@ -52,14 +52,14 @@
     </trimBars>
   </children>
   <variables>org.eclipse.e4.demo.simpleide.services.IImageService</variables>
-  <handlers xmi:id="_jXCDwGAiEd-E_N65-FXwgA" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.ExitHandler" command="_oIK3gGAiEd-E_N65-FXwgA"/>
-  <handlers xmi:id="_pj_6cGEhEd-A9truh9jvIg" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.SaveAllHandler" command="_kpAnIGEhEd-A9truh9jvIg"/>
-  <handlers xmi:id="_w0lzMGEhEd-A9truh9jvIg" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.SaveHandler" command="_tl9UAGEhEd-A9truh9jvIg"/>
-  <handlers xmi:id="_BTglAGHYEd-_Y6o4fctqsw" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.NewProjectDialogHandler" command="_CWMKAGHYEd-_Y6o4fctqsw"/>
-  <handlers xmi:id="_T8XWgGHYEd-_Y6o4fctqsw" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.NewTextFileDialogHandler" command="_F3JIQGHYEd-_Y6o4fctqsw"/>
-  <handlers xmi:id="_WjZDIGHYEd-_Y6o4fctqsw" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.NewFolderDialogHandler" command="_IERuMGHYEd-_Y6o4fctqsw"/>
-  <handlers xmi:id="_eTBRgAFSEd-Z8rQksLwRYx" elementId="org.eclipse.ui.showViewHandler" contributionURI="platform:/plugin/org.eclipse.e4.ui.workbench.swt/org.eclipse.e4.ui.internal.workbench.swt.handlers.ShowViewHandler" command="org.eclipse.ui.views.showView"/>
-  <handlers xmi:id="_GuF_8GceEd-UeOvBc5sIBQ" contributionURI="platform:/plugin/org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.SwitchThemeHandler" command="_VAYokGcYEd-XPd4cWNb-1Q"/>
+  <handlers xmi:id="_jXCDwGAiEd-E_N65-FXwgA" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.ExitHandler" command="_oIK3gGAiEd-E_N65-FXwgA"/>
+  <handlers xmi:id="_pj_6cGEhEd-A9truh9jvIg" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.SaveAllHandler" command="_kpAnIGEhEd-A9truh9jvIg"/>
+  <handlers xmi:id="_w0lzMGEhEd-A9truh9jvIg" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.SaveHandler" command="_tl9UAGEhEd-A9truh9jvIg"/>
+  <handlers xmi:id="_BTglAGHYEd-_Y6o4fctqsw" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.NewProjectDialogHandler" command="_CWMKAGHYEd-_Y6o4fctqsw"/>
+  <handlers xmi:id="_T8XWgGHYEd-_Y6o4fctqsw" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.NewTextFileDialogHandler" command="_F3JIQGHYEd-_Y6o4fctqsw"/>
+  <handlers xmi:id="_WjZDIGHYEd-_Y6o4fctqsw" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.NewFolderDialogHandler" command="_IERuMGHYEd-_Y6o4fctqsw"/>
+  <handlers xmi:id="_eTBRgAFSEd-Z8rQksLwRYx" elementId="org.eclipse.ui.showViewHandler" contributionURI="bundleclass://org.eclipse.e4.ui.workbench.swt/org.eclipse.e4.ui.internal.workbench.swt.handlers.ShowViewHandler" command="org.eclipse.ui.views.showView"/>
+  <handlers xmi:id="_GuF_8GceEd-UeOvBc5sIBQ" contributionURI="bundleclass://org.eclipse.e4.demo.simpleide/org.eclipse.e4.demo.simpleide.handlers.SwitchThemeHandler" command="_VAYokGcYEd-XPd4cWNb-1Q"/>
   <bindingTables xmi:id="_bFtE4GEhEd-A9truh9jvIg" bindingContext="_ui554GEgEd-A9truh9jvIg">
     <bindings xmi:id="_fW-s0GEhEd-A9truh9jvIg" keySequence="M1+Q" command="_oIK3gGAiEd-E_N65-FXwgA"/>
     <bindings xmi:id="_z1SkEGEhEd-A9truh9jvIg" keySequence="M1+M2+S" command="_kpAnIGEhEd-A9truh9jvIg"/>
@@ -83,10 +83,10 @@
   <commands xmi:id="_VAYokGcYEd-XPd4cWNb-1Q" elementId="simpleide.command.switchtheme" commandName="Switch Theme">
     <parameters xmi:id="_jQ1PYGcYEd-XPd4cWNb-1Q" elementId="simpleide.command.switchtheme.themeid" name="Theme Id" typeId="" optional="false"/>
   </commands>
-  <addons xmi:id="_XGB3wPZlEd-XstlTZ6nTXg" elementId="org.eclipse.e4.core.commands.service" contributionURI="platform:/plugin/org.eclipse.e4.core.commands/org.eclipse.e4.core.commands.CommandServiceAddon"/>
-  <addons xmi:id="_XGB3wPZlEd-XstlTZ6nTXh" elementId="org.eclipse.e4.ui.contexts.service" contributionURI="platform:/plugin/org.eclipse.e4.ui.services/org.eclipse.e4.ui.services.ContextServiceAddon"/>
-  <addons xmi:id="_XGB3wPZlEd-XstlTZ6nTXi" elementId="org.eclipse.e4.ui.bindings.service" contributionURI="platform:/plugin/org.eclipse.e4.ui.bindings/org.eclipse.e4.ui.bindings.BindingServiceAddon"/>
-  <addons xmi:id="_LK0NgPZmEd-XstlTZ6nTXj" elementId="org.eclipse.e4.ui.workbench.commands.model" contributionURI="platform:/plugin/org.eclipse.e4.ui.workbench/org.eclipse.e4.ui.internal.workbench.addons.CommandProcessingAddon"/>
-  <addons xmi:id="_LK0NgPZmEd-XstlTZ6nTXk" elementId="org.eclipse.e4.ui.workbench.contexts.model" contributionURI="platform:/plugin/org.eclipse.e4.ui.workbench/org.eclipse.e4.ui.internal.workbench.addons.ContextProcessingAddon"/>
-  <addons xmi:id="_LK0NgPZmEd-XstlTZ6nTXl" elementId="org.eclipse.e4.ui.workbench.bindings.model" contributionURI="platform:/plugin/org.eclipse.e4.ui.workbench.swt/org.eclipse.e4.ui.workbench.swt.util.BindingProcessingAddon"/>
+  <addons xmi:id="_XGB3wPZlEd-XstlTZ6nTXg" elementId="org.eclipse.e4.core.commands.service" contributionURI="bundleclass://org.eclipse.e4.core.commands/org.eclipse.e4.core.commands.CommandServiceAddon"/>
+  <addons xmi:id="_XGB3wPZlEd-XstlTZ6nTXh" elementId="org.eclipse.e4.ui.contexts.service" contributionURI="bundleclass://org.eclipse.e4.ui.services/org.eclipse.e4.ui.services.ContextServiceAddon"/>
+  <addons xmi:id="_XGB3wPZlEd-XstlTZ6nTXi" elementId="org.eclipse.e4.ui.bindings.service" contributionURI="bundleclass://org.eclipse.e4.ui.bindings/org.eclipse.e4.ui.bindings.BindingServiceAddon"/>
+  <addons xmi:id="_LK0NgPZmEd-XstlTZ6nTXj" elementId="org.eclipse.e4.ui.workbench.commands.model" contributionURI="bundleclass://org.eclipse.e4.ui.workbench/org.eclipse.e4.ui.internal.workbench.addons.CommandProcessingAddon"/>
+  <addons xmi:id="_LK0NgPZmEd-XstlTZ6nTXk" elementId="org.eclipse.e4.ui.workbench.contexts.model" contributionURI="bundleclass://org.eclipse.e4.ui.workbench/org.eclipse.e4.ui.internal.workbench.addons.ContextProcessingAddon"/>
+  <addons xmi:id="_LK0NgPZmEd-XstlTZ6nTXl" elementId="org.eclipse.e4.ui.workbench.bindings.model" contributionURI="bundleclass://org.eclipse.e4.ui.workbench.swt/org.eclipse.e4.ui.workbench.swt.util.BindingProcessingAddon"/>
 </simpleide:SimpleIDEApplication>
diff --git a/examples/org.eclipse.e4.demo.simpleide/css/e4_default.css b/examples/org.eclipse.e4.demo.simpleide/css/e4_default.css
index c05f934..839cf31 100644
--- a/examples/org.eclipse.e4.demo.simpleide/css/e4_default.css
+++ b/examples/org.eclipse.e4.demo.simpleide/css/e4_default.css
@@ -11,7 +11,7 @@
 }
 
 .MPartStack {
-    tab-renderer: url('platform:/plugin/org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
+    tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
     unselected-tabs-color: #FFFFFF #FFFFFF #FFFFFF 100% 100%;
     outer-keyline-color: #FFFFFF;
 	inner-keyline-color: #FFFFFF;
diff --git a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_gtk.css b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_gtk.css
index 1f61de8..d54b392 100644
--- a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_gtk.css
+++ b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_gtk.css
@@ -8,7 +8,7 @@
 }
 
 .MPartStack {
-    tab-renderer: url('platform:/plugin/org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
+    tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
     unselected-tabs-color: #FFFFFF #FFFFFF #FFFFFF 100% 100%;
     outer-keyline-color: #FFFFFF;
 	inner-keyline-color: #FFFFFF;
diff --git a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_mac.css b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_mac.css
index 992e60e..dbc7c7f 100644
--- a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_mac.css
+++ b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_mac.css
@@ -8,7 +8,7 @@
 }
 
 .MPartStack {
-    tab-renderer: url('platform:/plugin/org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
+    tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
     unselected-tabs-color: #FFFFFF #FFFFFF #FFFFFF 100% 100%;
     outer-keyline-color: #FFFFFF;
 	inner-keyline-color: #FFFFFF;
diff --git a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_win7.css b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_win7.css
index dec7e3c..7ebcb1d 100644
--- a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_win7.css
+++ b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_win7.css
@@ -8,7 +8,7 @@
 }
 
 .MPartStack {
-    tab-renderer: url('platform:/plugin/org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
+    tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
     unselected-tabs-color: #FFFFFF #FFFFFF #FFFFFF 100% 100%;
     outer-keyline-color: #FFFFFF;
 	inner-keyline-color: #FFFFFF;
diff --git a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_winxp_blu.css b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_winxp_blu.css
index b2c1ae4..161b355 100644
--- a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_winxp_blu.css
+++ b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_winxp_blu.css
@@ -7,7 +7,7 @@
 }
 
 .MPartStack {
-    tab-renderer: url('platform:/plugin/org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
+    tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
     unselected-tabs-color: #FFFFFF #FFFFFF #FFFFFF 100% 100%;
     outer-keyline-color: #FFFFFF;
 	inner-keyline-color: #FFFFFF;
diff --git a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_winxp_olv.css b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_winxp_olv.css
index ab7d72d..7b67f9e 100644
--- a/examples/org.eclipse.e4.demo.simpleide/css/e4_default_winxp_olv.css
+++ b/examples/org.eclipse.e4.demo.simpleide/css/e4_default_winxp_olv.css
@@ -8,7 +8,7 @@
 }
 
 .MPartStack {
-    tab-renderer: url('platform:/plugin/org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
+    tab-renderer: url('bundleclass://org.eclipse.e4.ui.workbench.renderers.swt/org.eclipse.e4.ui.workbench.renderers.swt.CTabRendering');
     unselected-tabs-color: #FFFFFF #FFFFFF #FFFFFF 100% 100%;
     outer-keyline-color: #FFFFFF;
 	inner-keyline-color: #FFFFFF;
