Merge branch 'recovered-2'

Conflicts:
	releng/org.eclipse.amp.build-feature/buckminster.cspex
	releng/org.eclipse.amp.build-feature/feature.xml
	releng/org.eclipse.amp.releng/promoter.ant
	releng/org.eclipse.amp.releng/publisher.properties
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/plugin.properties b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/plugin.properties
index 81e93e8..d609e76 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/plugin.properties
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/plugin.properties
@@ -64,3 +64,5 @@
 _UI_Parameter_name_feature = Name
 _UI_Measurement_name_feature = Name
 _UI_Measurement_entries_feature = Entries
+_UI_DataPoint_measurement_feature = Measurement
+_UI_Measurement_run_feature = Run
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ADataEditPlugin.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ADataEditPlugin.java
index b76a8c9..a31effc 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ADataEditPlugin.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ADataEditPlugin.java
@@ -22,77 +22,77 @@
  */
 public final class ADataEditPlugin extends EMFPlugin {
     /**
-     * Keep track of the singleton.
-     * <!-- begin-user-doc -->
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static final ADataEditPlugin INSTANCE = new ADataEditPlugin();
 
     /**
-     * Keep track of the singleton.
-     * <!-- begin-user-doc -->
+	 * Keep track of the singleton.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private static Implementation plugin;
 
     /**
-     * Create the instance.
-     * <!-- begin-user-doc -->
+	 * Create the instance.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ADataEditPlugin() {
-        super
-          (new ResourceLocator [] {
-             MetaABMEditPlugin.INSTANCE,
-           });
-    }
+		super
+		  (new ResourceLocator [] {
+		     MetaABMEditPlugin.INSTANCE,
+		   });
+	}
 
     /**
-     * Returns the singleton instance of the Eclipse plugin.
-     * <!-- begin-user-doc -->
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the singleton instance.
-     * @generated
-     */
+	 * @return the singleton instance.
+	 * @generated
+	 */
     @Override
     public ResourceLocator getPluginResourceLocator() {
-        return plugin;
-    }
+		return plugin;
+	}
 
     /**
-     * Returns the singleton instance of the Eclipse plugin.
-     * <!-- begin-user-doc -->
+	 * Returns the singleton instance of the Eclipse plugin.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the singleton instance.
-     * @generated
-     */
+	 * @return the singleton instance.
+	 * @generated
+	 */
     public static Implementation getPlugin() {
-        return plugin;
-    }
+		return plugin;
+	}
 
     /**
-     * The actual implementation of the Eclipse <b>Plugin</b>.
-     * <!-- begin-user-doc -->
+	 * The actual implementation of the Eclipse <b>Plugin</b>.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static class Implementation extends EclipsePlugin {
         /**
-         * Creates an instance.
-         * <!-- begin-user-doc -->
+		 * Creates an instance.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         public Implementation() {
-            super();
+			super();
 
-            // Remember the static instance.
-            //
-            plugin = this;
-        }
+			// Remember the static instance.
+			//
+			plugin = this;
+		}
     }
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/CatalogItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/CatalogItemProvider.java
index 6507374..ff77313 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/CatalogItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/CatalogItemProvider.java
@@ -44,132 +44,132 @@
     implements
         IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, ITableItemLabelProvider, ITableItemColorProvider, IItemColorProvider {
     /**
-     * This constructs an instance from a factory and a notifier.
-     * <!-- begin-user-doc -->
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public CatalogItemProvider(AdapterFactory adapterFactory) {
-        super(adapterFactory);
-    }
+		super(adapterFactory);
+	}
 
     /**
-     * This returns the property descriptors for the adapted class.
-     * <!-- begin-user-doc -->
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
-        if (itemPropertyDescriptors == null) {
-            super.getPropertyDescriptors(object);
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
 
-        }
-        return itemPropertyDescriptors;
-    }
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
-     * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
-     * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
-     * <!-- begin-user-doc -->
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
-        if (childrenFeatures == null) {
-            super.getChildrenFeatures(object);
-            childrenFeatures.add(DataPackage.Literals.CATALOG__RUNS);
-        }
-        return childrenFeatures;
-    }
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DataPackage.Literals.CATALOG__RUNS);
+		}
+		return childrenFeatures;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EStructuralFeature getChildFeature(Object object, Object child) {
-        // Check the type of the specified child object and return the proper feature to use for
-        // adding (see {@link AddCommand}) it as a child.
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
 
-        return super.getChildFeature(object, child);
-    }
+		return super.getChildFeature(object, child);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean hasChildren(Object object) {
-        return hasChildren(object, true);
-    }
+		return hasChildren(object, true);
+	}
 
     /**
-     * This returns Catalog.gif.
-     * <!-- begin-user-doc -->
+	 * This returns Catalog.gif.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/Catalog"));
-    }
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Catalog"));
+	}
 
     /**
-     * This returns the label text for the adapted class.
-     * <!-- begin-user-doc -->
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public String getText(Object object) {
-        return getString("_UI_Catalog_type");
-    }
+		return getString("_UI_Catalog_type");
+	}
 
     /**
-     * This handles model notifications by calling {@link #updateChildren} to update any cached
-     * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
-     * <!-- begin-user-doc -->
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(Catalog.class)) {
-            case DataPackage.CATALOG__RUNS:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(Catalog.class)) {
+			case DataPackage.CATALOG__RUNS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
 
     /**
-     * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
-     * that can be created under this object.
-     * <!-- begin-user-doc -->
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
-        super.collectNewChildDescriptors(newChildDescriptors, object);
-    }
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
 
     /**
-     * Return the resource locator for this item provider's resources.
-     * <!-- begin-user-doc -->
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public ResourceLocator getResourceLocator() {
-        return ADataEditPlugin.INSTANCE;
-    }
+		return ADataEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/DataItemProviderAdapterFactory.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/DataItemProviderAdapterFactory.java
index bf50db7..bf55aa2 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/DataItemProviderAdapterFactory.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/DataItemProviderAdapterFactory.java
@@ -41,289 +41,289 @@
  */
 public class DataItemProviderAdapterFactory extends DataAdapterFactory implements ComposeableAdapterFactory, IChangeNotifier, IDisposable {
     /**
-     * This keeps track of the root adapter factory that delegates to this adapter factory.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the root adapter factory that delegates to this adapter factory.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ComposedAdapterFactory parentAdapterFactory;
 
     /**
-     * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
-     * <!-- begin-user-doc -->
+	 * This is used to implement {@link org.eclipse.emf.edit.provider.IChangeNotifier}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IChangeNotifier changeNotifier = new ChangeNotifier();
 
     /**
-     * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
-     * <!-- begin-user-doc -->
+	 * This keeps track of all the supported types checked by {@link #isFactoryForType isFactoryForType}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Collection<Object> supportedTypes = new ArrayList<Object>();
 
     /**
-     * This constructs an instance.
-     * <!-- begin-user-doc -->
+	 * This constructs an instance.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public DataItemProviderAdapterFactory() {
-        supportedTypes.add(IEditingDomainItemProvider.class);
-        supportedTypes.add(IStructuredItemContentProvider.class);
-        supportedTypes.add(ITreeItemContentProvider.class);
-        supportedTypes.add(IItemLabelProvider.class);
-        supportedTypes.add(IItemPropertySource.class);
-        supportedTypes.add(ITableItemLabelProvider.class);
-        supportedTypes.add(ITableItemColorProvider.class);
-        supportedTypes.add(IItemColorProvider.class);
-    }
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+		supportedTypes.add(ITableItemLabelProvider.class);
+		supportedTypes.add(ITableItemColorProvider.class);
+		supportedTypes.add(IItemColorProvider.class);
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.Run} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.Run} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected RunItemProvider runItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.adata.Run}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.adata.Run}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createRunAdapter() {
-        if (runItemProvider == null) {
-            runItemProvider = new RunItemProvider(this);
-        }
+		if (runItemProvider == null) {
+			runItemProvider = new RunItemProvider(this);
+		}
 
-        return runItemProvider;
-    }
+		return runItemProvider;
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.Parameter} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.Parameter} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ParameterItemProvider parameterItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.adata.Parameter}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.adata.Parameter}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createParameterAdapter() {
-        if (parameterItemProvider == null) {
-            parameterItemProvider = new ParameterItemProvider(this);
-        }
+		if (parameterItemProvider == null) {
+			parameterItemProvider = new ParameterItemProvider(this);
+		}
 
-        return parameterItemProvider;
-    }
+		return parameterItemProvider;
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.DataPoint} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.DataPoint} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected DataPointItemProvider dataPointItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.adata.DataPoint}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.adata.DataPoint}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createDataPointAdapter() {
-        if (dataPointItemProvider == null) {
-            dataPointItemProvider = new DataPointItemProvider(this);
-        }
+		if (dataPointItemProvider == null) {
+			dataPointItemProvider = new DataPointItemProvider(this);
+		}
 
-        return dataPointItemProvider;
-    }
+		return dataPointItemProvider;
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.Catalog} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.Catalog} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected CatalogItemProvider catalogItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.adata.Catalog}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.adata.Catalog}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createCatalogAdapter() {
-        if (catalogItemProvider == null) {
-            catalogItemProvider = new CatalogItemProvider(this);
-        }
+		if (catalogItemProvider == null) {
+			catalogItemProvider = new CatalogItemProvider(this);
+		}
 
-        return catalogItemProvider;
-    }
+		return catalogItemProvider;
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.Measurement} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.Measurement} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected MeasurementItemProvider measurementItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.adata.Measurement}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.adata.Measurement}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createMeasurementAdapter() {
-        if (measurementItemProvider == null) {
-            measurementItemProvider = new MeasurementItemProvider(this);
-        }
+		if (measurementItemProvider == null) {
+			measurementItemProvider = new MeasurementItemProvider(this);
+		}
 
-        return measurementItemProvider;
-    }
+		return measurementItemProvider;
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.ParameterSet} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.adata.ParameterSet} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ParameterSetItemProvider parameterSetItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.adata.ParameterSet}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.adata.ParameterSet}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createParameterSetAdapter() {
-        if (parameterSetItemProvider == null) {
-            parameterSetItemProvider = new ParameterSetItemProvider(this);
-        }
+		if (parameterSetItemProvider == null) {
+			parameterSetItemProvider = new ParameterSetItemProvider(this);
+		}
 
-        return parameterSetItemProvider;
-    }
+		return parameterSetItemProvider;
+	}
 
     /**
-     * This returns the root adapter factory that contains this factory.
-     * <!-- begin-user-doc -->
+	 * This returns the root adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ComposeableAdapterFactory getRootAdapterFactory() {
-        return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
-    }
+		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
+	}
 
     /**
-     * This sets the composed adapter factory that contains this factory.
-     * <!-- begin-user-doc -->
+	 * This sets the composed adapter factory that contains this factory.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
-        this.parentAdapterFactory = parentAdapterFactory;
-    }
+		this.parentAdapterFactory = parentAdapterFactory;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean isFactoryForType(Object type) {
-        return supportedTypes.contains(type) || super.isFactoryForType(type);
-    }
+		return supportedTypes.contains(type) || super.isFactoryForType(type);
+	}
 
     /**
-     * This implementation substitutes the factory itself as the key for the adapter.
-     * <!-- begin-user-doc -->
+	 * This implementation substitutes the factory itself as the key for the adapter.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter adapt(Notifier notifier, Object type) {
-        return super.adapt(notifier, this);
-    }
+		return super.adapt(notifier, this);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object adapt(Object object, Object type) {
-        if (isFactoryForType(type)) {
-            Object adapter = super.adapt(object, type);
-            if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
-                return adapter;
-            }
-        }
+		if (isFactoryForType(type)) {
+			Object adapter = super.adapt(object, type);
+			if (!(type instanceof Class<?>) || (((Class<?>)type).isInstance(adapter))) {
+				return adapter;
+			}
+		}
 
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * This adds a listener.
-     * <!-- begin-user-doc -->
+	 * This adds a listener.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void addListener(INotifyChangedListener notifyChangedListener) {
-        changeNotifier.addListener(notifyChangedListener);
-    }
+		changeNotifier.addListener(notifyChangedListener);
+	}
 
     /**
-     * This removes a listener.
-     * <!-- begin-user-doc -->
+	 * This removes a listener.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void removeListener(INotifyChangedListener notifyChangedListener) {
-        changeNotifier.removeListener(notifyChangedListener);
-    }
+		changeNotifier.removeListener(notifyChangedListener);
+	}
 
     /**
-     * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
-     * <!-- begin-user-doc -->
+	 * This delegates to {@link #changeNotifier} and to {@link #parentAdapterFactory}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void fireNotifyChanged(Notification notification) {
-        changeNotifier.fireNotifyChanged(notification);
+		changeNotifier.fireNotifyChanged(notification);
 
-        if (parentAdapterFactory != null) {
-            parentAdapterFactory.fireNotifyChanged(notification);
-        }
-    }
+		if (parentAdapterFactory != null) {
+			parentAdapterFactory.fireNotifyChanged(notification);
+		}
+	}
 
     /**
-     * This disposes all of the item providers created by this factory. 
-     * <!-- begin-user-doc -->
+	 * This disposes all of the item providers created by this factory. 
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void dispose() {
-        if (runItemProvider != null) runItemProvider.dispose();
-        if (parameterItemProvider != null) parameterItemProvider.dispose();
-        if (dataPointItemProvider != null) dataPointItemProvider.dispose();
-        if (catalogItemProvider != null) catalogItemProvider.dispose();
-        if (measurementItemProvider != null) measurementItemProvider.dispose();
-        if (parameterSetItemProvider != null) parameterSetItemProvider.dispose();
-    }
+		if (runItemProvider != null) runItemProvider.dispose();
+		if (parameterItemProvider != null) parameterItemProvider.dispose();
+		if (dataPointItemProvider != null) dataPointItemProvider.dispose();
+		if (catalogItemProvider != null) catalogItemProvider.dispose();
+		if (measurementItemProvider != null) measurementItemProvider.dispose();
+		if (parameterSetItemProvider != null) parameterSetItemProvider.dispose();
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/DataPointItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/DataPointItemProvider.java
index c12540a..dccc402 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/DataPointItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/DataPointItemProvider.java
@@ -40,142 +40,96 @@
 implements
 IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, ITableItemLabelProvider, ITableItemColorProvider, IItemColorProvider {
     /**
-     * This constructs an instance from a factory and a notifier.
-     * <!-- begin-user-doc -->
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public DataPointItemProvider(AdapterFactory adapterFactory) {
-        super(adapterFactory);
-    }
+		super(adapterFactory);
+	}
 
     /**
-     * This returns the property descriptors for the adapted class.
-     * <!-- begin-user-doc -->
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
-        if (itemPropertyDescriptors == null) {
-            super.getPropertyDescriptors(object);
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
 
-            addPeriodPropertyDescriptor(object);
-            addValuePropertyDescriptor(object);
-            addRunPropertyDescriptor(object);
-            addMeasurePropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addPeriodPropertyDescriptor(object);
+			addValuePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This adds a property descriptor for the Period feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Period feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addPeriodPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_DataPoint_period_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_DataPoint_period_feature", "_UI_DataPoint_type"),
-          DataPackage.Literals.DATA_POINT__PERIOD,
-          true,
-          false,
-          false,
-          ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DataPoint_period_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_DataPoint_period_feature", "_UI_DataPoint_type"),
+				 DataPackage.Literals.DATA_POINT__PERIOD,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.INTEGRAL_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Value feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Value feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addValuePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_DataPoint_value_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_DataPoint_value_feature", "_UI_DataPoint_type"),
-          DataPackage.Literals.DATA_POINT__VALUE,
-          true,
-          false,
-          false,
-          ItemPropertyDescriptor.REAL_VALUE_IMAGE,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_DataPoint_value_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_DataPoint_value_feature", "_UI_DataPoint_type"),
+				 DataPackage.Literals.DATA_POINT__VALUE,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.REAL_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Run feature.
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void addRunPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_DataPoint_run_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_DataPoint_run_feature", "_UI_DataPoint_type"),
-          DataPackage.Literals.DATA_POINT__RUN,
-          true,
-          false,
-          true,
-          null,
-          null,
-          null));
-    }
-
-    /**
-     * This adds a property descriptor for the Measure feature.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void addMeasurePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_DataPoint_measure_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_DataPoint_measure_feature", "_UI_DataPoint_type"),
-          DataPackage.Literals.DATA_POINT__MEASURE,
-          true,
-          false,
-          true,
-          null,
-          null,
-          null));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean hasChildren(Object object) {
-        return hasChildren(object, true);
-    }
+		return hasChildren(object, true);
+	}
 
     /**
-     * This returns DataPoint.gif.
-     * <!-- begin-user-doc -->
+	 * This returns DataPoint.gif.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/DataPoint"));
-    }
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/DataPoint"));
+	}
 
     /**
      * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -189,46 +143,46 @@
     }
 
     /**
-     * This handles model notifications by calling {@link #updateChildren} to update any cached
-     * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
-     * <!-- begin-user-doc -->
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(DataPoint.class)) {
-            case DataPackage.DATA_POINT__PERIOD:
-            case DataPackage.DATA_POINT__VALUE:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(DataPoint.class)) {
+			case DataPackage.DATA_POINT__PERIOD:
+			case DataPackage.DATA_POINT__VALUE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
 
     /**
-     * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
-     * that can be created under this object.
-     * <!-- begin-user-doc -->
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
-        super.collectNewChildDescriptors(newChildDescriptors, object);
-    }
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
 
     /**
-     * Return the resource locator for this item provider's resources.
-     * <!-- begin-user-doc -->
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public ResourceLocator getResourceLocator() {
-        return ADataEditPlugin.INSTANCE;
-    }
+		return ADataEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/MeasurementItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/MeasurementItemProvider.java
index 10b7e79..2015877 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/MeasurementItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/MeasurementItemProvider.java
@@ -33,136 +33,150 @@
 import org.metaabm.IValue;
 
 /**
- * This is the item provider adapter for a {@link org.eclipse.amp.amf.adata.Measurement} object. <!-- begin-user-doc -->
+ * This is the item provider adapter for a {@link org.eclipse.amp.amf.adata.Measurement} object.
+ * <!-- begin-user-doc -->
  * <!-- end-user-doc -->
- * 
  * @generated
  */
 public class MeasurementItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider,
 IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource,
 ITableItemLabelProvider, ITableItemColorProvider, IItemColorProvider {
     /**
-     * This constructs an instance from a factory and a notifier. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     public MeasurementItemProvider(AdapterFactory adapterFactory) {
-        super(adapterFactory);
-    }
+		super(adapterFactory);
+	}
 
     /**
-     * This returns the property descriptors for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     @Override
     public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
-        if (itemPropertyDescriptors == null) {
-            super.getPropertyDescriptors(object);
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
 
-            addTypePropertyDescriptor(object);
-            addValuePropertyDescriptor(object);
-            addNamePropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addTypePropertyDescriptor(object);
+			addValuePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This adds a property descriptor for the Type feature. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * This adds a property descriptor for the Type feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addTypePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory)
-                                                                 .getRootAdapterFactory(), getResourceLocator(), getString("_UI_Measurement_type_feature"),
-                                                                 getString("_UI_PropertyDescriptor_description",
-                                                                           "_UI_Measurement_type_feature",
-                                                                 "_UI_Measurement_type"),
-                                                                 DataPackage.Literals.MEASUREMENT__TYPE, true, false,
-                                                                 false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-                                                                 null, null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Measurement_type_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Measurement_type_feature", "_UI_Measurement_type"),
+				 DataPackage.Literals.MEASUREMENT__TYPE,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Value feature. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * This adds a property descriptor for the Value feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addValuePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory)
-                                                                 .getRootAdapterFactory(), getResourceLocator(), getString("_UI_Measurement_value_feature"),
-                                                                 getString("_UI_PropertyDescriptor_description",
-                                                                           "_UI_Measurement_value_feature",
-                                                                 "_UI_Measurement_type"),
-                                                                 DataPackage.Literals.MEASUREMENT__VALUE, true, false,
-                                                                 true, null, null, null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Measurement_value_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Measurement_value_feature", "_UI_Measurement_type"),
+				 DataPackage.Literals.MEASUREMENT__VALUE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Name feature. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addNamePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory) adapterFactory)
-                                                                 .getRootAdapterFactory(), getResourceLocator(), getString("_UI_Measurement_name_feature"),
-                                                                 getString("_UI_PropertyDescriptor_description",
-                                                                           "_UI_Measurement_name_feature",
-                                                                 "_UI_Measurement_type"),
-                                                                 DataPackage.Literals.MEASUREMENT__NAME, true, false,
-                                                                 false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-                                                                 null, null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Measurement_name_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Measurement_name_feature", "_UI_Measurement_type"),
+				 DataPackage.Literals.MEASUREMENT__NAME,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
-     * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
-     * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}. <!-- begin-user-doc --> <!--
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc --> <!--
      * end-user-doc -->
-     * 
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
-        if (childrenFeatures == null) {
-            super.getChildrenFeatures(object);
-            childrenFeatures.add(DataPackage.Literals.MEASUREMENT__ENTRIES);
-        }
-        return childrenFeatures;
-    }
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DataPackage.Literals.MEASUREMENT__ENTRIES);
+		}
+		return childrenFeatures;
+	}
 
     /**
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     @Override
     protected EStructuralFeature getChildFeature(Object object, Object child) {
-        // Check the type of the specified child object and return the proper feature to use for
-        // adding (see {@link AddCommand}) it as a child.
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
 
-        return super.getChildFeature(object, child);
-    }
+		return super.getChildFeature(object, child);
+	}
 
     /**
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     @Override
     public boolean hasChildren(Object object) {
-        return hasChildren(object, true);
-    }
+		return hasChildren(object, true);
+	}
 
     /**
-     * This returns Measurement.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * This returns Measurement.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     @Override
     public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/Measurement"));
-    }
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Measurement"));
+	}
 
     /**
      * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -188,36 +202,36 @@
      */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(Measurement.class)) {
-            case DataPackage.MEASUREMENT__TYPE:
-            case DataPackage.MEASUREMENT__NAME:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(Measurement.class)) {
+			case DataPackage.MEASUREMENT__TYPE:
+			case DataPackage.MEASUREMENT__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
 
     /**
-     * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children that can be created
-     * under this object. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     @Override
     protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
-        super.collectNewChildDescriptors(newChildDescriptors, object);
-    }
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
 
     /**
-     * Return the resource locator for this item provider's resources. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     @Override
     public ResourceLocator getResourceLocator() {
-        return ADataEditPlugin.INSTANCE;
-    }
+		return ADataEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ParameterItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ParameterItemProvider.java
index 1595729..2272018 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ParameterItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ParameterItemProvider.java
@@ -40,119 +40,119 @@
 implements
 IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, ITableItemLabelProvider, ITableItemColorProvider, IItemColorProvider {
     /**
-     * This constructs an instance from a factory and a notifier.
-     * <!-- begin-user-doc -->
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ParameterItemProvider(AdapterFactory adapterFactory) {
-        super(adapterFactory);
-    }
+		super(adapterFactory);
+	}
 
     /**
-     * This returns the property descriptors for the adapted class.
-     * <!-- begin-user-doc -->
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
-        if (itemPropertyDescriptors == null) {
-            super.getPropertyDescriptors(object);
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
 
-            addValuePropertyDescriptor(object);
-            addAttributePropertyDescriptor(object);
-            addNamePropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addValuePropertyDescriptor(object);
+			addAttributePropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This adds a property descriptor for the Attribute feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Attribute feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addAttributePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Parameter_attribute_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Parameter_attribute_feature", "_UI_Parameter_type"),
-          DataPackage.Literals.PARAMETER__ATTRIBUTE,
-          true,
-          false,
-          true,
-          null,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Parameter_attribute_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Parameter_attribute_feature", "_UI_Parameter_type"),
+				 DataPackage.Literals.PARAMETER__ATTRIBUTE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Name feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addNamePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Parameter_name_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Parameter_name_feature", "_UI_Parameter_type"),
-          DataPackage.Literals.PARAMETER__NAME,
-          true,
-          false,
-          false,
-          ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Parameter_name_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Parameter_name_feature", "_UI_Parameter_type"),
+				 DataPackage.Literals.PARAMETER__NAME,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Value feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Value feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addValuePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Parameter_value_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Parameter_value_feature", "_UI_Parameter_type"),
-          DataPackage.Literals.PARAMETER__VALUE,
-          true,
-          false,
-          true,
-          ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Parameter_value_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Parameter_value_feature", "_UI_Parameter_type"),
+				 DataPackage.Literals.PARAMETER__VALUE,
+				 true,
+				 false,
+				 true,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean hasChildren(Object object) {
-        return hasChildren(object, true);
-    }
+		return hasChildren(object, true);
+	}
 
     /**
-     * This returns Parameter.gif.
-     * <!-- begin-user-doc -->
+	 * This returns Parameter.gif.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/Parameter"));
-    }
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Parameter"));
+	}
 
     /**
      * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -172,45 +172,45 @@
     }
 
     /**
-     * This handles model notifications by calling {@link #updateChildren} to update any cached
-     * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
-     * <!-- begin-user-doc -->
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(Parameter.class)) {
-            case DataPackage.PARAMETER__NAME:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(Parameter.class)) {
+			case DataPackage.PARAMETER__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
 
     /**
-     * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
-     * that can be created under this object.
-     * <!-- begin-user-doc -->
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
-        super.collectNewChildDescriptors(newChildDescriptors, object);
-    }
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+	}
 
     /**
-     * Return the resource locator for this item provider's resources.
-     * <!-- begin-user-doc -->
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public ResourceLocator getResourceLocator() {
-        return ADataEditPlugin.INSTANCE;
-    }
+		return ADataEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ParameterSetItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ParameterSetItemProvider.java
index 65b5caf..6364948 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ParameterSetItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/ParameterSetItemProvider.java
@@ -51,137 +51,137 @@
         ITableItemColorProvider,
         IItemColorProvider {
     /**
-     * This constructs an instance from a factory and a notifier.
-     * <!-- begin-user-doc -->
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ParameterSetItemProvider(AdapterFactory adapterFactory) {
-        super(adapterFactory);
-    }
+		super(adapterFactory);
+	}
 
     /**
-     * This returns the property descriptors for the adapted class.
-     * <!-- begin-user-doc -->
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
-        if (itemPropertyDescriptors == null) {
-            super.getPropertyDescriptors(object);
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
 
-        }
-        return itemPropertyDescriptors;
-    }
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
-     * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
-     * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
-     * <!-- begin-user-doc -->
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
-        if (childrenFeatures == null) {
-            super.getChildrenFeatures(object);
-            childrenFeatures.add(DataPackage.Literals.PARAMETER_SET__MEMBERS);
-        }
-        return childrenFeatures;
-    }
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DataPackage.Literals.PARAMETER_SET__MEMBERS);
+		}
+		return childrenFeatures;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EStructuralFeature getChildFeature(Object object, Object child) {
-        // Check the type of the specified child object and return the proper feature to use for
-        // adding (see {@link AddCommand}) it as a child.
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
 
-        return super.getChildFeature(object, child);
-    }
+		return super.getChildFeature(object, child);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean hasChildren(Object object) {
-        return hasChildren(object, true);
-    }
+		return hasChildren(object, true);
+	}
 
     /**
-     * This returns ParameterSet.gif.
-     * <!-- begin-user-doc -->
+	 * This returns ParameterSet.gif.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/ParameterSet"));
-    }
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/ParameterSet"));
+	}
 
     /**
-     * This returns the label text for the adapted class.
-     * <!-- begin-user-doc -->
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public String getText(Object object) {
-        return getString("_UI_ParameterSet_type");
-    }
+		return getString("_UI_ParameterSet_type");
+	}
 
     /**
-     * This handles model notifications by calling {@link #updateChildren} to update any cached
-     * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
-     * <!-- begin-user-doc -->
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(ParameterSet.class)) {
-            case DataPackage.PARAMETER_SET__MEMBERS:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(ParameterSet.class)) {
+			case DataPackage.PARAMETER_SET__MEMBERS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
 
     /**
-     * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
-     * that can be created under this object.
-     * <!-- begin-user-doc -->
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
-        super.collectNewChildDescriptors(newChildDescriptors, object);
+		super.collectNewChildDescriptors(newChildDescriptors, object);
 
-        newChildDescriptors.add
-            (createChildParameter
-                (DataPackage.Literals.PARAMETER_SET__MEMBERS,
-                 DataFactory.eINSTANCE.createParameter()));
-    }
+		newChildDescriptors.add
+			(createChildParameter
+				(DataPackage.Literals.PARAMETER_SET__MEMBERS,
+				 DataFactory.eINSTANCE.createParameter()));
+	}
 
     /**
-     * Return the resource locator for this item provider's resources.
-     * <!-- begin-user-doc -->
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public ResourceLocator getResourceLocator() {
-        return ADataEditPlugin.INSTANCE;
-    }
+		return ADataEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/RunItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/RunItemProvider.java
index 217cd62..34e0a44 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/RunItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.edit/src/org/eclipse/amp/amf/adata/provider/RunItemProvider.java
@@ -43,196 +43,173 @@
 implements
 IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource, ITableItemLabelProvider, ITableItemColorProvider, IItemColorProvider {
     /**
-     * This constructs an instance from a factory and a notifier.
-     * <!-- begin-user-doc -->
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public RunItemProvider(AdapterFactory adapterFactory) {
-        super(adapterFactory);
-    }
+		super(adapterFactory);
+	}
 
     /**
-     * This returns the property descriptors for the adapted class.
-     * <!-- begin-user-doc -->
+	 * This returns the property descriptors for the adapted class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
-        if (itemPropertyDescriptors == null) {
-            super.getPropertyDescriptors(object);
+		if (itemPropertyDescriptors == null) {
+			super.getPropertyDescriptors(object);
 
-            addModelPropertyDescriptor(object);
-            addStartedPropertyDescriptor(object);
-            addFinishedPropertyDescriptor(object);
-            addEntriesPropertyDescriptor(object);
-            addNamePropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addModelPropertyDescriptor(object);
+			addStartedPropertyDescriptor(object);
+			addFinishedPropertyDescriptor(object);
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This adds a property descriptor for the Model feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Model feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addModelPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_model_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_model_feature", "_UI_Run_type"),
-          DataPackage.Literals.RUN__MODEL,
-          true,
-          false,
-          true,
-          null,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_model_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_model_feature", "_UI_Run_type"),
+				 DataPackage.Literals.RUN__MODEL,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Started feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Started feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addStartedPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_started_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_started_feature", "_UI_Run_type"),
-          DataPackage.Literals.RUN__STARTED,
-          true,
-          false,
-          false,
-          ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_started_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_started_feature", "_UI_Run_type"),
+				 DataPackage.Literals.RUN__STARTED,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Finished feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Finished feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addFinishedPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_finished_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_finished_feature", "_UI_Run_type"),
-          DataPackage.Literals.RUN__FINISHED,
-          true,
-          false,
-          false,
-          ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_finished_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_finished_feature", "_UI_Run_type"),
+				 DataPackage.Literals.RUN__FINISHED,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Entries feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void addEntriesPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_entries_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_entries_feature", "_UI_Run_type"),
-          DataPackage.Literals.RUN__ENTRIES,
-          true,
-          false,
-          true,
-          null,
-          null,
-          null));
-    }
-
-    /**
-     * This adds a property descriptor for the Name feature.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addNamePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_name_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_name_feature", "_UI_Run_type"),
-          DataPackage.Literals.RUN__NAME,
-          true,
-          false,
-          false,
-          ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_name_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_name_feature", "_UI_Run_type"),
+				 DataPackage.Literals.RUN__NAME,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
-     * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
-     * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
-     * <!-- begin-user-doc -->
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
-        if (childrenFeatures == null) {
-            super.getChildrenFeatures(object);
-            childrenFeatures.add(DataPackage.Literals.RUN__PARAMETER_SETS);
-            childrenFeatures.add(DataPackage.Literals.RUN__MEASUREMENTS);
-        }
-        return childrenFeatures;
-    }
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(DataPackage.Literals.RUN__PARAMETER_SETS);
+			childrenFeatures.add(DataPackage.Literals.RUN__MEASUREMENTS);
+		}
+		return childrenFeatures;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EStructuralFeature getChildFeature(Object object, Object child) {
-        // Check the type of the specified child object and return the proper feature to use for
-        // adding (see {@link AddCommand}) it as a child.
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
 
-        return super.getChildFeature(object, child);
-    }
+		return super.getChildFeature(object, child);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean hasChildren(Object object) {
-        return hasChildren(object, true);
-    }
+		return hasChildren(object, true);
+	}
 
     /**
-     * This returns Run.gif.
-     * <!-- begin-user-doc -->
+	 * This returns Run.gif.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/Run"));
-    }
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Run"));
+	}
 
     /**
      * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -248,61 +225,61 @@
     }
 
     /**
-     * This handles model notifications by calling {@link #updateChildren} to update any cached
-     * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
-     * <!-- begin-user-doc -->
+	 * This handles model notifications by calling {@link #updateChildren} to update any cached
+	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(Run.class)) {
-            case DataPackage.RUN__STARTED:
-            case DataPackage.RUN__FINISHED:
-            case DataPackage.RUN__NAME:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-                return;
-            case DataPackage.RUN__PARAMETER_SETS:
-            case DataPackage.RUN__MEASUREMENTS:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(Run.class)) {
+			case DataPackage.RUN__STARTED:
+			case DataPackage.RUN__FINISHED:
+			case DataPackage.RUN__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case DataPackage.RUN__PARAMETER_SETS:
+			case DataPackage.RUN__MEASUREMENTS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+				return;
+		}
+		super.notifyChanged(notification);
+	}
 
     /**
-     * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
-     * that can be created under this object.
-     * <!-- begin-user-doc -->
+	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
+	 * that can be created under this object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
-        super.collectNewChildDescriptors(newChildDescriptors, object);
+		super.collectNewChildDescriptors(newChildDescriptors, object);
 
-        newChildDescriptors.add
-        (createChildParameter
-         (DataPackage.Literals.RUN__PARAMETER_SETS,
-          DataFactory.eINSTANCE.createParameterSet()));
+		newChildDescriptors.add
+			(createChildParameter
+				(DataPackage.Literals.RUN__PARAMETER_SETS,
+				 DataFactory.eINSTANCE.createParameterSet()));
 
-        newChildDescriptors.add
-        (createChildParameter
-         (DataPackage.Literals.RUN__MEASUREMENTS,
-          DataFactory.eINSTANCE.createMeasurement()));
-    }
+		newChildDescriptors.add
+			(createChildParameter
+				(DataPackage.Literals.RUN__MEASUREMENTS,
+				 DataFactory.eINSTANCE.createMeasurement()));
+	}
 
     /**
-     * Return the resource locator for this item provider's resources.
-     * <!-- begin-user-doc -->
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public ResourceLocator getResourceLocator() {
-        return ADataEditPlugin.INSTANCE;
-    }
+		return ADataEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.editor/src/org/eclipse/amp/amf/adata/presentation/DataEditor.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.editor/src/org/eclipse/amp/amf/adata/presentation/DataEditor.java
index 2dc3a8a..59e406d 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.editor/src/org/eclipse/amp/amf/adata/presentation/DataEditor.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data.editor/src/org/eclipse/amp/amf/adata/presentation/DataEditor.java
@@ -6,7 +6,6 @@
  */
 package org.eclipse.amp.amf.adata.presentation;
 
-
 import java.io.IOException;
 import java.io.InputStream;
 
@@ -126,6 +125,8 @@
 
 import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.resource.impl.BinaryResourceImpl;
+import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
 
 import org.eclipse.emf.ecore.util.EContentAdapter;
 import org.eclipse.emf.ecore.util.EcoreUtil;
@@ -169,1659 +170,1762 @@
 
 import org.metaabm.provider.MetaABMItemProviderAdapterFactory;
 
-
 /**
- * This is an example of a Data model editor.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
+ * This is an example of a Data model editor. <!-- begin-user-doc --> <!--
+ * end-user-doc -->
+ * 
  * @generated
  */
-public class DataEditor
-    extends MultiPageEditorPart
-    implements IEditingDomainProvider, ISelectionProvider, IMenuListener, IViewerProvider, IGotoMarker {
-    /**
-     * This keeps track of the editing domain that is used to track all changes to the model.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected AdapterFactoryEditingDomain editingDomain;
+public class DataEditor extends MultiPageEditorPart implements
+		IEditingDomainProvider, ISelectionProvider, IMenuListener,
+		IViewerProvider, IGotoMarker {
+	/**
+	 * This keeps track of the editing domain that is used to track all changes
+	 * to the model. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AdapterFactoryEditingDomain editingDomain;
 
-    /**
-     * This is the one adapter factory used for providing views of the model.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected ComposedAdapterFactory adapterFactory;
+	/**
+	 * This is the one adapter factory used for providing views of the model.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ComposedAdapterFactory adapterFactory;
 
-    /**
-     * This is the content outline page.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected IContentOutlinePage contentOutlinePage;
+	/**
+	 * This is the content outline page. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IContentOutlinePage contentOutlinePage;
 
-    /**
-     * This is a kludge...
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected IStatusLineManager contentOutlineStatusLineManager;
+	/**
+	 * This is a kludge... <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IStatusLineManager contentOutlineStatusLineManager;
 
-    /**
-     * This is the content outline page's viewer.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected TreeViewer contentOutlineViewer;
+	/**
+	 * This is the content outline page's viewer. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected TreeViewer contentOutlineViewer;
 
-    /**
-     * This is the property sheet page.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected PropertySheetPage propertySheetPage;
+	/**
+	 * This is the property sheet page. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected PropertySheetPage propertySheetPage;
 
-    /**
-     * This is the viewer that shadows the selection in the content outline.
-     * The parent relation must be correctly defined for this to work.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected TreeViewer selectionViewer;
+	/**
+	 * This is the viewer that shadows the selection in the content outline. The
+	 * parent relation must be correctly defined for this to work. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected TreeViewer selectionViewer;
 
-    /**
-     * This inverts the roll of parent and child in the content provider and show parents as a tree.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected TreeViewer parentViewer;
+	/**
+	 * This inverts the roll of parent and child in the content provider and
+	 * show parents as a tree. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected TreeViewer parentViewer;
 
-    /**
-     * This shows how a tree view works.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected TreeViewer treeViewer;
+	/**
+	 * This shows how a tree view works. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected TreeViewer treeViewer;
 
-    /**
-     * This shows how a list view works.
-     * A list viewer doesn't support icons.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected ListViewer listViewer;
+	/**
+	 * This shows how a list view works. A list viewer doesn't support icons.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ListViewer listViewer;
 
-    /**
-     * This shows how a table view works.
-     * A table can be used as a list with icons.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected TableViewer tableViewer;
+	/**
+	 * This shows how a table view works. A table can be used as a list with
+	 * icons. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected TableViewer tableViewer;
 
-    /**
-     * This shows how a tree view with columns works.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected TreeViewer treeViewerWithColumns;
+	/**
+	 * This shows how a tree view with columns works. <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected TreeViewer treeViewerWithColumns;
 
-    /**
-     * This keeps track of the active viewer pane, in the book.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected ViewerPane currentViewerPane;
+	/**
+	 * This keeps track of the active viewer pane, in the book. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ViewerPane currentViewerPane;
 
-    /**
-     * This keeps track of the active content viewer, which may be either one of the viewers in the pages or the content outline viewer.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected Viewer currentViewer;
+	/**
+	 * This keeps track of the active content viewer, which may be either one of
+	 * the viewers in the pages or the content outline viewer. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected Viewer currentViewer;
 
-    /**
-     * This listens to which ever viewer is active.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected ISelectionChangedListener selectionChangedListener;
+	/**
+	 * This listens to which ever viewer is active. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ISelectionChangedListener selectionChangedListener;
 
-    /**
-     * This keeps track of all the {@link org.eclipse.jface.viewers.ISelectionChangedListener}s that are listening to this editor.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected Collection<ISelectionChangedListener> selectionChangedListeners = new ArrayList<ISelectionChangedListener>();
+	/**
+	 * This keeps track of all the
+	 * {@link org.eclipse.jface.viewers.ISelectionChangedListener}s that are
+	 * listening to this editor. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected Collection<ISelectionChangedListener> selectionChangedListeners = new ArrayList<ISelectionChangedListener>();
 
-    /**
-     * This keeps track of the selection of the editor as a whole.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected ISelection editorSelection = StructuredSelection.EMPTY;
+	/**
+	 * This keeps track of the selection of the editor as a whole. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ISelection editorSelection = StructuredSelection.EMPTY;
 
-    /**
-     * The MarkerHelper is responsible for creating workspace resource markers presented
-     * in Eclipse's Problems View.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected MarkerHelper markerHelper = new EditUIMarkerHelper();
+	/**
+	 * The MarkerHelper is responsible for creating workspace resource markers
+	 * presented in Eclipse's Problems View. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected MarkerHelper markerHelper = new EditUIMarkerHelper();
 
-    /**
-     * This listens for when the outline becomes active
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected IPartListener partListener =
-        new IPartListener() {
-            public void partActivated(IWorkbenchPart p) {
-                if (p instanceof ContentOutline) {
-                    if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
-                        getActionBarContributor().setActiveEditor(DataEditor.this);
+	/**
+	 * This listens for when the outline becomes active <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IPartListener partListener = new IPartListener() {
+		public void partActivated(IWorkbenchPart p) {
+			if (p instanceof ContentOutline) {
+				if (((ContentOutline) p).getCurrentPage() == contentOutlinePage) {
+					getActionBarContributor().setActiveEditor(DataEditor.this);
 
-                        setCurrentViewer(contentOutlineViewer);
-                    }
-                }
-                else if (p instanceof PropertySheet) {
-                    if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
-                        getActionBarContributor().setActiveEditor(DataEditor.this);
-                        handleActivate();
-                    }
-                }
-                else if (p == DataEditor.this) {
-                    handleActivate();
-                }
-            }
-            public void partBroughtToTop(IWorkbenchPart p) {
-                // Ignore.
-            }
-            public void partClosed(IWorkbenchPart p) {
-                // Ignore.
-            }
-            public void partDeactivated(IWorkbenchPart p) {
-                // Ignore.
-            }
-            public void partOpened(IWorkbenchPart p) {
-                // Ignore.
-            }
-        };
+					setCurrentViewer(contentOutlineViewer);
+				}
+			} else if (p instanceof PropertySheet) {
+				if (((PropertySheet) p).getCurrentPage() == propertySheetPage) {
+					getActionBarContributor().setActiveEditor(DataEditor.this);
+					handleActivate();
+				}
+			} else if (p == DataEditor.this) {
+				handleActivate();
+			}
+		}
 
-    /**
-     * Resources that have been removed since last activation.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected Collection<Resource> removedResources = new ArrayList<Resource>();
+		public void partBroughtToTop(IWorkbenchPart p) {
+			// Ignore.
+		}
 
-    /**
-     * Resources that have been changed since last activation.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected Collection<Resource> changedResources = new ArrayList<Resource>();
+		public void partClosed(IWorkbenchPart p) {
+			// Ignore.
+		}
 
-    /**
-     * Resources that have been saved.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected Collection<Resource> savedResources = new ArrayList<Resource>();
+		public void partDeactivated(IWorkbenchPart p) {
+			// Ignore.
+		}
 
-    /**
-     * Map to store the diagnostic associated with a resource.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected Map<Resource, Diagnostic> resourceToDiagnosticMap = new LinkedHashMap<Resource, Diagnostic>();
+		public void partOpened(IWorkbenchPart p) {
+			// Ignore.
+		}
+	};
 
-    /**
-     * Controls whether the problem indication should be updated.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected boolean updateProblemIndication = true;
+	/**
+	 * Resources that have been removed since last activation. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected Collection<Resource> removedResources = new ArrayList<Resource>();
 
-    /**
-     * Adapter used to update the problem indication when resources are demanded loaded.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected EContentAdapter problemIndicationAdapter = 
-        new EContentAdapter() {
-            @Override
-            public void notifyChanged(Notification notification) {
-                if (notification.getNotifier() instanceof Resource) {
-                    switch (notification.getFeatureID(Resource.class)) {
-                        case Resource.RESOURCE__IS_LOADED:
-                        case Resource.RESOURCE__ERRORS:
-                        case Resource.RESOURCE__WARNINGS: {
-                            Resource resource = (Resource)notification.getNotifier();
-                            Diagnostic diagnostic = analyzeResourceProblems(resource, null);
-                            if (diagnostic.getSeverity() != Diagnostic.OK) {
-                                resourceToDiagnosticMap.put(resource, diagnostic);
-                            }
-                            else {
-                                resourceToDiagnosticMap.remove(resource);
-                            }
+	/**
+	 * Resources that have been changed since last activation. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected Collection<Resource> changedResources = new ArrayList<Resource>();
 
-                            if (updateProblemIndication) {
-                                getSite().getShell().getDisplay().asyncExec
-                                    (new Runnable() {
-                                         public void run() {
-                                             updateProblemIndication();
-                                         }
-                                     });
-                            }
-                            break;
-                        }
-                    }
-                }
-                else {
-                    super.notifyChanged(notification);
-                }
-            }
+	/**
+	 * Resources that have been saved. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	protected Collection<Resource> savedResources = new ArrayList<Resource>();
 
-            @Override
-            protected void setTarget(Resource target) {
-                basicSetTarget(target);
-            }
+	/**
+	 * Map to store the diagnostic associated with a resource. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected Map<Resource, Diagnostic> resourceToDiagnosticMap = new LinkedHashMap<Resource, Diagnostic>();
 
-            @Override
-            protected void unsetTarget(Resource target) {
-                basicUnsetTarget(target);
-            }
-        };
+	/**
+	 * Controls whether the problem indication should be updated. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected boolean updateProblemIndication = true;
 
-    /**
-     * This listens for workspace changes.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected IResourceChangeListener resourceChangeListener =
-        new IResourceChangeListener() {
-            public void resourceChanged(IResourceChangeEvent event) {
-                IResourceDelta delta = event.getDelta();
-                try {
-                    class ResourceDeltaVisitor implements IResourceDeltaVisitor {
-                        protected ResourceSet resourceSet = editingDomain.getResourceSet();
-                        protected Collection<Resource> changedResources = new ArrayList<Resource>();
-                        protected Collection<Resource> removedResources = new ArrayList<Resource>();
+	/**
+	 * Adapter used to update the problem indication when resources are demanded
+	 * loaded. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected EContentAdapter problemIndicationAdapter = new EContentAdapter() {
+		@Override
+		public void notifyChanged(Notification notification) {
+			if (notification.getNotifier() instanceof Resource) {
+				switch (notification.getFeatureID(Resource.class)) {
+				case Resource.RESOURCE__IS_LOADED:
+				case Resource.RESOURCE__ERRORS:
+				case Resource.RESOURCE__WARNINGS: {
+					Resource resource = (Resource) notification.getNotifier();
+					Diagnostic diagnostic = analyzeResourceProblems(resource,
+							null);
+					if (diagnostic.getSeverity() != Diagnostic.OK) {
+						resourceToDiagnosticMap.put(resource, diagnostic);
+					} else {
+						resourceToDiagnosticMap.remove(resource);
+					}
 
-                        public boolean visit(IResourceDelta delta) {
-                            if (delta.getResource().getType() == IResource.FILE) {
-                                if (delta.getKind() == IResourceDelta.REMOVED ||
-                                    delta.getKind() == IResourceDelta.CHANGED && delta.getFlags() != IResourceDelta.MARKERS) {
-                                    Resource resource = resourceSet.getResource(URI.createPlatformResourceURI(delta.getFullPath().toString(), true), false);
-                                    if (resource != null) {
-                                        if (delta.getKind() == IResourceDelta.REMOVED) {
-                                            removedResources.add(resource);
-                                        }
-                                        else if (!savedResources.remove(resource)) {
-                                            changedResources.add(resource);
-                                        }
-                                    }
-                                }
-                            }
+					if (updateProblemIndication) {
+						getSite().getShell().getDisplay()
+								.asyncExec(new Runnable() {
+									public void run() {
+										updateProblemIndication();
+									}
+								});
+					}
+					break;
+				}
+				}
+			} else {
+				super.notifyChanged(notification);
+			}
+		}
 
-                            return true;
-                        }
+		@Override
+		protected void setTarget(Resource target) {
+			basicSetTarget(target);
+		}
 
-                        public Collection<Resource> getChangedResources() {
-                            return changedResources;
-                        }
+		@Override
+		protected void unsetTarget(Resource target) {
+			basicUnsetTarget(target);
+		}
+	};
 
-                        public Collection<Resource> getRemovedResources() {
-                            return removedResources;
-                        }
-                    }
+	/**
+	 * This listens for workspace changes. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IResourceChangeListener resourceChangeListener = new IResourceChangeListener() {
+		public void resourceChanged(IResourceChangeEvent event) {
+			IResourceDelta delta = event.getDelta();
+			try {
+				class ResourceDeltaVisitor implements IResourceDeltaVisitor {
+					protected ResourceSet resourceSet = editingDomain
+							.getResourceSet();
+					protected Collection<Resource> changedResources = new ArrayList<Resource>();
+					protected Collection<Resource> removedResources = new ArrayList<Resource>();
 
-                    final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor();
-                    delta.accept(visitor);
+					public boolean visit(IResourceDelta delta) {
+						if (delta.getResource().getType() == IResource.FILE) {
+							if (delta.getKind() == IResourceDelta.REMOVED
+									|| delta.getKind() == IResourceDelta.CHANGED
+									&& delta.getFlags() != IResourceDelta.MARKERS) {
+								Resource resource = resourceSet
+										.getResource(URI
+												.createPlatformResourceURI(
+														delta.getFullPath()
+																.toString(),
+														true), false);
+								if (resource != null) {
+									if (delta.getKind() == IResourceDelta.REMOVED) {
+										removedResources.add(resource);
+									} else if (!savedResources.remove(resource)) {
+										changedResources.add(resource);
+									}
+								}
+							}
+						}
 
-                    if (!visitor.getRemovedResources().isEmpty()) {
-                        getSite().getShell().getDisplay().asyncExec
-                            (new Runnable() {
-                                 public void run() {
-                                     removedResources.addAll(visitor.getRemovedResources());
-                                     if (!isDirty()) {
-                                         getSite().getPage().closeEditor(DataEditor.this, false);
-                                     }
-                                 }
-                             });
-                    }
+						return true;
+					}
 
-                    if (!visitor.getChangedResources().isEmpty()) {
-                        getSite().getShell().getDisplay().asyncExec
-                            (new Runnable() {
-                                 public void run() {
-                                     changedResources.addAll(visitor.getChangedResources());
-                                     if (getSite().getPage().getActiveEditor() == DataEditor.this) {
-                                         handleActivate();
-                                     }
-                                 }
-                             });
-                    }
-                }
-                catch (CoreException exception) {
-                    ADataEditorPlugin.INSTANCE.log(exception);
-                }
-            }
-        };
+					public Collection<Resource> getChangedResources() {
+						return changedResources;
+					}
 
-    /**
-     * Handles activation of the editor or it's associated views.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void handleActivate() {
-        // Recompute the read only state.
-        //
-        if (editingDomain.getResourceToReadOnlyMap() != null) {
-          editingDomain.getResourceToReadOnlyMap().clear();
+					public Collection<Resource> getRemovedResources() {
+						return removedResources;
+					}
+				}
 
-          // Refresh any actions that may become enabled or disabled.
-          //
-          setSelection(getSelection());
-        }
+				final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor();
+				delta.accept(visitor);
 
-        if (!removedResources.isEmpty()) {
-            if (handleDirtyConflict()) {
-                getSite().getPage().closeEditor(DataEditor.this, false);
-            }
-            else {
-                removedResources.clear();
-                changedResources.clear();
-                savedResources.clear();
-            }
-        }
-        else if (!changedResources.isEmpty()) {
-            changedResources.removeAll(savedResources);
-            handleChangedResources();
-            changedResources.clear();
-            savedResources.clear();
-        }
-    }
+				if (!visitor.getRemovedResources().isEmpty()) {
+					getSite().getShell().getDisplay().asyncExec(new Runnable() {
+						public void run() {
+							removedResources.addAll(visitor
+									.getRemovedResources());
+							if (!isDirty()) {
+								getSite().getPage().closeEditor(
+										DataEditor.this, false);
+							}
+						}
+					});
+				}
 
-    /**
-     * Handles what to do with changed resources on activation.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void handleChangedResources() {
-        if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
-            if (isDirty()) {
-                changedResources.addAll(editingDomain.getResourceSet().getResources());
-            }
-            editingDomain.getCommandStack().flush();
+				if (!visitor.getChangedResources().isEmpty()) {
+					getSite().getShell().getDisplay().asyncExec(new Runnable() {
+						public void run() {
+							changedResources.addAll(visitor
+									.getChangedResources());
+							if (getSite().getPage().getActiveEditor() == DataEditor.this) {
+								handleActivate();
+							}
+						}
+					});
+				}
+			} catch (CoreException exception) {
+				ADataEditorPlugin.INSTANCE.log(exception);
+			}
+		}
+	};
 
-            updateProblemIndication = false;
-            for (Resource resource : changedResources) {
-                if (resource.isLoaded()) {
-                    resource.unload();
-                    try {
-                        resource.load(Collections.EMPTY_MAP);
-                    }
-                    catch (IOException exception) {
-                        if (!resourceToDiagnosticMap.containsKey(resource)) {
-                            resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
-                        }
-                    }
-                }
-            }
+	/**
+	 * Handles activation of the editor or it's associated views. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void handleActivate() {
+		// Recompute the read only state.
+		//
+		if (editingDomain.getResourceToReadOnlyMap() != null) {
+			editingDomain.getResourceToReadOnlyMap().clear();
 
-            if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
-                setSelection(StructuredSelection.EMPTY);
-            }
+			// Refresh any actions that may become enabled or disabled.
+			//
+			setSelection(getSelection());
+		}
 
-            updateProblemIndication = true;
-            updateProblemIndication();
-        }
-    }
-  
-    /**
-     * Updates the problems indication with the information described in the specified diagnostic.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void updateProblemIndication() {
-        if (updateProblemIndication) {
-            BasicDiagnostic diagnostic =
-                new BasicDiagnostic
-                    (Diagnostic.OK,
-                     "org.eclipse.amp.amf.data.editor",
-                     0,
-                     null,
-                     new Object [] { editingDomain.getResourceSet() });
-            for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
-                if (childDiagnostic.getSeverity() != Diagnostic.OK) {
-                    diagnostic.add(childDiagnostic);
-                }
-            }
+		if (!removedResources.isEmpty()) {
+			if (handleDirtyConflict()) {
+				getSite().getPage().closeEditor(DataEditor.this, false);
+			} else {
+				removedResources.clear();
+				changedResources.clear();
+				savedResources.clear();
+			}
+		} else if (!changedResources.isEmpty()) {
+			changedResources.removeAll(savedResources);
+			handleChangedResources();
+			changedResources.clear();
+			savedResources.clear();
+		}
+	}
 
-            int lastEditorPage = getPageCount() - 1;
-            if (lastEditorPage >= 0 && getEditor(lastEditorPage) instanceof ProblemEditorPart) {
-                ((ProblemEditorPart)getEditor(lastEditorPage)).setDiagnostic(diagnostic);
-                if (diagnostic.getSeverity() != Diagnostic.OK) {
-                    setActivePage(lastEditorPage);
-                }
-            }
-            else if (diagnostic.getSeverity() != Diagnostic.OK) {
-                ProblemEditorPart problemEditorPart = new ProblemEditorPart();
-                problemEditorPart.setDiagnostic(diagnostic);
-                problemEditorPart.setMarkerHelper(markerHelper);
-                try {
-                    addPage(++lastEditorPage, problemEditorPart, getEditorInput());
-                    setPageText(lastEditorPage, problemEditorPart.getPartName());
-                    setActivePage(lastEditorPage);
-                    showTabs();
-                }
-                catch (PartInitException exception) {
-                    ADataEditorPlugin.INSTANCE.log(exception);
-                }
-            }
+	/**
+	 * Handles what to do with changed resources on activation. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void handleChangedResources() {
+		if (!changedResources.isEmpty()
+				&& (!isDirty() || handleDirtyConflict())) {
+			if (isDirty()) {
+				changedResources.addAll(editingDomain.getResourceSet()
+						.getResources());
+			}
+			editingDomain.getCommandStack().flush();
 
-            if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
-                markerHelper.deleteMarkers(editingDomain.getResourceSet());
-                if (diagnostic.getSeverity() != Diagnostic.OK) {
-                    try {
-                        markerHelper.createMarkers(diagnostic);
-                    }
-                    catch (CoreException exception) {
-                        ADataEditorPlugin.INSTANCE.log(exception);
-                    }
-                }
-            }
-        }
-    }
+			updateProblemIndication = false;
+			for (Resource resource : changedResources) {
+				if (resource.isLoaded()) {
+					resource.unload();
+					try {
+						resource.load(Collections.EMPTY_MAP);
+					} catch (IOException exception) {
+						if (!resourceToDiagnosticMap.containsKey(resource)) {
+							resourceToDiagnosticMap
+									.put(resource,
+											analyzeResourceProblems(resource,
+													exception));
+						}
+					}
+				}
+			}
 
-    /**
-     * Shows a dialog that asks if conflicting changes should be discarded.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected boolean handleDirtyConflict() {
-        return
-            MessageDialog.openQuestion
-                (getSite().getShell(),
-                 getString("_UI_FileConflict_label"),
-                 getString("_WARN_FileConflict"));
-    }
+			if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
+				setSelection(StructuredSelection.EMPTY);
+			}
 
-    /**
-     * This creates a model editor.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public DataEditor() {
-        super();
-        initializeEditingDomain();
-    }
+			updateProblemIndication = true;
+			updateProblemIndication();
+		}
+	}
 
-    /**
-     * This sets up the editing domain for the model editor.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void initializeEditingDomain() {
-        // Create an adapter factory that yields item providers.
-        //
-        adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+	/**
+	 * Updates the problems indication with the information described in the
+	 * specified diagnostic. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void updateProblemIndication() {
+		if (updateProblemIndication) {
+			BasicDiagnostic diagnostic = new BasicDiagnostic(Diagnostic.OK,
+					"org.eclipse.amp.amf.data.editor", 0, null,
+					new Object[] { editingDomain.getResourceSet() });
+			for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
+				if (childDiagnostic.getSeverity() != Diagnostic.OK) {
+					diagnostic.add(childDiagnostic);
+				}
+			}
 
-        adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new DataItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new MetaABMItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new MetaABMFunctionItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new MetaABMActItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
+			int lastEditorPage = getPageCount() - 1;
+			if (lastEditorPage >= 0
+					&& getEditor(lastEditorPage) instanceof ProblemEditorPart) {
+				((ProblemEditorPart) getEditor(lastEditorPage))
+						.setDiagnostic(diagnostic);
+				if (diagnostic.getSeverity() != Diagnostic.OK) {
+					setActivePage(lastEditorPage);
+				}
+			} else if (diagnostic.getSeverity() != Diagnostic.OK) {
+				ProblemEditorPart problemEditorPart = new ProblemEditorPart();
+				problemEditorPart.setDiagnostic(diagnostic);
+				problemEditorPart.setMarkerHelper(markerHelper);
+				try {
+					addPage(++lastEditorPage, problemEditorPart,
+							getEditorInput());
+					setPageText(lastEditorPage, problemEditorPart.getPartName());
+					setActivePage(lastEditorPage);
+					showTabs();
+				} catch (PartInitException exception) {
+					ADataEditorPlugin.INSTANCE.log(exception);
+				}
+			}
 
-        // Create the command stack that will notify this editor as commands are executed.
-        //
-        BasicCommandStack commandStack = new BasicCommandStack();
+			if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
+				markerHelper.deleteMarkers(editingDomain.getResourceSet());
+				if (diagnostic.getSeverity() != Diagnostic.OK) {
+					try {
+						markerHelper.createMarkers(diagnostic);
+					} catch (CoreException exception) {
+						ADataEditorPlugin.INSTANCE.log(exception);
+					}
+				}
+			}
+		}
+	}
 
-        // Add a listener to set the most recent command's affected objects to be the selection of the viewer with focus.
-        //
-        commandStack.addCommandStackListener
-            (new CommandStackListener() {
-                 public void commandStackChanged(final EventObject event) {
-                     getContainer().getDisplay().asyncExec
-                         (new Runnable() {
-                              public void run() {
-                                  firePropertyChange(IEditorPart.PROP_DIRTY);
+	/**
+	 * Shows a dialog that asks if conflicting changes should be discarded. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected boolean handleDirtyConflict() {
+		return MessageDialog.openQuestion(getSite().getShell(),
+				getString("_UI_FileConflict_label"),
+				getString("_WARN_FileConflict"));
+	}
 
-                                  // Try to select the affected objects.
-                                  //
-                                  Command mostRecentCommand = ((CommandStack)event.getSource()).getMostRecentCommand();
-                                  if (mostRecentCommand != null) {
-                                      setSelectionToViewer(mostRecentCommand.getAffectedObjects());
-                                  }
-                                  if (propertySheetPage != null && !propertySheetPage.getControl().isDisposed()) {
-                                      propertySheetPage.refresh();
-                                  }
-                              }
-                          });
-                 }
-             });
+	/**
+	 * This creates a model editor. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	public DataEditor() {
+		super();
+		initializeEditingDomain();
+	}
 
-        // Create the editing domain with a special command stack.
-        //
-        editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new HashMap<Resource, Boolean>());
-    }
+	/**
+	 * This sets up the editing domain for the model editor. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated NOT
+	 */
+	protected void initializeEditingDomain() {
+		// Create an adapter factory that yields item providers.
+		//
+		adapterFactory = new ComposedAdapterFactory(
+				ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
 
-    /**
-     * This is here for the listener to be able to call it.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-            @Override
-    protected void firePropertyChange(int action) {
-        super.firePropertyChange(action);
-    }
+		adapterFactory
+				.addAdapterFactory(new ResourceItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new DataItemProviderAdapterFactory());
+		adapterFactory
+				.addAdapterFactory(new MetaABMItemProviderAdapterFactory());
+		adapterFactory
+				.addAdapterFactory(new MetaABMFunctionItemProviderAdapterFactory());
+		adapterFactory
+				.addAdapterFactory(new MetaABMActItemProviderAdapterFactory());
+		adapterFactory
+				.addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
 
-    /**
-     * This sets the selection into whichever viewer is active.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setSelectionToViewer(Collection<?> collection) {
-        final Collection<?> theSelection = collection;
-        // Make sure it's okay.
-        //
-        if (theSelection != null && !theSelection.isEmpty()) {
-            Runnable runnable =
-                new Runnable() {
-                    public void run() {
-                        // Try to select the items in the current content viewer of the editor.
-                        //
-                        if (currentViewer != null) {
-                            currentViewer.setSelection(new StructuredSelection(theSelection.toArray()), true);
-                        }
-                    }
-                };
-            getSite().getShell().getDisplay().asyncExec(runnable);
-        }
-    }
+		// Create the command stack that will notify this editor as commands are
+		// executed.
+		//
+		BasicCommandStack commandStack = new BasicCommandStack();
 
-    /**
-     * This returns the editing domain as required by the {@link IEditingDomainProvider} interface.
-     * This is important for implementing the static methods of {@link AdapterFactoryEditingDomain}
-     * and for supporting {@link org.eclipse.emf.edit.ui.action.CommandAction}.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EditingDomain getEditingDomain() {
-        return editingDomain;
-    }
+		// Add a listener to set the most recent command's affected objects to
+		// be the selection of the viewer with focus.
+		//
+		commandStack.addCommandStackListener(new CommandStackListener() {
+			public void commandStackChanged(final EventObject event) {
+				getContainer().getDisplay().asyncExec(new Runnable() {
+					public void run() {
+						firePropertyChange(IEditorPart.PROP_DIRTY);
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public class ReverseAdapterFactoryContentProvider extends AdapterFactoryContentProvider {
-        /**
-         * <!-- begin-user-doc -->
-         * <!-- end-user-doc -->
-         * @generated
-         */
-        public ReverseAdapterFactoryContentProvider(AdapterFactory adapterFactory) {
-            super(adapterFactory);
-        }
+						// Try to select the affected objects.
+						//
+						Command mostRecentCommand = ((CommandStack) event
+								.getSource()).getMostRecentCommand();
+						if (mostRecentCommand != null) {
+							setSelectionToViewer(mostRecentCommand
+									.getAffectedObjects());
+						}
+						if (propertySheetPage != null
+								&& !propertySheetPage.getControl().isDisposed()) {
+							propertySheetPage.refresh();
+						}
+					}
+				});
+			}
+		});
 
-        /**
-         * <!-- begin-user-doc -->
-         * <!-- end-user-doc -->
-         * @generated
-         */
-        @Override
-        public Object [] getElements(Object object) {
-            Object parent = super.getParent(object);
-            return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
-        }
+		// Create the editing domain with a special command stack.
+		//
+		editingDomain = new AdapterFactoryEditingDomain(adapterFactory,
+				commandStack, new HashMap<Resource, Boolean>());
+		Resource.Factory binResourceFactory = new Resource.Factory() {
+			public Resource createResource(URI uri) {
+				return new BinaryResourceImpl(uri);
+			}
 
-        /**
-         * <!-- begin-user-doc -->
-         * <!-- end-user-doc -->
-         * @generated
-         */
-        @Override
-        public Object [] getChildren(Object object) {
-            Object parent = super.getParent(object);
-            return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
-        }
+		};
+		editingDomain.getResourceSet().getResourceFactoryRegistry()
+				.getExtensionToFactoryMap().put("adata", binResourceFactory);
 
-        /**
-         * <!-- begin-user-doc -->
-         * <!-- end-user-doc -->
-         * @generated
-         */
-        @Override
-        public boolean hasChildren(Object object) {
-            Object parent = super.getParent(object);
-            return parent != null;
-        }
+	}
 
-        /**
-         * <!-- begin-user-doc -->
-         * <!-- end-user-doc -->
-         * @generated
-         */
-        @Override
-        public Object getParent(Object object) {
-            return null;
-        }
-    }
+	/**
+	 * This is here for the listener to be able to call it. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void firePropertyChange(int action) {
+		super.firePropertyChange(action);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setCurrentViewerPane(ViewerPane viewerPane) {
-        if (currentViewerPane != viewerPane) {
-            if (currentViewerPane != null) {
-                currentViewerPane.showFocus(false);
-            }
-            currentViewerPane = viewerPane;
-        }
-        setCurrentViewer(currentViewerPane.getViewer());
-    }
+	/**
+	 * This sets the selection into whichever viewer is active. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setSelectionToViewer(Collection<?> collection) {
+		final Collection<?> theSelection = collection;
+		// Make sure it's okay.
+		//
+		if (theSelection != null && !theSelection.isEmpty()) {
+			Runnable runnable = new Runnable() {
+				public void run() {
+					// Try to select the items in the current content viewer of
+					// the editor.
+					//
+					if (currentViewer != null) {
+						currentViewer.setSelection(new StructuredSelection(
+								theSelection.toArray()), true);
+					}
+				}
+			};
+			getSite().getShell().getDisplay().asyncExec(runnable);
+		}
+	}
 
-    /**
-     * This makes sure that one content viewer, either for the current page or the outline view, if it has focus,
-     * is the current one.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setCurrentViewer(Viewer viewer) {
-        // If it is changing...
-        //
-        if (currentViewer != viewer) {
-            if (selectionChangedListener == null) {
-                // Create the listener on demand.
-                //
-                selectionChangedListener =
-                    new ISelectionChangedListener() {
-                        // This just notifies those things that are affected by the section.
-                        //
-                        public void selectionChanged(SelectionChangedEvent selectionChangedEvent) {
-                            setSelection(selectionChangedEvent.getSelection());
-                        }
-                    };
-            }
+	/**
+	 * This returns the editing domain as required by the
+	 * {@link IEditingDomainProvider} interface. This is important for
+	 * implementing the static methods of {@link AdapterFactoryEditingDomain}
+	 * and for supporting {@link org.eclipse.emf.edit.ui.action.CommandAction}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EditingDomain getEditingDomain() {
+		return editingDomain;
+	}
 
-            // Stop listening to the old one.
-            //
-            if (currentViewer != null) {
-                currentViewer.removeSelectionChangedListener(selectionChangedListener);
-            }
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public class ReverseAdapterFactoryContentProvider extends
+			AdapterFactoryContentProvider {
+		/**
+		 * <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		public ReverseAdapterFactoryContentProvider(
+				AdapterFactory adapterFactory) {
+			super(adapterFactory);
+		}
 
-            // Start listening to the new one.
-            //
-            if (viewer != null) {
-                viewer.addSelectionChangedListener(selectionChangedListener);
-            }
+		/**
+		 * <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		@Override
+		public Object[] getElements(Object object) {
+			Object parent = super.getParent(object);
+			return (parent == null ? Collections.EMPTY_SET : Collections
+					.singleton(parent)).toArray();
+		}
 
-            // Remember it.
-            //
-            currentViewer = viewer;
+		/**
+		 * <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		@Override
+		public Object[] getChildren(Object object) {
+			Object parent = super.getParent(object);
+			return (parent == null ? Collections.EMPTY_SET : Collections
+					.singleton(parent)).toArray();
+		}
 
-            // Set the editors selection based on the current viewer's selection.
-            //
-            setSelection(currentViewer == null ? StructuredSelection.EMPTY : currentViewer.getSelection());
-        }
-    }
+		/**
+		 * <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		@Override
+		public boolean hasChildren(Object object) {
+			Object parent = super.getParent(object);
+			return parent != null;
+		}
 
-    /**
-     * This returns the viewer as required by the {@link IViewerProvider} interface.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public Viewer getViewer() {
-        return currentViewer;
-    }
+		/**
+		 * <!-- begin-user-doc --> <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		@Override
+		public Object getParent(Object object) {
+			return null;
+		}
+	}
 
-    /**
-     * This creates a context menu for the viewer and adds a listener as well registering the menu for extension.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void createContextMenuFor(StructuredViewer viewer) {
-        MenuManager contextMenu = new MenuManager("#PopUp");
-        contextMenu.add(new Separator("additions"));
-        contextMenu.setRemoveAllWhenShown(true);
-        contextMenu.addMenuListener(this);
-        Menu menu= contextMenu.createContextMenu(viewer.getControl());
-        viewer.getControl().setMenu(menu);
-        getSite().registerContextMenu(contextMenu, new UnwrappingSelectionProvider(viewer));
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setCurrentViewerPane(ViewerPane viewerPane) {
+		if (currentViewerPane != viewerPane) {
+			if (currentViewerPane != null) {
+				currentViewerPane.showFocus(false);
+			}
+			currentViewerPane = viewerPane;
+		}
+		setCurrentViewer(currentViewerPane.getViewer());
+	}
 
-        int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;
-        Transfer[] transfers = new Transfer[] { LocalTransfer.getInstance() };
-        viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));
-        viewer.addDropSupport(dndOperations, transfers, new EditingDomainViewerDropAdapter(editingDomain, viewer));
-    }
+	/**
+	 * This makes sure that one content viewer, either for the current page or
+	 * the outline view, if it has focus, is the current one. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setCurrentViewer(Viewer viewer) {
+		// If it is changing...
+		//
+		if (currentViewer != viewer) {
+			if (selectionChangedListener == null) {
+				// Create the listener on demand.
+				//
+				selectionChangedListener = new ISelectionChangedListener() {
+					// This just notifies those things that are affected by the
+					// section.
+					//
+					public void selectionChanged(
+							SelectionChangedEvent selectionChangedEvent) {
+						setSelection(selectionChangedEvent.getSelection());
+					}
+				};
+			}
 
-    /**
-     * This is the method called to load a resource into the editing domain's resource set based on the editor's input.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void createModel() {
-        URI resourceURI = EditUIUtil.getURI(getEditorInput());
-        Exception exception = null;
-        Resource resource = null;
-        try {
-            // Load the resource through the editing domain.
-            //
-            resource = editingDomain.getResourceSet().getResource(resourceURI, true);
-        }
-        catch (Exception e) {
-            exception = e;
-            resource = editingDomain.getResourceSet().getResource(resourceURI, false);
-        }
+			// Stop listening to the old one.
+			//
+			if (currentViewer != null) {
+				currentViewer
+						.removeSelectionChangedListener(selectionChangedListener);
+			}
+
+			// Start listening to the new one.
+			//
+			if (viewer != null) {
+				viewer.addSelectionChangedListener(selectionChangedListener);
+			}
+
+			// Remember it.
+			//
+			currentViewer = viewer;
+
+			// Set the editors selection based on the current viewer's
+			// selection.
+			//
+			setSelection(currentViewer == null ? StructuredSelection.EMPTY
+					: currentViewer.getSelection());
+		}
+	}
+
+	/**
+	 * This returns the viewer as required by the {@link IViewerProvider}
+	 * interface. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Viewer getViewer() {
+		return currentViewer;
+	}
+
+	/**
+	 * This creates a context menu for the viewer and adds a listener as well
+	 * registering the menu for extension. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void createContextMenuFor(StructuredViewer viewer) {
+		MenuManager contextMenu = new MenuManager("#PopUp");
+		contextMenu.add(new Separator("additions"));
+		contextMenu.setRemoveAllWhenShown(true);
+		contextMenu.addMenuListener(this);
+		Menu menu = contextMenu.createContextMenu(viewer.getControl());
+		viewer.getControl().setMenu(menu);
+		getSite().registerContextMenu(contextMenu,
+				new UnwrappingSelectionProvider(viewer));
+
+		int dndOperations = DND.DROP_COPY | DND.DROP_MOVE | DND.DROP_LINK;
+		Transfer[] transfers = new Transfer[] { LocalTransfer.getInstance() };
+		viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(
+				viewer));
+		viewer.addDropSupport(dndOperations, transfers,
+				new EditingDomainViewerDropAdapter(editingDomain, viewer));
+	}
+
+	/**
+	 * This is the method called to load a resource into the editing domain's
+	 * resource set based on the editor's input. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void createModel() {
+		URI resourceURI = EditUIUtil.getURI(getEditorInput());
+		Exception exception = null;
+		Resource resource = null;
+
+		try {
+			// Load the resource through the editing domain.
+			//
+			resource = editingDomain.getResourceSet().getResource(resourceURI,
+					true);
+		} catch (Exception e) {
+			exception = e;
+			resource = editingDomain.getResourceSet().getResource(resourceURI,
+					false);
+		}
+
+		Diagnostic diagnostic = analyzeResourceProblems(resource, exception);
+		if (diagnostic.getSeverity() != Diagnostic.OK) {
+			resourceToDiagnosticMap.put(resource,
+					analyzeResourceProblems(resource, exception));
+		}
+		editingDomain.getResourceSet().eAdapters()
+				.add(problemIndicationAdapter);
+	}
+
+	/**
+	 * Returns a diagnostic describing the errors and warnings listed in the
+	 * resource and the specified exception (if any). <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Diagnostic analyzeResourceProblems(Resource resource,
+			Exception exception) {
+		if (!resource.getErrors().isEmpty()
+				|| !resource.getWarnings().isEmpty()) {
+			BasicDiagnostic basicDiagnostic = new BasicDiagnostic(
+					Diagnostic.ERROR,
+					"org.eclipse.amp.amf.data.editor",
+					0,
+					getString("_UI_CreateModelError_message", resource.getURI()),
+					new Object[] { exception == null ? (Object) resource
+							: exception });
+			basicDiagnostic.merge(EcoreUtil.computeDiagnostic(resource, true));
+			return basicDiagnostic;
+		} else if (exception != null) {
+			return new BasicDiagnostic(Diagnostic.ERROR,
+					"org.eclipse.amp.amf.data.editor", 0, getString(
+							"_UI_CreateModelError_message", resource.getURI()),
+					new Object[] { exception });
+		} else {
+			return Diagnostic.OK_INSTANCE;
+		}
+	}
+
+	/**
+	 * This is the method used by the framework to install your own controls.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void createPages() {
+		// Creates the model from the editor input
+		//
+		createModel();
+
+		// Only creates the other pages if there is something that can be edited
+		//
+		if (!getEditingDomain().getResourceSet().getResources().isEmpty()) {
+			// Create a page for the selection tree view.
+			//
+			{
+				ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
+						DataEditor.this) {
+					@Override
+					public Viewer createViewer(Composite composite) {
+						Tree tree = new Tree(composite, SWT.MULTI);
+						TreeViewer newTreeViewer = new TreeViewer(tree);
+						return newTreeViewer;
+					}
+
+					@Override
+					public void requestActivation() {
+						super.requestActivation();
+						setCurrentViewerPane(this);
+					}
+				};
+				viewerPane.createControl(getContainer());
+
+				selectionViewer = (TreeViewer) viewerPane.getViewer();
+				selectionViewer
+						.setContentProvider(new AdapterFactoryContentProvider(
+								adapterFactory));
+
+				selectionViewer
+						.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(
+								adapterFactory, selectionViewer));
+				selectionViewer.setInput(editingDomain.getResourceSet());
+				selectionViewer.setSelection(new StructuredSelection(
+						editingDomain.getResourceSet().getResources().get(0)),
+						true);
+				viewerPane.setTitle(editingDomain.getResourceSet());
 
-        Diagnostic diagnostic = analyzeResourceProblems(resource, exception);
-        if (diagnostic.getSeverity() != Diagnostic.OK) {
-            resourceToDiagnosticMap.put(resource,  analyzeResourceProblems(resource, exception));
-        }
-        editingDomain.getResourceSet().eAdapters().add(problemIndicationAdapter);
-    }
+				new AdapterFactoryTreeEditor(selectionViewer.getTree(),
+						adapterFactory);
 
-    /**
-     * Returns a diagnostic describing the errors and warnings listed in the resource
-     * and the specified exception (if any).
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public Diagnostic analyzeResourceProblems(Resource resource, Exception exception) {
-        if (!resource.getErrors().isEmpty() || !resource.getWarnings().isEmpty()) {
-            BasicDiagnostic basicDiagnostic =
-                new BasicDiagnostic
-                    (Diagnostic.ERROR,
-                     "org.eclipse.amp.amf.data.editor",
-                     0,
-                     getString("_UI_CreateModelError_message", resource.getURI()),
-                     new Object [] { exception == null ? (Object)resource : exception });
-            basicDiagnostic.merge(EcoreUtil.computeDiagnostic(resource, true));
-            return basicDiagnostic;
-        }
-        else if (exception != null) {
-            return
-                new BasicDiagnostic
-                    (Diagnostic.ERROR,
-                     "org.eclipse.amp.amf.data.editor",
-                     0,
-                     getString("_UI_CreateModelError_message", resource.getURI()),
-                     new Object[] { exception });
-        }
-        else {
-            return Diagnostic.OK_INSTANCE;
-        }
-    }
+				createContextMenuFor(selectionViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_SelectionPage_label"));
+			}
 
-    /**
-     * This is the method used by the framework to install your own controls.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public void createPages() {
-        // Creates the model from the editor input
-        //
-        createModel();
+			// Create a page for the parent tree view.
+			//
+			{
+				ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
+						DataEditor.this) {
+					@Override
+					public Viewer createViewer(Composite composite) {
+						Tree tree = new Tree(composite, SWT.MULTI);
+						TreeViewer newTreeViewer = new TreeViewer(tree);
+						return newTreeViewer;
+					}
 
-        // Only creates the other pages if there is something that can be edited
-        //
-        if (!getEditingDomain().getResourceSet().getResources().isEmpty()) {
-            // Create a page for the selection tree view.
-            //
-            {
-                ViewerPane viewerPane =
-                    new ViewerPane(getSite().getPage(), DataEditor.this) {
-                        @Override
-                        public Viewer createViewer(Composite composite) {
-                            Tree tree = new Tree(composite, SWT.MULTI);
-                            TreeViewer newTreeViewer = new TreeViewer(tree);
-                            return newTreeViewer;
-                        }
-                        @Override
-                        public void requestActivation() {
-                            super.requestActivation();
-                            setCurrentViewerPane(this);
-                        }
-                    };
-                viewerPane.createControl(getContainer());
+					@Override
+					public void requestActivation() {
+						super.requestActivation();
+						setCurrentViewerPane(this);
+					}
+				};
+				viewerPane.createControl(getContainer());
 
-                selectionViewer = (TreeViewer)viewerPane.getViewer();
-                selectionViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+				parentViewer = (TreeViewer) viewerPane.getViewer();
+				parentViewer.setAutoExpandLevel(30);
+				parentViewer
+						.setContentProvider(new ReverseAdapterFactoryContentProvider(
+								adapterFactory));
+				parentViewer
+						.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(
+								adapterFactory, parentViewer));
 
-                selectionViewer.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(adapterFactory, selectionViewer));
-                selectionViewer.setInput(editingDomain.getResourceSet());
-                selectionViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
-                viewerPane.setTitle(editingDomain.getResourceSet());
+				createContextMenuFor(parentViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_ParentPage_label"));
+			}
 
-                new AdapterFactoryTreeEditor(selectionViewer.getTree(), adapterFactory);
+			// This is the page for the list viewer
+			//
+			{
+				ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
+						DataEditor.this) {
+					@Override
+					public Viewer createViewer(Composite composite) {
+						return new ListViewer(composite);
+					}
 
-                createContextMenuFor(selectionViewer);
-                int pageIndex = addPage(viewerPane.getControl());
-                setPageText(pageIndex, getString("_UI_SelectionPage_label"));
-            }
+					@Override
+					public void requestActivation() {
+						super.requestActivation();
+						setCurrentViewerPane(this);
+					}
+				};
+				viewerPane.createControl(getContainer());
+				listViewer = (ListViewer) viewerPane.getViewer();
+				listViewer
+						.setContentProvider(new AdapterFactoryContentProvider(
+								adapterFactory));
+				listViewer
+						.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(
+								adapterFactory, listViewer));
 
-            // Create a page for the parent tree view.
-            //
-            {
-                ViewerPane viewerPane =
-                    new ViewerPane(getSite().getPage(), DataEditor.this) {
-                        @Override
-                        public Viewer createViewer(Composite composite) {
-                            Tree tree = new Tree(composite, SWT.MULTI);
-                            TreeViewer newTreeViewer = new TreeViewer(tree);
-                            return newTreeViewer;
-                        }
-                        @Override
-                        public void requestActivation() {
-                            super.requestActivation();
-                            setCurrentViewerPane(this);
-                        }
-                    };
-                viewerPane.createControl(getContainer());
+				createContextMenuFor(listViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_ListPage_label"));
+			}
 
-                parentViewer = (TreeViewer)viewerPane.getViewer();
-                parentViewer.setAutoExpandLevel(30);
-                parentViewer.setContentProvider(new ReverseAdapterFactoryContentProvider(adapterFactory));
-                parentViewer.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(adapterFactory, parentViewer));
+			// This is the page for the tree viewer
+			//
+			{
+				ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
+						DataEditor.this) {
+					@Override
+					public Viewer createViewer(Composite composite) {
+						return new TreeViewer(composite);
+					}
 
-                createContextMenuFor(parentViewer);
-                int pageIndex = addPage(viewerPane.getControl());
-                setPageText(pageIndex, getString("_UI_ParentPage_label"));
-            }
+					@Override
+					public void requestActivation() {
+						super.requestActivation();
+						setCurrentViewerPane(this);
+					}
+				};
+				viewerPane.createControl(getContainer());
+				treeViewer = (TreeViewer) viewerPane.getViewer();
+				treeViewer
+						.setContentProvider(new AdapterFactoryContentProvider(
+								adapterFactory));
+				treeViewer
+						.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(
+								adapterFactory, treeViewer));
 
-            // This is the page for the list viewer
-            //
-            {
-                ViewerPane viewerPane =
-                    new ViewerPane(getSite().getPage(), DataEditor.this) {
-                        @Override
-                        public Viewer createViewer(Composite composite) {
-                            return new ListViewer(composite);
-                        }
-                        @Override
-                        public void requestActivation() {
-                            super.requestActivation();
-                            setCurrentViewerPane(this);
-                        }
-                    };
-                viewerPane.createControl(getContainer());
-                listViewer = (ListViewer)viewerPane.getViewer();
-                listViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
-                listViewer.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(adapterFactory, listViewer));
+				new AdapterFactoryTreeEditor(treeViewer.getTree(),
+						adapterFactory);
 
-                createContextMenuFor(listViewer);
-                int pageIndex = addPage(viewerPane.getControl());
-                setPageText(pageIndex, getString("_UI_ListPage_label"));
-            }
+				createContextMenuFor(treeViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_TreePage_label"));
+			}
 
-            // This is the page for the tree viewer
-            //
-            {
-                ViewerPane viewerPane =
-                    new ViewerPane(getSite().getPage(), DataEditor.this) {
-                        @Override
-                        public Viewer createViewer(Composite composite) {
-                            return new TreeViewer(composite);
-                        }
-                        @Override
-                        public void requestActivation() {
-                            super.requestActivation();
-                            setCurrentViewerPane(this);
-                        }
-                    };
-                viewerPane.createControl(getContainer());
-                treeViewer = (TreeViewer)viewerPane.getViewer();
-                treeViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
-                treeViewer.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(adapterFactory, treeViewer));
+			// This is the page for the table viewer.
+			//
+			{
+				ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
+						DataEditor.this) {
+					@Override
+					public Viewer createViewer(Composite composite) {
+						return new TableViewer(composite);
+					}
 
-                new AdapterFactoryTreeEditor(treeViewer.getTree(), adapterFactory);
+					@Override
+					public void requestActivation() {
+						super.requestActivation();
+						setCurrentViewerPane(this);
+					}
+				};
+				viewerPane.createControl(getContainer());
+				tableViewer = (TableViewer) viewerPane.getViewer();
 
-                createContextMenuFor(treeViewer);
-                int pageIndex = addPage(viewerPane.getControl());
-                setPageText(pageIndex, getString("_UI_TreePage_label"));
-            }
+				Table table = tableViewer.getTable();
+				TableLayout layout = new TableLayout();
+				table.setLayout(layout);
+				table.setHeaderVisible(true);
+				table.setLinesVisible(true);
 
-            // This is the page for the table viewer.
-            //
-            {
-                ViewerPane viewerPane =
-                    new ViewerPane(getSite().getPage(), DataEditor.this) {
-                        @Override
-                        public Viewer createViewer(Composite composite) {
-                            return new TableViewer(composite);
-                        }
-                        @Override
-                        public void requestActivation() {
-                            super.requestActivation();
-                            setCurrentViewerPane(this);
-                        }
-                    };
-                viewerPane.createControl(getContainer());
-                tableViewer = (TableViewer)viewerPane.getViewer();
+				TableColumn objectColumn = new TableColumn(table, SWT.NONE);
+				layout.addColumnData(new ColumnWeightData(3, 100, true));
+				objectColumn.setText(getString("_UI_ObjectColumn_label"));
+				objectColumn.setResizable(true);
 
-                Table table = tableViewer.getTable();
-                TableLayout layout = new TableLayout();
-                table.setLayout(layout);
-                table.setHeaderVisible(true);
-                table.setLinesVisible(true);
+				TableColumn selfColumn = new TableColumn(table, SWT.NONE);
+				layout.addColumnData(new ColumnWeightData(2, 100, true));
+				selfColumn.setText(getString("_UI_SelfColumn_label"));
+				selfColumn.setResizable(true);
 
-                TableColumn objectColumn = new TableColumn(table, SWT.NONE);
-                layout.addColumnData(new ColumnWeightData(3, 100, true));
-                objectColumn.setText(getString("_UI_ObjectColumn_label"));
-                objectColumn.setResizable(true);
+				tableViewer.setColumnProperties(new String[] { "a", "b" });
+				tableViewer
+						.setContentProvider(new AdapterFactoryContentProvider(
+								adapterFactory));
+				tableViewer
+						.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(
+								adapterFactory, tableViewer));
 
-                TableColumn selfColumn = new TableColumn(table, SWT.NONE);
-                layout.addColumnData(new ColumnWeightData(2, 100, true));
-                selfColumn.setText(getString("_UI_SelfColumn_label"));
-                selfColumn.setResizable(true);
+				createContextMenuFor(tableViewer);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex, getString("_UI_TablePage_label"));
+			}
 
-                tableViewer.setColumnProperties(new String [] {"a", "b"});
-                tableViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
-                tableViewer.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(adapterFactory, tableViewer));
+			// This is the page for the table tree viewer.
+			//
+			{
+				ViewerPane viewerPane = new ViewerPane(getSite().getPage(),
+						DataEditor.this) {
+					@Override
+					public Viewer createViewer(Composite composite) {
+						return new TreeViewer(composite);
+					}
 
-                createContextMenuFor(tableViewer);
-                int pageIndex = addPage(viewerPane.getControl());
-                setPageText(pageIndex, getString("_UI_TablePage_label"));
-            }
+					@Override
+					public void requestActivation() {
+						super.requestActivation();
+						setCurrentViewerPane(this);
+					}
+				};
+				viewerPane.createControl(getContainer());
 
-            // This is the page for the table tree viewer.
-            //
-            {
-                ViewerPane viewerPane =
-                    new ViewerPane(getSite().getPage(), DataEditor.this) {
-                        @Override
-                        public Viewer createViewer(Composite composite) {
-                            return new TreeViewer(composite);
-                        }
-                        @Override
-                        public void requestActivation() {
-                            super.requestActivation();
-                            setCurrentViewerPane(this);
-                        }
-                    };
-                viewerPane.createControl(getContainer());
+				treeViewerWithColumns = (TreeViewer) viewerPane.getViewer();
 
-                treeViewerWithColumns = (TreeViewer)viewerPane.getViewer();
+				Tree tree = treeViewerWithColumns.getTree();
+				tree.setLayoutData(new FillLayout());
+				tree.setHeaderVisible(true);
+				tree.setLinesVisible(true);
 
-                Tree tree = treeViewerWithColumns.getTree();
-                tree.setLayoutData(new FillLayout());
-                tree.setHeaderVisible(true);
-                tree.setLinesVisible(true);
+				TreeColumn objectColumn = new TreeColumn(tree, SWT.NONE);
+				objectColumn.setText(getString("_UI_ObjectColumn_label"));
+				objectColumn.setResizable(true);
+				objectColumn.setWidth(250);
 
-                TreeColumn objectColumn = new TreeColumn(tree, SWT.NONE);
-                objectColumn.setText(getString("_UI_ObjectColumn_label"));
-                objectColumn.setResizable(true);
-                objectColumn.setWidth(250);
+				TreeColumn selfColumn = new TreeColumn(tree, SWT.NONE);
+				selfColumn.setText(getString("_UI_SelfColumn_label"));
+				selfColumn.setResizable(true);
+				selfColumn.setWidth(200);
 
-                TreeColumn selfColumn = new TreeColumn(tree, SWT.NONE);
-                selfColumn.setText(getString("_UI_SelfColumn_label"));
-                selfColumn.setResizable(true);
-                selfColumn.setWidth(200);
+				treeViewerWithColumns.setColumnProperties(new String[] { "a",
+						"b" });
+				treeViewerWithColumns
+						.setContentProvider(new AdapterFactoryContentProvider(
+								adapterFactory));
+				treeViewerWithColumns
+						.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(
+								adapterFactory, treeViewerWithColumns));
 
-                treeViewerWithColumns.setColumnProperties(new String [] {"a", "b"});
-                treeViewerWithColumns.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
-                treeViewerWithColumns.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(adapterFactory, treeViewerWithColumns));
+				createContextMenuFor(treeViewerWithColumns);
+				int pageIndex = addPage(viewerPane.getControl());
+				setPageText(pageIndex,
+						getString("_UI_TreeWithColumnsPage_label"));
+			}
 
-                createContextMenuFor(treeViewerWithColumns);
-                int pageIndex = addPage(viewerPane.getControl());
-                setPageText(pageIndex, getString("_UI_TreeWithColumnsPage_label"));
-            }
+			getSite().getShell().getDisplay().asyncExec(new Runnable() {
+				public void run() {
+					setActivePage(0);
+				}
+			});
+		}
 
-            getSite().getShell().getDisplay().asyncExec
-                (new Runnable() {
-                     public void run() {
-                         setActivePage(0);
-                     }
-                 });
-        }
+		// Ensures that this editor will only display the page's tab
+		// area if there are more than one page
+		//
+		getContainer().addControlListener(new ControlAdapter() {
+			boolean guard = false;
 
-        // Ensures that this editor will only display the page's tab
-        // area if there are more than one page
-        //
-        getContainer().addControlListener
-            (new ControlAdapter() {
-                boolean guard = false;
-                @Override
-                public void controlResized(ControlEvent event) {
-                    if (!guard) {
-                        guard = true;
-                        hideTabs();
-                        guard = false;
-                    }
-                }
-             });
+			@Override
+			public void controlResized(ControlEvent event) {
+				if (!guard) {
+					guard = true;
+					hideTabs();
+					guard = false;
+				}
+			}
+		});
 
-        getSite().getShell().getDisplay().asyncExec
-            (new Runnable() {
-                 public void run() {
-                     updateProblemIndication();
-                 }
-             });
-    }
+		getSite().getShell().getDisplay().asyncExec(new Runnable() {
+			public void run() {
+				updateProblemIndication();
+			}
+		});
+	}
 
-    /**
-     * If there is just one page in the multi-page editor part,
-     * this hides the single tab at the bottom.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void hideTabs() {
-        if (getPageCount() <= 1) {
-            setPageText(0, "");
-            if (getContainer() instanceof CTabFolder) {
-                ((CTabFolder)getContainer()).setTabHeight(1);
-                Point point = getContainer().getSize();
-                getContainer().setSize(point.x, point.y + 6);
-            }
-        }
-    }
+	/**
+	 * If there is just one page in the multi-page editor part, this hides the
+	 * single tab at the bottom. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void hideTabs() {
+		if (getPageCount() <= 1) {
+			setPageText(0, "");
+			if (getContainer() instanceof CTabFolder) {
+				((CTabFolder) getContainer()).setTabHeight(1);
+				Point point = getContainer().getSize();
+				getContainer().setSize(point.x, point.y + 6);
+			}
+		}
+	}
 
-    /**
-     * If there is more than one page in the multi-page editor part,
-     * this shows the tabs at the bottom.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void showTabs() {
-        if (getPageCount() > 1) {
-            setPageText(0, getString("_UI_SelectionPage_label"));
-            if (getContainer() instanceof CTabFolder) {
-                ((CTabFolder)getContainer()).setTabHeight(SWT.DEFAULT);
-                Point point = getContainer().getSize();
-                getContainer().setSize(point.x, point.y - 6);
-            }
-        }
-    }
+	/**
+	 * If there is more than one page in the multi-page editor part, this shows
+	 * the tabs at the bottom. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void showTabs() {
+		if (getPageCount() > 1) {
+			setPageText(0, getString("_UI_SelectionPage_label"));
+			if (getContainer() instanceof CTabFolder) {
+				((CTabFolder) getContainer()).setTabHeight(SWT.DEFAULT);
+				Point point = getContainer().getSize();
+				getContainer().setSize(point.x, point.y - 6);
+			}
+		}
+	}
 
-    /**
-     * This is used to track the active viewer.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    protected void pageChange(int pageIndex) {
-        super.pageChange(pageIndex);
+	/**
+	 * This is used to track the active viewer. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected void pageChange(int pageIndex) {
+		super.pageChange(pageIndex);
 
-        if (contentOutlinePage != null) {
-            handleContentOutlineSelection(contentOutlinePage.getSelection());
-        }
-    }
+		if (contentOutlinePage != null) {
+			handleContentOutlineSelection(contentOutlinePage.getSelection());
+		}
+	}
 
-    /**
-     * This is how the framework determines which interfaces we implement.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @SuppressWarnings("unchecked")
-    @Override
-    public Object getAdapter(Class key) {
-        if (key.equals(IContentOutlinePage.class)) {
-            return showOutlineView() ? getContentOutlinePage() : null;
-        }
-        else if (key.equals(IPropertySheetPage.class)) {
-            return getPropertySheetPage();
-        }
-        else if (key.equals(IGotoMarker.class)) {
-            return this;
-        }
-        else {
-            return super.getAdapter(key);
-        }
-    }
+	/**
+	 * This is how the framework determines which interfaces we implement. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public Object getAdapter(Class key) {
+		if (key.equals(IContentOutlinePage.class)) {
+			return showOutlineView() ? getContentOutlinePage() : null;
+		} else if (key.equals(IPropertySheetPage.class)) {
+			return getPropertySheetPage();
+		} else if (key.equals(IGotoMarker.class)) {
+			return this;
+		} else {
+			return super.getAdapter(key);
+		}
+	}
 
-    /**
-     * This accesses a cached version of the content outliner.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public IContentOutlinePage getContentOutlinePage() {
-        if (contentOutlinePage == null) {
-            // The content outline is just a tree.
-            //
-            class MyContentOutlinePage extends ContentOutlinePage {
-                @Override
-                public void createControl(Composite parent) {
-                    super.createControl(parent);
-                    contentOutlineViewer = getTreeViewer();
-                    contentOutlineViewer.addSelectionChangedListener(this);
+	/**
+	 * This accesses a cached version of the content outliner. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IContentOutlinePage getContentOutlinePage() {
+		if (contentOutlinePage == null) {
+			// The content outline is just a tree.
+			//
+			class MyContentOutlinePage extends ContentOutlinePage {
+				@Override
+				public void createControl(Composite parent) {
+					super.createControl(parent);
+					contentOutlineViewer = getTreeViewer();
+					contentOutlineViewer.addSelectionChangedListener(this);
 
-                    // Set up the tree viewer.
-                    //
-                    contentOutlineViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
-                    contentOutlineViewer.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(adapterFactory, contentOutlineViewer));
-                    contentOutlineViewer.setInput(editingDomain.getResourceSet());
+					// Set up the tree viewer.
+					//
+					contentOutlineViewer
+							.setContentProvider(new AdapterFactoryContentProvider(
+									adapterFactory));
+					contentOutlineViewer
+							.setLabelProvider(new AdapterFactoryLabelProvider.ColorProvider(
+									adapterFactory, contentOutlineViewer));
+					contentOutlineViewer.setInput(editingDomain
+							.getResourceSet());
 
-                    // Make sure our popups work.
-                    //
-                    createContextMenuFor(contentOutlineViewer);
+					// Make sure our popups work.
+					//
+					createContextMenuFor(contentOutlineViewer);
 
-                    if (!editingDomain.getResourceSet().getResources().isEmpty()) {
-                      // Select the root object in the view.
-                      //
-                      contentOutlineViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
-                    }
-                }
+					if (!editingDomain.getResourceSet().getResources()
+							.isEmpty()) {
+						// Select the root object in the view.
+						//
+						contentOutlineViewer
+								.setSelection(new StructuredSelection(
+										editingDomain.getResourceSet()
+												.getResources().get(0)), true);
+					}
+				}
 
-                @Override
-                public void makeContributions(IMenuManager menuManager, IToolBarManager toolBarManager, IStatusLineManager statusLineManager) {
-                    super.makeContributions(menuManager, toolBarManager, statusLineManager);
-                    contentOutlineStatusLineManager = statusLineManager;
-                }
+				@Override
+				public void makeContributions(IMenuManager menuManager,
+						IToolBarManager toolBarManager,
+						IStatusLineManager statusLineManager) {
+					super.makeContributions(menuManager, toolBarManager,
+							statusLineManager);
+					contentOutlineStatusLineManager = statusLineManager;
+				}
 
-                @Override
-                public void setActionBars(IActionBars actionBars) {
-                    super.setActionBars(actionBars);
-                    getActionBarContributor().shareGlobalActions(this, actionBars);
-                }
-            }
+				@Override
+				public void setActionBars(IActionBars actionBars) {
+					super.setActionBars(actionBars);
+					getActionBarContributor().shareGlobalActions(this,
+							actionBars);
+				}
+			}
 
-            contentOutlinePage = new MyContentOutlinePage();
+			contentOutlinePage = new MyContentOutlinePage();
 
-            // Listen to selection so that we can handle it is a special way.
-            //
-            contentOutlinePage.addSelectionChangedListener
-                (new ISelectionChangedListener() {
-                     // This ensures that we handle selections correctly.
-                     //
-                     public void selectionChanged(SelectionChangedEvent event) {
-                         handleContentOutlineSelection(event.getSelection());
-                     }
-                 });
-        }
+			// Listen to selection so that we can handle it is a special way.
+			//
+			contentOutlinePage
+					.addSelectionChangedListener(new ISelectionChangedListener() {
+						// This ensures that we handle selections correctly.
+						//
+						public void selectionChanged(SelectionChangedEvent event) {
+							handleContentOutlineSelection(event.getSelection());
+						}
+					});
+		}
 
-        return contentOutlinePage;
-    }
+		return contentOutlinePage;
+	}
 
-    /**
-     * This accesses a cached version of the property sheet.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public IPropertySheetPage getPropertySheetPage() {
-        if (propertySheetPage == null) {
-            propertySheetPage =
-                new ExtendedPropertySheetPage(editingDomain) {
-                    @Override
-                    public void setSelectionToViewer(List<?> selection) {
-                        DataEditor.this.setSelectionToViewer(selection);
-                        DataEditor.this.setFocus();
-                    }
+	/**
+	 * This accesses a cached version of the property sheet. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IPropertySheetPage getPropertySheetPage() {
+		if (propertySheetPage == null) {
+			propertySheetPage = new ExtendedPropertySheetPage(editingDomain) {
+				@Override
+				public void setSelectionToViewer(List<?> selection) {
+					DataEditor.this.setSelectionToViewer(selection);
+					DataEditor.this.setFocus();
+				}
 
-                    @Override
-                    public void setActionBars(IActionBars actionBars) {
-                        super.setActionBars(actionBars);
-                        getActionBarContributor().shareGlobalActions(this, actionBars);
-                    }
-                };
-            propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
-        }
+				@Override
+				public void setActionBars(IActionBars actionBars) {
+					super.setActionBars(actionBars);
+					getActionBarContributor().shareGlobalActions(this,
+							actionBars);
+				}
+			};
+			propertySheetPage
+					.setPropertySourceProvider(new AdapterFactoryContentProvider(
+							adapterFactory));
+		}
 
-        return propertySheetPage;
-    }
+		return propertySheetPage;
+	}
 
-    /**
-     * This deals with how we want selection in the outliner to affect the other views.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void handleContentOutlineSelection(ISelection selection) {
-        if (currentViewerPane != null && !selection.isEmpty() && selection instanceof IStructuredSelection) {
-            Iterator<?> selectedElements = ((IStructuredSelection)selection).iterator();
-            if (selectedElements.hasNext()) {
-                // Get the first selected element.
-                //
-                Object selectedElement = selectedElements.next();
+	/**
+	 * This deals with how we want selection in the outliner to affect the other
+	 * views. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void handleContentOutlineSelection(ISelection selection) {
+		if (currentViewerPane != null && !selection.isEmpty()
+				&& selection instanceof IStructuredSelection) {
+			Iterator<?> selectedElements = ((IStructuredSelection) selection)
+					.iterator();
+			if (selectedElements.hasNext()) {
+				// Get the first selected element.
+				//
+				Object selectedElement = selectedElements.next();
 
-                // If it's the selection viewer, then we want it to select the same selection as this selection.
-                //
-                if (currentViewerPane.getViewer() == selectionViewer) {
-                    ArrayList<Object> selectionList = new ArrayList<Object>();
-                    selectionList.add(selectedElement);
-                    while (selectedElements.hasNext()) {
-                        selectionList.add(selectedElements.next());
-                    }
+				// If it's the selection viewer, then we want it to select the
+				// same selection as this selection.
+				//
+				if (currentViewerPane.getViewer() == selectionViewer) {
+					ArrayList<Object> selectionList = new ArrayList<Object>();
+					selectionList.add(selectedElement);
+					while (selectedElements.hasNext()) {
+						selectionList.add(selectedElements.next());
+					}
 
-                    // Set the selection to the widget.
-                    //
-                    selectionViewer.setSelection(new StructuredSelection(selectionList));
-                }
-                else {
-                    // Set the input to the widget.
-                    //
-                    if (currentViewerPane.getViewer().getInput() != selectedElement) {
-                        currentViewerPane.getViewer().setInput(selectedElement);
-                        currentViewerPane.setTitle(selectedElement);
-                    }
-                }
-            }
-        }
-    }
+					// Set the selection to the widget.
+					//
+					selectionViewer.setSelection(new StructuredSelection(
+							selectionList));
+				} else {
+					// Set the input to the widget.
+					//
+					if (currentViewerPane.getViewer().getInput() != selectedElement) {
+						currentViewerPane.getViewer().setInput(selectedElement);
+						currentViewerPane.setTitle(selectedElement);
+					}
+				}
+			}
+		}
+	}
 
-    /**
-     * This is for implementing {@link IEditorPart} and simply tests the command stack.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public boolean isDirty() {
-        return ((BasicCommandStack)editingDomain.getCommandStack()).isSaveNeeded();
-    }
+	/**
+	 * This is for implementing {@link IEditorPart} and simply tests the command
+	 * stack. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean isDirty() {
+		return ((BasicCommandStack) editingDomain.getCommandStack())
+				.isSaveNeeded();
+	}
 
-    /**
-     * This is for implementing {@link IEditorPart} and simply saves the model file.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public void doSave(IProgressMonitor progressMonitor) {
-        // Save only resources that have actually changed.
-        //
-        final Map<Object, Object> saveOptions = new HashMap<Object, Object>();
-        saveOptions.put(Resource.OPTION_SAVE_ONLY_IF_CHANGED, Resource.OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER);
+	/**
+	 * This is for implementing {@link IEditorPart} and simply saves the model
+	 * file. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void doSave(IProgressMonitor progressMonitor) {
+		// Save only resources that have actually changed.
+		//
+		final Map<Object, Object> saveOptions = new HashMap<Object, Object>();
+		saveOptions.put(Resource.OPTION_SAVE_ONLY_IF_CHANGED,
+				Resource.OPTION_SAVE_ONLY_IF_CHANGED_MEMORY_BUFFER);
 
-        // Do the work within an operation because this is a long running activity that modifies the workbench.
-        //
-        WorkspaceModifyOperation operation =
-            new WorkspaceModifyOperation() {
-                // This is the method that gets invoked when the operation runs.
-                //
-                @Override
-                public void execute(IProgressMonitor monitor) {
-                    // Save the resources to the file system.
-                    //
-                    boolean first = true;
-                    for (Resource resource : editingDomain.getResourceSet().getResources()) {
-                        if ((first || !resource.getContents().isEmpty() || isPersisted(resource)) && !editingDomain.isReadOnly(resource)) {
-                            try {
-                                long timeStamp = resource.getTimeStamp();
-                                resource.save(saveOptions);
-                                if (resource.getTimeStamp() != timeStamp) {
-                                    savedResources.add(resource);
-                                }
-                            }
-                            catch (Exception exception) {
-                                resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
-                            }
-                            first = false;
-                        }
-                    }
-                }
-            };
+		// Do the work within an operation because this is a long running
+		// activity that modifies the workbench.
+		//
+		WorkspaceModifyOperation operation = new WorkspaceModifyOperation() {
+			// This is the method that gets invoked when the operation runs.
+			//
+			@Override
+			public void execute(IProgressMonitor monitor) {
+				// Save the resources to the file system.
+				//
+				boolean first = true;
+				for (Resource resource : editingDomain.getResourceSet()
+						.getResources()) {
+					if ((first || !resource.getContents().isEmpty() || isPersisted(resource))
+							&& !editingDomain.isReadOnly(resource)) {
+						try {
+							long timeStamp = resource.getTimeStamp();
+							resource.save(saveOptions);
+							if (resource.getTimeStamp() != timeStamp) {
+								savedResources.add(resource);
+							}
+						} catch (Exception exception) {
+							resourceToDiagnosticMap
+									.put(resource,
+											analyzeResourceProblems(resource,
+													exception));
+						}
+						first = false;
+					}
+				}
+			}
+		};
 
-        updateProblemIndication = false;
-        try {
-            // This runs the options, and shows progress.
-            //
-            new ProgressMonitorDialog(getSite().getShell()).run(true, false, operation);
+		updateProblemIndication = false;
+		try {
+			// This runs the options, and shows progress.
+			//
+			new ProgressMonitorDialog(getSite().getShell()).run(true, false,
+					operation);
 
-            // Refresh the necessary state.
-            //
-            ((BasicCommandStack)editingDomain.getCommandStack()).saveIsDone();
-            firePropertyChange(IEditorPart.PROP_DIRTY);
-        }
-        catch (Exception exception) {
-            // Something went wrong that shouldn't.
-            //
-            ADataEditorPlugin.INSTANCE.log(exception);
-        }
-        updateProblemIndication = true;
-        updateProblemIndication();
-    }
+			// Refresh the necessary state.
+			//
+			((BasicCommandStack) editingDomain.getCommandStack()).saveIsDone();
+			firePropertyChange(IEditorPart.PROP_DIRTY);
+		} catch (Exception exception) {
+			// Something went wrong that shouldn't.
+			//
+			ADataEditorPlugin.INSTANCE.log(exception);
+		}
+		updateProblemIndication = true;
+		updateProblemIndication();
+	}
 
-    /**
-     * This returns whether something has been persisted to the URI of the specified resource.
-     * The implementation uses the URI converter from the editor's resource set to try to open an input stream. 
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected boolean isPersisted(Resource resource) {
-        boolean result = false;
-        try {
-            InputStream stream = editingDomain.getResourceSet().getURIConverter().createInputStream(resource.getURI());
-            if (stream != null) {
-                result = true;
-                stream.close();
-            }
-        }
-        catch (IOException e) {
-            // Ignore
-        }
-        return result;
-    }
+	/**
+	 * This returns whether something has been persisted to the URI of the
+	 * specified resource. The implementation uses the URI converter from the
+	 * editor's resource set to try to open an input stream. <!-- begin-user-doc
+	 * --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected boolean isPersisted(Resource resource) {
+		boolean result = false;
+		try {
+			InputStream stream = editingDomain.getResourceSet()
+					.getURIConverter().createInputStream(resource.getURI());
+			if (stream != null) {
+				result = true;
+				stream.close();
+			}
+		} catch (IOException e) {
+			// Ignore
+		}
+		return result;
+	}
 
-    /**
-     * This always returns true because it is not currently supported.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public boolean isSaveAsAllowed() {
-        return true;
-    }
+	/**
+	 * This always returns true because it is not currently supported. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean isSaveAsAllowed() {
+		return true;
+	}
 
-    /**
-     * This also changes the editor's input.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public void doSaveAs() {
-        SaveAsDialog saveAsDialog = new SaveAsDialog(getSite().getShell());
-        saveAsDialog.open();
-        IPath path = saveAsDialog.getResult();
-        if (path != null) {
-            IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
-            if (file != null) {
-                doSaveAs(URI.createPlatformResourceURI(file.getFullPath().toString(), true), new FileEditorInput(file));
-            }
-        }
-    }
+	/**
+	 * This also changes the editor's input. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void doSaveAs() {
+		SaveAsDialog saveAsDialog = new SaveAsDialog(getSite().getShell());
+		saveAsDialog.open();
+		IPath path = saveAsDialog.getResult();
+		if (path != null) {
+			IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
+			if (file != null) {
+				doSaveAs(URI.createPlatformResourceURI(file.getFullPath()
+						.toString(), true), new FileEditorInput(file));
+			}
+		}
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected void doSaveAs(URI uri, IEditorInput editorInput) {
-        (editingDomain.getResourceSet().getResources().get(0)).setURI(uri);
-        setInputWithNotify(editorInput);
-        setPartName(editorInput.getName());
-        IProgressMonitor progressMonitor =
-            getActionBars().getStatusLineManager() != null ?
-                getActionBars().getStatusLineManager().getProgressMonitor() :
-                new NullProgressMonitor();
-        doSave(progressMonitor);
-    }
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void doSaveAs(URI uri, IEditorInput editorInput) {
+		(editingDomain.getResourceSet().getResources().get(0)).setURI(uri);
+		setInputWithNotify(editorInput);
+		setPartName(editorInput.getName());
+		IProgressMonitor progressMonitor = getActionBars()
+				.getStatusLineManager() != null ? getActionBars()
+				.getStatusLineManager().getProgressMonitor()
+				: new NullProgressMonitor();
+		doSave(progressMonitor);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void gotoMarker(IMarker marker) {
-        try {
-            if (marker.getType().equals(EValidator.MARKER)) {
-                String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
-                if (uriAttribute != null) {
-                    URI uri = URI.createURI(uriAttribute);
-                    EObject eObject = editingDomain.getResourceSet().getEObject(uri, true);
-                    if (eObject != null) {
-                      setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject)));
-                    }
-                }
-            }
-        }
-        catch (CoreException exception) {
-            ADataEditorPlugin.INSTANCE.log(exception);
-        }
-    }
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void gotoMarker(IMarker marker) {
+		try {
+			if (marker.getType().equals(EValidator.MARKER)) {
+				String uriAttribute = marker.getAttribute(
+						EValidator.URI_ATTRIBUTE, null);
+				if (uriAttribute != null) {
+					URI uri = URI.createURI(uriAttribute);
+					EObject eObject = editingDomain.getResourceSet()
+							.getEObject(uri, true);
+					if (eObject != null) {
+						setSelectionToViewer(Collections
+								.singleton(editingDomain.getWrapper(eObject)));
+					}
+				}
+			}
+		} catch (CoreException exception) {
+			ADataEditorPlugin.INSTANCE.log(exception);
+		}
+	}
 
-    /**
-     * This is called during startup.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public void init(IEditorSite site, IEditorInput editorInput) {
-        setSite(site);
-        setInputWithNotify(editorInput);
-        setPartName(editorInput.getName());
-        site.setSelectionProvider(this);
-        site.getPage().addPartListener(partListener);
-        ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_CHANGE);
-    }
+	/**
+	 * This is called during startup. <!-- begin-user-doc --> <!-- end-user-doc
+	 * -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void init(IEditorSite site, IEditorInput editorInput) {
+		setSite(site);
+		setInputWithNotify(editorInput);
+		setPartName(editorInput.getName());
+		site.setSelectionProvider(this);
+		site.getPage().addPartListener(partListener);
+		ResourcesPlugin.getWorkspace().addResourceChangeListener(
+				resourceChangeListener, IResourceChangeEvent.POST_CHANGE);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public void setFocus() {
-        if (currentViewerPane != null) {
-            currentViewerPane.setFocus();
-        }
-        else {
-            getControl(getActivePage()).setFocus();
-        }
-    }
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void setFocus() {
+		if (currentViewerPane != null) {
+			currentViewerPane.setFocus();
+		} else {
+			getControl(getActivePage()).setFocus();
+		}
+	}
 
-    /**
-     * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void addSelectionChangedListener(ISelectionChangedListener listener) {
-        selectionChangedListeners.add(listener);
-    }
+	/**
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void addSelectionChangedListener(ISelectionChangedListener listener) {
+		selectionChangedListeners.add(listener);
+	}
 
-    /**
-     * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void removeSelectionChangedListener(ISelectionChangedListener listener) {
-        selectionChangedListeners.remove(listener);
-    }
+	/**
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void removeSelectionChangedListener(
+			ISelectionChangedListener listener) {
+		selectionChangedListeners.remove(listener);
+	}
 
-    /**
-     * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to return this editor's overall selection.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public ISelection getSelection() {
-        return editorSelection;
-    }
+	/**
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to
+	 * return this editor's overall selection. <!-- begin-user-doc --> <!--
+	 * end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ISelection getSelection() {
+		return editorSelection;
+	}
 
-    /**
-     * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to set this editor's overall selection.
-     * Calling this result will notify the listeners.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setSelection(ISelection selection) {
-        editorSelection = selection;
+	/**
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to
+	 * set this editor's overall selection. Calling this result will notify the
+	 * listeners. <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setSelection(ISelection selection) {
+		editorSelection = selection;
 
-        for (ISelectionChangedListener listener : selectionChangedListeners) {
-            listener.selectionChanged(new SelectionChangedEvent(this, selection));
-        }
-        setStatusLineManager(selection);
-    }
+		for (ISelectionChangedListener listener : selectionChangedListeners) {
+			listener.selectionChanged(new SelectionChangedEvent(this, selection));
+		}
+		setStatusLineManager(selection);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setStatusLineManager(ISelection selection) {
-        IStatusLineManager statusLineManager = currentViewer != null && currentViewer == contentOutlineViewer ?
-            contentOutlineStatusLineManager : getActionBars().getStatusLineManager();
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setStatusLineManager(ISelection selection) {
+		IStatusLineManager statusLineManager = currentViewer != null
+				&& currentViewer == contentOutlineViewer ? contentOutlineStatusLineManager
+				: getActionBars().getStatusLineManager();
 
-        if (statusLineManager != null) {
-            if (selection instanceof IStructuredSelection) {
-                Collection<?> collection = ((IStructuredSelection)selection).toList();
-                switch (collection.size()) {
-                    case 0: {
-                        statusLineManager.setMessage(getString("_UI_NoObjectSelected"));
-                        break;
-                    }
-                    case 1: {
-                        String text = new AdapterFactoryItemDelegator(adapterFactory).getText(collection.iterator().next());
-                        statusLineManager.setMessage(getString("_UI_SingleObjectSelected", text));
-                        break;
-                    }
-                    default: {
-                        statusLineManager.setMessage(getString("_UI_MultiObjectSelected", Integer.toString(collection.size())));
-                        break;
-                    }
-                }
-            }
-            else {
-                statusLineManager.setMessage("");
-            }
-        }
-    }
+		if (statusLineManager != null) {
+			if (selection instanceof IStructuredSelection) {
+				Collection<?> collection = ((IStructuredSelection) selection)
+						.toList();
+				switch (collection.size()) {
+				case 0: {
+					statusLineManager
+							.setMessage(getString("_UI_NoObjectSelected"));
+					break;
+				}
+				case 1: {
+					String text = new AdapterFactoryItemDelegator(
+							adapterFactory).getText(collection.iterator()
+							.next());
+					statusLineManager.setMessage(getString(
+							"_UI_SingleObjectSelected", text));
+					break;
+				}
+				default: {
+					statusLineManager.setMessage(getString(
+							"_UI_MultiObjectSelected",
+							Integer.toString(collection.size())));
+					break;
+				}
+				}
+			} else {
+				statusLineManager.setMessage("");
+			}
+		}
+	}
 
-    /**
-     * This looks up a string in the plugin's plugin.properties file.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    private static String getString(String key) {
-        return ADataEditorPlugin.INSTANCE.getString(key);
-    }
+	/**
+	 * This looks up a string in the plugin's plugin.properties file. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static String getString(String key) {
+		return ADataEditorPlugin.INSTANCE.getString(key);
+	}
 
-    /**
-     * This looks up a string in plugin.properties, making a substitution.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    private static String getString(String key, Object s1) {
-        return ADataEditorPlugin.INSTANCE.getString(key, new Object [] { s1 });
-    }
+	/**
+	 * This looks up a string in plugin.properties, making a substitution. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static String getString(String key, Object s1) {
+		return ADataEditorPlugin.INSTANCE.getString(key, new Object[] { s1 });
+	}
 
-    /**
-     * This implements {@link org.eclipse.jface.action.IMenuListener} to help fill the context menus with contributions from the Edit menu.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void menuAboutToShow(IMenuManager menuManager) {
-        ((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
-    }
+	/**
+	 * This implements {@link org.eclipse.jface.action.IMenuListener} to help
+	 * fill the context menus with contributions from the Edit menu. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void menuAboutToShow(IMenuManager menuManager) {
+		((IMenuListener) getEditorSite().getActionBarContributor())
+				.menuAboutToShow(menuManager);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EditingDomainActionBarContributor getActionBarContributor() {
-        return (EditingDomainActionBarContributor)getEditorSite().getActionBarContributor();
-    }
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EditingDomainActionBarContributor getActionBarContributor() {
+		return (EditingDomainActionBarContributor) getEditorSite()
+				.getActionBarContributor();
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public IActionBars getActionBars() {
-        return getActionBarContributor().getActionBars();
-    }
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IActionBars getActionBars() {
+		return getActionBarContributor().getActionBars();
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public AdapterFactory getAdapterFactory() {
-        return adapterFactory;
-    }
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AdapterFactory getAdapterFactory() {
+		return adapterFactory;
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public void dispose() {
-        updateProblemIndication = false;
+	/**
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void dispose() {
+		updateProblemIndication = false;
 
-        ResourcesPlugin.getWorkspace().removeResourceChangeListener(resourceChangeListener);
+		ResourcesPlugin.getWorkspace().removeResourceChangeListener(
+				resourceChangeListener);
 
-        getSite().getPage().removePartListener(partListener);
+		getSite().getPage().removePartListener(partListener);
 
-        adapterFactory.dispose();
+		adapterFactory.dispose();
 
-        if (getActionBarContributor().getActiveEditor() == this) {
-            getActionBarContributor().setActiveEditor(null);
-        }
+		if (getActionBarContributor().getActiveEditor() == this) {
+			getActionBarContributor().setActiveEditor(null);
+		}
 
-        if (propertySheetPage != null) {
-            propertySheetPage.dispose();
-        }
+		if (propertySheetPage != null) {
+			propertySheetPage.dispose();
+		}
 
-        if (contentOutlinePage != null) {
-            contentOutlinePage.dispose();
-        }
+		if (contentOutlinePage != null) {
+			contentOutlinePage.dispose();
+		}
 
-        super.dispose();
-    }
+		super.dispose();
+	}
 
-    /**
-     * Returns whether the outline view should be presented to the user.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    protected boolean showOutlineView() {
-        return true;
-    }
+	/**
+	 * Returns whether the outline view should be presented to the user. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected boolean showOutlineView() {
+		return true;
+	}
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/META-INF/MANIFEST.MF b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/META-INF/MANIFEST.MF
index 26a1121..d305e5c 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/META-INF/MANIFEST.MF
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/META-INF/MANIFEST.MF
@@ -12,6 +12,5 @@
  org.eclipse.amp.amf.adata.util
 Require-Bundle: org.eclipse.core.runtime,
  org.eclipse.emf.ecore;visibility:=reexport,
- org.eclipse.amp.amf.abase;visibility:=reexport,
  org.eclipse.amp.amf.acore;visibility:=reexport
 Bundle-ActivationPolicy: lazy
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/build.properties b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/build.properties
index 833bb2b..9355b0e 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/build.properties
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/build.properties
@@ -5,7 +5,6 @@
 # $Id: build.properties,v 1.3 2010/08/04 01:54:19 mparker Exp $
 
 bin.includes = .,\
-               model/,\
                META-INF/,\
                plugin.xml,\
                plugin.properties
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/AData.xsd b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/AData.xsd
deleted file mode 100644
index 7c60b92..0000000
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/AData.xsd
+++ /dev/null
@@ -1,60 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<xsd:schema xmlns:adata="http://eclipse.org/amp/amf/AData" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:metaabm="http://metaabm.org/structure" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ecore:nsPrefix="adata" ecore:package="org.eclipse.amp.amf.adata" targetNamespace="http://eclipse.org/amp/amf/AData">
-  <xsd:import namespace="http://www.eclipse.org/emf/2002/Ecore" schemaLocation="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.xsd"/>
-  <xsd:import namespace="http://metaabm.org/structure" schemaLocation="metaabm.xsd"/>
-  <xsd:element ecore:ignore="true" name="Run" type="adata:Run"/>
-  <xsd:element ecore:ignore="true" name="Parameter" type="adata:Parameter"/>
-  <xsd:element ecore:ignore="true" name="DataPoint" type="adata:DataPoint"/>
-  <xsd:element ecore:ignore="true" name="Catalog" type="adata:Catalog"/>
-  <xsd:element ecore:ignore="true" name="Measurement" type="adata:Measurement"/>
-  <xsd:element ecore:ignore="true" name="ParameterSet" type="adata:ParameterSet"/>
-  <xsd:complexType name="Run">
-    <xsd:sequence>
-      <xsd:element ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="parameterSets" type="adata:ParameterSet"/>
-      <xsd:element ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="measurements" type="adata:Measurement"/>
-    </xsd:sequence>
-    <xsd:attribute ecore:reference="metaabm:SContext" name="model" type="xsd:anyURI" use="required"/>
-    <xsd:attribute name="started" type="ecore:EDate"/>
-    <xsd:attribute name="finished" type="ecore:EDate"/>
-    <xsd:attribute ecore:opposite="run" ecore:ordered="false" ecore:reference="adata:DataPoint" name="entries" type="xsd:IDREFS"/>
-    <xsd:attribute name="name" type="ecore:EString" use="required"/>
-  </xsd:complexType>
-  <xsd:complexType name="Parameter">
-    <xsd:attribute name="attribute" type="ecore:EString" use="required"/>
-    <xsd:attribute name="value" type="ecore:EString" use="required"/>
-  </xsd:complexType>
-  <xsd:complexType name="DataPoint">
-    <xsd:attribute ecore:unsettable="false" name="period" type="ecore:ELong"/>
-    <xsd:attribute ecore:unsettable="false" name="value" type="ecore:EDouble"/>
-    <xsd:attribute ecore:opposite="entries" ecore:reference="adata:Run" name="run" type="xsd:anyURI"/>
-    <xsd:attribute ecore:reference="adata:Measurement" name="measure" type="xsd:anyURI"/>
-  </xsd:complexType>
-  <xsd:complexType name="Catalog">
-    <xsd:sequence>
-      <xsd:element ecore:ordered="false" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="entries" type="adata:DataPoint"/>
-      <xsd:element ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="runs" type="adata:Run"/>
-    </xsd:sequence>
-  </xsd:complexType>
-  <xsd:complexType name="Measurement">
-    <xsd:attribute ecore:unsettable="false" name="measure" type="adata:ScaleType"/>
-    <xsd:attribute name="attribute" type="ecore:EString" use="required"/>
-  </xsd:complexType>
-  <xsd:simpleType name="ScaleType">
-    <xsd:restriction base="xsd:string">
-      <xsd:enumeration ecore:name="Count" ecore:value="1" value="COUNT"/>
-      <xsd:enumeration ecore:name="Sum" ecore:value="2" value="SUM"/>
-      <xsd:enumeration ecore:name="Average" ecore:value="3" value="AVERAGE"/>
-      <xsd:enumeration ecore:name="Minimum" ecore:value="4" value="MINIMUM"/>
-      <xsd:enumeration ecore:name="Maximum" ecore:value="5" value="MAXIMUM"/>
-      <xsd:enumeration ecore:name="StandardDeviation" ecore:value="6" value="STAMDARD_DEVIATION"/>
-      <xsd:enumeration ecore:name="Variance" ecore:value="7" value="VARIANCE"/>
-      <xsd:enumeration ecore:name="Custom" ecore:value="1000" value="CUSTOM"/>
-      <xsd:enumeration ecore:name="single" ecore:value="0" value="Single"/>
-    </xsd:restriction>
-  </xsd:simpleType>
-  <xsd:complexType name="ParameterSet">
-    <xsd:sequence>
-      <xsd:element ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="members" type="adata:Parameter"/>
-    </xsd:sequence>
-  </xsd:complexType>
-</xsd:schema>
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/metaabm.act.xsd b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/metaabm.act.xsd
deleted file mode 100644
index 4bcd1e1..0000000
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/metaabm.act.xsd
+++ /dev/null
@@ -1,395 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<xsd:schema xmlns:act="http://metaabm.org/act" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:function="http://metaabm.org/function" xmlns:metaabm="http://metaabm.org/structure" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ecore:nsPrefix="act" ecore:package="org.metaabm.act" targetNamespace="http://metaabm.org/act">
-  <xsd:import namespace="http://metaabm.org/function" schemaLocation="metaabm.function.xsd"/>
-  <xsd:import namespace="http://www.eclipse.org/emf/2002/Ecore" schemaLocation="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.xsd"/>
-  <xsd:import namespace="http://metaabm.org/structure" schemaLocation="metaabm.xsd"/>
-  <xsd:element ecore:ignore="true" name="AInput" type="act:AInput"/>
-  <xsd:element ecore:ignore="true" name="ALiteral" type="act:ALiteral"/>
-  <xsd:element ecore:ignore="true" name="AMultiValue" type="act:AMultiValue"/>
-  <xsd:element ecore:ignore="true" name="AShaped" type="act:AShaped"/>
-  <xsd:element ecore:ignore="true" name="AAct" type="act:AAct"/>
-  <xsd:element ecore:ignore="true" name="AControl" type="act:AControl"/>
-  <xsd:element ecore:ignore="true" name="ARoot" type="act:ARoot"/>
-  <xsd:element ecore:ignore="true" name="AGroup" type="act:AGroup"/>
-  <xsd:element ecore:ignore="true" name="ASchedule" type="act:ASchedule"/>
-  <xsd:element ecore:ignore="true" name="ARule" type="act:ARule"/>
-  <xsd:element ecore:ignore="true" name="ABuild" type="act:ABuild"/>
-  <xsd:element ecore:ignore="true" name="AInitialize" type="act:AInitialize"/>
-  <xsd:element ecore:ignore="true" name="AMethod" type="act:AMethod"/>
-  <xsd:element ecore:ignore="true" name="ASink" type="act:ASink"/>
-  <xsd:element ecore:ignore="true" name="ALogic" type="act:ALogic"/>
-  <xsd:element ecore:ignore="true" name="AAny" type="act:AAny"/>
-  <xsd:element ecore:ignore="true" name="AAll" type="act:AAll"/>
-  <xsd:element ecore:ignore="true" name="ANone" type="act:ANone"/>
-  <xsd:element ecore:ignore="true" name="AQuery" type="act:AQuery"/>
-  <xsd:element ecore:ignore="true" name="AEvaluate" type="act:AEvaluate"/>
-  <xsd:element ecore:ignore="true" name="AAccessor" type="act:AAccessor"/>
-  <xsd:element ecore:ignore="true" name="AWatch" type="act:AWatch"/>
-  <xsd:element ecore:ignore="true" name="ASet" type="act:ASet"/>
-  <xsd:element ecore:ignore="true" name="ACreateAgents" type="act:ACreateAgents"/>
-  <xsd:element ecore:ignore="true" name="ACreateShapedAgents" type="act:ACreateShapedAgents"/>
-  <xsd:element ecore:ignore="true" name="ALoadAgents" type="act:ALoadAgents"/>
-  <xsd:element ecore:ignore="true" name="ALoadShapedAgents" type="act:ALoadShapedAgents"/>
-  <xsd:element ecore:ignore="true" name="ABuildProjection" type="act:ABuildProjection"/>
-  <xsd:element ecore:ignore="true" name="ABuildNetwork" type="act:ABuildNetwork"/>
-  <xsd:element ecore:ignore="true" name="ABuildSpace" type="act:ABuildSpace"/>
-  <xsd:element ecore:ignore="true" name="ABuildGeography" type="act:ABuildGeography"/>
-  <xsd:element ecore:ignore="true" name="ABuildGrid" type="act:ABuildGrid"/>
-  <xsd:element ecore:ignore="true" name="ASelect" type="act:ASelect"/>
-  <xsd:element ecore:ignore="true" name="AMove" type="act:AMove"/>
-  <xsd:element ecore:ignore="true" name="ATransform" type="act:ATransform"/>
-  <xsd:element ecore:ignore="true" name="ALeave" type="act:ALeave"/>
-  <xsd:element ecore:ignore="true" name="ADie" type="act:ADie"/>
-  <xsd:element ecore:ignore="true" name="AConnect" type="act:AConnect"/>
-  <xsd:element ecore:ignore="true" name="ANetwork" type="act:ANetwork"/>
-  <xsd:element ecore:ignore="true" name="ADisconnect" type="act:ADisconnect"/>
-  <xsd:element ecore:ignore="true" name="AReplace" type="act:AReplace"/>
-  <xsd:element ecore:ignore="true" name="ACommand" type="act:ACommand"/>
-  <xsd:complexType name="AInput">
-    <xsd:sequence>
-      <xsd:element ecore:resolveProxies="true" minOccurs="0" name="literal" type="act:ALiteral"/>
-    </xsd:sequence>
-    <xsd:attribute ecore:opposite="inputs" ecore:reference="act:ASink" name="sink" type="xsd:anyURI" use="required"/>
-    <xsd:attribute ecore:reference="act:ASelect" name="selected" type="xsd:anyURI"/>
-    <xsd:attribute ecore:reference="metaabm:IValue" name="value" type="xsd:anyURI"/>
-  </xsd:complexType>
-  <xsd:complexType name="ALiteral">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:IValue">
-        <xsd:attribute name="valueLiteral" type="ecore:EString" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="AMultiValue">
-    <xsd:complexContent>
-      <xsd:extension base="act:ALiteral">
-        <xsd:attribute ecore:reference="metaabm:IValue" name="values">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="AShaped">
-    <xsd:attribute ecore:default="POINT" ecore:unsettable="false" name="shape" type="metaabm:SShapeType" use="required"/>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:implements="metaabm:IAct" name="AAct">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:IID">
-        <xsd:attribute ecore:opposite="targets" ecore:reference="act:AAct" name="sources">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-        <xsd:attribute ecore:opposite="sources" ecore:reference="act:AAct" name="targets">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-        <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:lowerBound="1" ecore:reference="metaabm:SAgent" ecore:transient="true" ecore:volatile="true" name="reference" type="xsd:anyURI"/>
-        <xsd:attribute ecore:opposite="members" ecore:reference="act:AGroup" name="group" type="xsd:anyURI"/>
-        <xsd:attribute ecore:reference="act:ASelect" name="selected" type="xsd:anyURI"/>
-        <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="act:AAct" ecore:transient="true" ecore:volatile="true" name="allSources">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-        <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="act:AAct" ecore:transient="true" ecore:volatile="true" name="allTargets">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-        <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="act:ASelect" ecore:transient="true" ecore:volatile="true" name="rootSelected" type="xsd:anyURI"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:interface="true" name="AControl">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAct"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:interface="true" name="ARoot">
-    <xsd:complexContent>
-      <xsd:extension base="act:ASelect"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:SNamed" name="AGroup">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAct">
-        <xsd:sequence>
-          <xsd:element ecore:keys="ID" ecore:opposite="group" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="members" type="act:AAct"/>
-        </xsd:sequence>
-        <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="act:AAct" ecore:transient="true" ecore:volatile="true" name="roots">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:SNamed" name="ASchedule">
-    <xsd:complexContent>
-      <xsd:extension base="act:ARoot">
-        <xsd:attribute ecore:unsettable="false" name="start" type="ecore:EInt">
-          <xsd:annotation>
-            <xsd:documentation>The first iteration in which to execute the activity.</xsd:documentation>
-          </xsd:annotation>
-        </xsd:attribute>
-        <xsd:attribute ecore:unsettable="false" name="interval" type="ecore:EInt">
-          <xsd:annotation>
-            <xsd:documentation>Specifies the interval. If &gt; 0, then the method is scheduled to repeat at the specified interval. Otherwise, method is scheduled for one time execution. Default is 0 meaning by default the method will only execute once.</xsd:documentation>
-          </xsd:annotation>
-        </xsd:attribute>
-        <xsd:attribute ecore:unsettable="false" name="priority" type="ecore:EInt">
-          <xsd:annotation>
-            <xsd:documentation>Priority w/r to other actions scheduled for the same tick. Default is [currently unspecified].</xsd:documentation>
-          </xsd:annotation>
-        </xsd:attribute>
-        <xsd:attribute ecore:unsettable="false" name="pick" type="ecore:EInt">
-          <xsd:annotation>
-            <xsd:documentation>How many ticks the action can execute in the background while the tick count
- progresses. Default is no duration [-1] meaning the method must finish execution before the next scheduled action can execute.</xsd:documentation>
-          </xsd:annotation>
-        </xsd:attribute>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:SNamed" name="ARule">
-    <xsd:complexContent>
-      <xsd:extension base="act:ARoot"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:SNamed" name="ABuild">
-    <xsd:complexContent>
-      <xsd:extension base="act:ARoot"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:SNamed" name="AInitialize">
-    <xsd:complexContent>
-      <xsd:extension base="act:ARoot"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:SNamed" name="AMethod">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAct">
-        <xsd:attribute name="body" type="ecore:EString"/>
-        <xsd:attribute default="true" ecore:unsettable="false" name="generate" type="ecore:EBoolean"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:implements="metaabm:IValue" name="ASink">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAct">
-        <xsd:sequence>
-          <xsd:element ecore:opposite="sink" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="inputs" type="act:AInput"/>
-        </xsd:sequence>
-        <xsd:attribute ecore:reference="function:FFunction" name="function" type="xsd:anyURI" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:interface="true" name="ALogic">
-    <xsd:complexContent>
-      <xsd:extension base="act:AControl"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="AAny">
-    <xsd:complexContent>
-      <xsd:extension base="act:ALogic"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="AAll">
-    <xsd:complexContent>
-      <xsd:extension base="act:ALogic"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ANone">
-    <xsd:complexContent>
-      <xsd:extension base="act:ALogic"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="act:AControl" name="AQuery">
-    <xsd:complexContent>
-      <xsd:extension base="act:ASink"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="AEvaluate">
-    <xsd:complexContent>
-      <xsd:extension base="act:ASink"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="AAccessor">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAct">
-        <xsd:attribute ecore:reference="metaabm:SAttribute" name="attribute" type="xsd:anyURI" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="act:ARoot" name="AWatch">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAccessor"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="act:ACommand" name="ASet">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAccessor">
-        <xsd:attribute ecore:reference="metaabm:IValue" name="parameter" type="xsd:anyURI" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ACreateAgents">
-    <xsd:complexContent>
-      <xsd:extension base="act:ASelect">
-        <xsd:attribute ecore:reference="metaabm:IValue" name="agentCount" type="xsd:anyURI"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="act:AShaped" name="ACreateShapedAgents">
-    <xsd:complexContent>
-      <xsd:extension base="act:ACreateAgents"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ALoadAgents">
-    <xsd:complexContent>
-      <xsd:extension base="act:ACreateAgents">
-        <xsd:attribute name="sourceURL" type="ecore:EString" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="act:AShaped" name="ALoadShapedAgents">
-    <xsd:complexContent>
-      <xsd:extension base="act:ALoadAgents"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:implements="metaabm:SNamed" name="ABuildProjection">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAct">
-        <xsd:attribute ecore:reference="metaabm:SAgent" name="agents">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-        <xsd:attribute ecore:reference="metaabm:SProjection" name="projection" type="xsd:anyURI" use="required"/>
-        <xsd:attribute ecore:reference="metaabm:SAttribute" name="attributes">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ABuildNetwork">
-    <xsd:complexContent>
-      <xsd:extension base="act:ABuildProjection">
-        <xsd:attribute ecore:unsettable="false" name="networkType" type="act:ABuildNetworkTypes" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ABuildSpace">
-    <xsd:complexContent>
-      <xsd:extension base="act:ABuildProjection">
-        <xsd:attribute ecore:unsettable="false" name="spaceType" type="act:ABuildSpaceTypes" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ABuildGeography">
-    <xsd:complexContent>
-      <xsd:extension base="act:ABuildProjection"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ABuildGrid">
-    <xsd:complexContent>
-      <xsd:extension base="act:ABuildSpace">
-        <xsd:attribute ecore:reference="metaabm:SAgent" name="fillAgent" type="xsd:anyURI"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:simpleType name="ABuildSpaceTypes">
-    <xsd:restriction base="xsd:string">
-      <xsd:enumeration ecore:name="Random" ecore:value="10" value="RANDOM"/>
-      <xsd:enumeration ecore:name="RandomAroundPoint" ecore:value="20" value="RANDOM_POINT"/>
-      <xsd:enumeration ecore:name="File" ecore:value="30" value="FILE"/>
-    </xsd:restriction>
-  </xsd:simpleType>
-  <xsd:simpleType name="ABuildNetworkTypes">
-    <xsd:restriction base="xsd:string">
-      <xsd:enumeration value="Barabasi"/>
-      <xsd:enumeration value="ErdosRenyi"/>
-      <xsd:enumeration value="EppsteinPowerLaw"/>
-      <xsd:enumeration value="GraphML"/>
-      <xsd:enumeration value="KleinbergSmallWorld"/>
-      <xsd:enumeration value="Lattice1D"/>
-      <xsd:enumeration value="Lattice2D"/>
-      <xsd:enumeration value="Pajek"/>
-      <xsd:enumeration value="RandomDensity"/>
-      <xsd:enumeration value="WattsSmallWorld"/>
-      <xsd:enumeration value="ASCIIMatrix"/>
-    </xsd:restriction>
-  </xsd:simpleType>
-  <xsd:complexType ecore:implements="metaabm:IID" name="ASelect">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAct">
-        <xsd:attribute ecore:reference="metaabm:SAgent" name="agent" type="xsd:anyURI"/>
-        <xsd:attribute ecore:reference="metaabm:SProjection" name="space" type="xsd:anyURI"/>
-        <xsd:attribute ecore:unsettable="false" name="for" type="act:ASelectTypes" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="AMove">
-    <xsd:complexContent>
-      <xsd:extension base="act:ATransform"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:simpleType name="ASelectTypes">
-    <xsd:restriction base="xsd:string">
-      <xsd:enumeration ecore:name="One" ecore:value="10" value="ONE"/>
-      <xsd:enumeration ecore:name="All" ecore:value="20" value="ALL"/>
-    </xsd:restriction>
-  </xsd:simpleType>
-  <xsd:complexType abstract="true" name="ATransform">
-    <xsd:complexContent>
-      <xsd:extension base="act:ACommand">
-        <xsd:attribute ecore:reference="act:ASelect" name="destination" type="xsd:anyURI" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ALeave">
-    <xsd:complexContent>
-      <xsd:extension base="act:ATransform"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ADie">
-    <xsd:complexContent>
-      <xsd:extension base="act:ATransform"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="AConnect">
-    <xsd:complexContent>
-      <xsd:extension base="act:ANetwork">
-        <xsd:attribute default="true" ecore:unsettable="false" name="directed" type="ecore:EBoolean"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="ANetwork">
-    <xsd:complexContent>
-      <xsd:extension base="act:ATransform">
-        <xsd:attribute ecore:reference="metaabm:SNetwork" name="within" type="xsd:anyURI" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="ADisconnect">
-    <xsd:complexContent>
-      <xsd:extension base="act:ANetwork"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="AReplace">
-    <xsd:complexContent>
-      <xsd:extension base="act:AConnect"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="ACommand">
-    <xsd:complexContent>
-      <xsd:extension base="act:AAct"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-</xsd:schema>
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/metaabm.function.xsd b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/metaabm.function.xsd
deleted file mode 100644
index 438a79e..0000000
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/metaabm.function.xsd
+++ /dev/null
@@ -1,99 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<xsd:schema xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:function="http://metaabm.org/function" xmlns:metaabm="http://metaabm.org/structure" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ecore:nsPrefix="function" ecore:package="org.metaabm.function" targetNamespace="http://metaabm.org/function">
-  <xsd:import namespace="http://www.eclipse.org/emf/2002/Ecore" schemaLocation="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.xsd"/>
-  <xsd:import namespace="http://metaabm.org/structure" schemaLocation="metaabm.xsd"/>
-  <xsd:element ecore:ignore="true" name="FArgumentPrototype" type="function:FArgumentPrototype"/>
-  <xsd:element ecore:ignore="true" name="FArgumentArrayPrototype" type="function:FArgumentArrayPrototype"/>
-  <xsd:element ecore:ignore="true" name="FFunction" type="function:FFunction"/>
-  <xsd:element ecore:ignore="true" name="FLogical" type="function:FLogical"/>
-  <xsd:element ecore:ignore="true" name="FOperator" type="function:FOperator"/>
-  <xsd:element ecore:ignore="true" name="FLogicalOperator" type="function:FLogicalOperator"/>
-  <xsd:element ecore:ignore="true" name="FGeneric" type="function:FGeneric"/>
-  <xsd:element ecore:ignore="true" name="FGenericFunction" type="function:FGenericFunction"/>
-  <xsd:element ecore:ignore="true" name="FGenericLogical" type="function:FGenericLogical"/>
-  <xsd:element ecore:ignore="true" name="FLibrary" type="function:FLibrary"/>
-  <xsd:element ecore:ignore="true" name="FImplementedLibrary" type="function:FImplementedLibrary"/>
-  <xsd:element ecore:ignore="true" name="FMultiArgumentPrototype" type="function:FMultiArgumentPrototype"/>
-  <xsd:complexType ecore:implements="metaabm:SNamed" name="FArgumentPrototype">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:ITyped">
-        <xsd:attribute ecore:opposite="inputPrototypes" ecore:reference="function:FFunction" name="inputFunction" type="xsd:anyURI"/>
-        <xsd:attribute ecore:opposite="outputPrototypes" ecore:reference="function:FGenericFunction" name="outputFunction" type="xsd:IDREF"/>
-        <xsd:attribute ecore:unsettable="false" name="optional" type="ecore:EBoolean"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:ITypedArray" name="FArgumentArrayPrototype">
-    <xsd:complexContent>
-      <xsd:extension base="function:FArgumentPrototype"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="FFunction">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:IID">
-        <xsd:sequence>
-          <xsd:element ecore:derived="true" ecore:transient="true" ecore:unique="true" ecore:volatile="true" maxOccurs="unbounded" minOccurs="0" name="availableTypes" type="metaabm:SAttributeType"/>
-          <xsd:element ecore:opposite="inputFunction" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="inputPrototypes" type="function:FArgumentPrototype"/>
-        </xsd:sequence>
-        <xsd:attribute ecore:derived="true" ecore:lowerBound="1" ecore:transient="true" ecore:unsettable="false" ecore:volatile="true" name="multiValue" type="ecore:EBoolean"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:interface="true" name="FLogical">
-    <xsd:complexContent>
-      <xsd:extension base="function:FFunction"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:SNamed" name="FOperator">
-    <xsd:complexContent>
-      <xsd:extension base="function:FFunction">
-        <xsd:attribute name="symbol" type="ecore:EString"/>
-        <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:lowerBound="1" ecore:transient="true" ecore:unsettable="false" ecore:volatile="true" name="arity" type="ecore:EInt"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="function:FLogical" name="FLogicalOperator">
-    <xsd:complexContent>
-      <xsd:extension base="function:FOperator"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:implements="metaabm:SNamed" name="FGeneric">
-    <xsd:complexContent>
-      <xsd:extension base="function:FFunction"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="function:FFunction" name="FGenericFunction">
-    <xsd:complexContent>
-      <xsd:extension base="function:FGeneric">
-        <xsd:sequence>
-          <xsd:element ecore:opposite="outputFunction" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="outputPrototypes" type="function:FArgumentPrototype"/>
-        </xsd:sequence>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="function:FLogical" name="FGenericLogical">
-    <xsd:complexContent>
-      <xsd:extension base="function:FGeneric"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:IArtifact" name="FLibrary">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SNamed">
-        <xsd:sequence>
-          <xsd:element ecore:keys="ID" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="functions" type="function:FFunction"/>
-          <xsd:element ecore:keys="ID" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="subs" type="function:FLibrary"/>
-        </xsd:sequence>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="function:FLibrary" name="FImplementedLibrary">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SImplemented"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="FMultiArgumentPrototype">
-    <xsd:complexContent>
-      <xsd:extension base="function:FArgumentPrototype"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-</xsd:schema>
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/metaabm.xsd b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/metaabm.xsd
deleted file mode 100644
index 3bf57fc..0000000
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/metaabm.xsd
+++ /dev/null
@@ -1,309 +0,0 @@
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
-<xsd:schema xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:metaabm="http://metaabm.org/structure" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ecore:nsPrefix="metaabm" ecore:package="org.metaabm" targetNamespace="http://metaabm.org/structure">
-  <xsd:import namespace="http://www.eclipse.org/emf/2002/Ecore" schemaLocation="platform:/plugin/org.eclipse.emf.ecore/model/Ecore.xsd"/>
-  <xsd:element ecore:ignore="true" name="IID" type="metaabm:IID"/>
-  <xsd:element ecore:ignore="true" name="ITyped" type="metaabm:ITyped"/>
-  <xsd:element ecore:ignore="true" name="ITypedArray" type="metaabm:ITypedArray"/>
-  <xsd:element ecore:ignore="true" name="IValue" type="metaabm:IValue"/>
-  <xsd:element ecore:ignore="true" name="IArtifact" type="metaabm:IArtifact"/>
-  <xsd:element ecore:ignore="true" name="IAct" type="metaabm:IAct"/>
-  <xsd:element ecore:ignore="true" name="SNamed" type="metaabm:SNamed"/>
-  <xsd:element ecore:ignore="true" name="SAttributed" type="metaabm:SAttributed"/>
-  <xsd:element ecore:ignore="true" name="SActable" type="metaabm:SActable"/>
-  <xsd:element ecore:ignore="true" name="SAttribute" type="metaabm:SAttribute"/>
-  <xsd:element ecore:ignore="true" name="SAttributeArray" type="metaabm:SAttributeArray"/>
-  <xsd:element ecore:ignore="true" name="SState" type="metaabm:SState"/>
-  <xsd:element ecore:ignore="true" name="SStateValue" type="metaabm:SStateValue"/>
-  <xsd:element ecore:ignore="true" name="SAgent" type="metaabm:SAgent"/>
-  <xsd:element ecore:ignore="true" name="SContext" type="metaabm:SContext"/>
-  <xsd:element ecore:ignore="true" name="SProjection" type="metaabm:SProjection"/>
-  <xsd:element ecore:ignore="true" name="SNDimensional" type="metaabm:SNDimensional"/>
-  <xsd:element ecore:ignore="true" name="SContinuousSpace" type="metaabm:SContinuousSpace"/>
-  <xsd:element ecore:ignore="true" name="SGrid" type="metaabm:SGrid"/>
-  <xsd:element ecore:ignore="true" name="SNetwork" type="metaabm:SNetwork"/>
-  <xsd:element ecore:ignore="true" name="SGeography" type="metaabm:SGeography"/>
-  <xsd:element ecore:ignore="true" name="SValueLayer" type="metaabm:SValueLayer"/>
-  <xsd:element ecore:ignore="true" name="SStyle" type="metaabm:SStyle"/>
-  <xsd:element ecore:ignore="true" name="SStyle2D" type="metaabm:SStyle2D"/>
-  <xsd:element ecore:ignore="true" name="SStyleShape" type="metaabm:SStyleShape"/>
-  <xsd:element ecore:ignore="true" name="SStyle3D" type="metaabm:SStyle3D"/>
-  <xsd:element ecore:ignore="true" name="SImplemented" type="metaabm:SImplemented"/>
-  <xsd:element ecore:ignore="true" name="SImplementation" type="metaabm:SImplementation"/>
-  <xsd:complexType abstract="true" name="IID">
-    <xsd:attribute name="label" type="ecore:EString" use="required"/>
-    <xsd:attribute ecore:name="ID" name="ID" type="ecore:EString" use="required"/>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:interface="true" name="ITyped">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:IID">
-        <xsd:attribute ecore:default="INTEGER" ecore:unsettable="false" name="sType" type="metaabm:SAttributeType" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:interface="true" name="ITypedArray">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:ITyped">
-        <xsd:attribute ecore:unsettable="false" name="size" type="ecore:EInt"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:interface="true" name="IValue">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:IID">
-        <xsd:sequence>
-          <xsd:element ecore:derived="true" ecore:transient="true" ecore:unique="true" ecore:volatile="true" maxOccurs="unbounded" minOccurs="0" name="availableTypes" type="metaabm:SAttributeType"/>
-        </xsd:sequence>
-        <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="xsd:anyType" ecore:transient="true" ecore:volatile="true" name="accessors" type="xsd:IDREFS"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:interface="true" name="IArtifact">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:IID"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:interface="true" name="IAct">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:IID"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="SNamed">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:IID">
-        <xsd:attribute name="pluralLabel" type="ecore:EString"/>
-        <xsd:attribute name="description" type="ecore:EString"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="SAttributed">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SNamed">
-        <xsd:sequence>
-          <xsd:element ecore:keys="ID" ecore:opposite="owner" ecore:ordered="false" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="attributes" type="metaabm:SAttribute"/>
-        </xsd:sequence>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="SActable">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SAttributed">
-        <xsd:sequence>
-          <xsd:element ecore:keys="ID" ecore:resolveProxies="true" minOccurs="0" name="rootActivity" type="metaabm:IAct"/>
-        </xsd:sequence>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:IValue metaabm:ITyped" name="SAttribute">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SNamed">
-        <xsd:attribute ecore:opposite="attributes" ecore:reference="metaabm:SAttributed" name="owner" type="xsd:anyURI" use="required"/>
-        <xsd:attribute ecore:unsettable="false" name="gatherData" type="ecore:EBoolean"/>
-        <xsd:attribute name="defaultValue" type="ecore:EString"/>
-        <xsd:attribute name="units" type="ecore:EString"/>
-        <xsd:attribute ecore:default="false" ecore:unsettable="false" name="immutable" type="ecore:EBoolean" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:ITypedArray" name="SAttributeArray">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SAttribute"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:simpleType name="SAttributeType">
-    <xsd:restriction base="xsd:string">
-      <xsd:enumeration ecore:name="Boolean" ecore:value="100" value="BOOLEAN"/>
-      <xsd:enumeration ecore:name="Integer" ecore:value="101" value="INTEGER"/>
-      <xsd:enumeration ecore:name="Real" ecore:value="150" value="REAL"/>
-      <xsd:enumeration ecore:name="Symbol" ecore:value="200" value="SYMBOL"/>
-      <xsd:enumeration ecore:name="Undefined" ecore:value="0" value="UNDEFINED"/>
-      <xsd:enumeration ecore:name="Numeric" ecore:value="110" value="NUMERIC"/>
-    </xsd:restriction>
-  </xsd:simpleType>
-  <xsd:complexType name="SState">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SAttribute">
-        <xsd:sequence>
-          <xsd:element ecore:opposite="set" ecore:resolveProxies="true" maxOccurs="unbounded" name="options" type="metaabm:SStateValue"/>
-        </xsd:sequence>
-        <xsd:attribute ecore:reference="metaabm:SStateValue" name="defaultOption" type="xsd:anyURI"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:IValue" name="SStateValue">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SNamed">
-        <xsd:attribute ecore:opposite="options" ecore:reference="metaabm:SState" name="set" type="xsd:anyURI" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType ecore:implements="metaabm:SImplemented" name="SAgent">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SActable">
-        <xsd:sequence>
-          <xsd:element ecore:keys="ID" ecore:opposite="agent" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="styles" type="metaabm:SStyle"/>
-        </xsd:sequence>
-        <xsd:attribute ecore:opposite="agents" ecore:reference="metaabm:SContext" name="owner" type="xsd:anyURI"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="SContext">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SAgent">
-        <xsd:sequence>
-          <xsd:element ecore:keys="ID" ecore:opposite="owner" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="agents" type="metaabm:SAgent"/>
-          <xsd:element ecore:keys="ID" ecore:opposite="owner" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="projections" type="metaabm:SProjection"/>
-          <xsd:element ecore:keys="ID" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="valueLayers" type="metaabm:SValueLayer"/>
-          <xsd:element ecore:keys="ID" ecore:resolveProxies="true" maxOccurs="unbounded" minOccurs="0" name="library" type="metaabm:IArtifact"/>
-        </xsd:sequence>
-        <xsd:attribute ecore:derived="true" ecore:reference="metaabm:SAgent" ecore:transient="true" ecore:volatile="true" name="allAgents">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-        <xsd:attribute ecore:derived="true" ecore:reference="metaabm:SContext" ecore:transient="true" ecore:volatile="true" name="allContexts">
-          <xsd:simpleType>
-            <xsd:list itemType="xsd:anyURI"/>
-          </xsd:simpleType>
-        </xsd:attribute>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:implements="metaabm:IID" name="SProjection">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SAttributed">
-        <xsd:attribute ecore:opposite="projections" ecore:reference="metaabm:SContext" name="owner" type="xsd:anyURI"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="SNDimensional">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SProjection">
-        <xsd:attribute default="0" ecore:unsettable="false" name="dimensionality" type="ecore:EInt"/>
-        <xsd:attribute default="STICKY" ecore:unsettable="false" name="borderRule" type="metaabm:SBorderRule"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:simpleType name="SBorderRule">
-    <xsd:restriction base="xsd:string">
-      <xsd:enumeration ecore:name="Sticky" ecore:value="1000" value="STICKY"/>
-      <xsd:enumeration ecore:name="Strict" ecore:value="100" value="STRICT"/>
-      <xsd:enumeration ecore:name="Bouncy" ecore:value="2000" value="BOUNCY"/>
-      <xsd:enumeration ecore:name="Periodic" ecore:value="3000" value="PERIODIC"/>
-    </xsd:restriction>
-  </xsd:simpleType>
-  <xsd:complexType name="SContinuousSpace">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SNDimensional"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="SGrid">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SNDimensional">
-        <xsd:attribute default="false" ecore:unsettable="false" name="multiOccupant" type="ecore:EBoolean"/>
-        <xsd:attribute ecore:unsettable="false" name="neighborhood" type="metaabm:SNeighborhoodType" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:simpleType name="SNeighborhoodType">
-    <xsd:restriction base="xsd:string">
-      <xsd:enumeration ecore:name="Euclidian" ecore:value="10" value="EUCLIDIAN"/>
-      <xsd:enumeration ecore:name="Moore" ecore:value="20" value="MOORE"/>
-      <xsd:enumeration ecore:name="VonNeumann" ecore:value="30" value="VON_NEUMANN"/>
-    </xsd:restriction>
-  </xsd:simpleType>
-  <xsd:complexType name="SNetwork">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SProjection">
-        <xsd:attribute ecore:unsettable="false" name="directed" type="ecore:EBoolean"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="SGeography">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SProjection"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="SValueLayer">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SNamed"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" ecore:implements="metaabm:SImplemented" name="SStyle">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SActable">
-        <xsd:attribute ecore:opposite="styles" ecore:reference="metaabm:SAgent" name="agent" type="xsd:anyURI" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="SStyle2D">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SStyle"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="SStyleShape">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SStyle2D">
-        <xsd:attribute ecore:unsettable="false" name="shape" type="metaabm:SShapeType" use="required"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType name="SStyle3D">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:SStyle"/>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:complexType abstract="true" name="SImplemented">
-    <xsd:complexContent>
-      <xsd:extension base="metaabm:IID">
-        <xsd:sequence>
-          <xsd:element ecore:opposite="target" ecore:resolveProxies="true" name="implementation" type="metaabm:SImplementation"/>
-        </xsd:sequence>
-        <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:reference="metaabm:SImplemented" ecore:transient="true" ecore:volatile="true" name="parent" type="xsd:anyURI"/>
-      </xsd:extension>
-    </xsd:complexContent>
-  </xsd:complexType>
-  <xsd:simpleType name="SImplementationMode">
-    <xsd:restriction base="xsd:string">
-      <xsd:enumeration ecore:name="Generate" ecore:value="1000" value="GENERATE"/>
-      <xsd:enumeration ecore:name="GenerateProtected" ecore:value="1500" value="GENERATE_PROTECTED"/>
-      <xsd:enumeration ecore:name="GenerateEmpty" ecore:value="1600" value="GENERATE_EMPTY"/>
-      <xsd:enumeration ecore:name="Load" ecore:value="2000" value="LOAD"/>
-      <xsd:enumeration ecore:name="External" ecore:value="3000" value="EXTERNAL"/>
-    </xsd:restriction>
-  </xsd:simpleType>
-  <xsd:complexType name="SImplementation">
-    <xsd:attribute name="package" type="ecore:EString"/>
-    <xsd:attribute name="className" type="ecore:EString" use="required"/>
-    <xsd:attribute name="basePath" type="ecore:EString">
-      <xsd:annotation>
-        <xsd:documentation>The relative or absolute path to the base directory containing implementing code, e.g. \"../myproject\", \"/MyDrive/local/myproject\".</xsd:documentation>
-      </xsd:annotation>
-    </xsd:attribute>
-    <xsd:attribute ecore:default="GENERATE" ecore:unsettable="false" name="mode" type="metaabm:SImplementationMode" use="required"/>
-    <xsd:attribute ecore:opposite="implementation" ecore:reference="metaabm:SImplemented" name="target" type="xsd:anyURI" use="required"/>
-    <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:transient="true" ecore:volatile="true" name="qualifiedName" type="ecore:EString"/>
-    <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:transient="true" ecore:volatile="true" name="derivedPath" type="ecore:EString"/>
-    <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:transient="true" ecore:volatile="true" name="derivedPackage" type="ecore:EString"/>
-    <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:transient="true" ecore:volatile="true" name="javaFileLoc" type="ecore:EString">
-      <xsd:annotation>
-        <xsd:documentation>The precise location of any related java file, e.g. \"../projectdir/srcgen/org/foo/MyClass.java\" or \"/root/projectdir/srcgen/org/foo/MyClass.java\".</xsd:documentation>
-      </xsd:annotation>
-    </xsd:attribute>
-    <xsd:attribute default="srcgen" ecore:unsettable="false" name="srcDir" type="ecore:EString"/>
-    <xsd:attribute default="bin" ecore:unsettable="false" name="binDir" type="ecore:EString"/>
-    <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:transient="true" ecore:volatile="true" name="classFileLoc" type="ecore:EString">
-      <xsd:annotation>
-        <xsd:documentation>The precise location of any related binary class file, e.g. \"../projectdir/bin/org/foo/MyClass.class\" or \"/root/projectdir/bin/org/foo/MyClass.class\".</xsd:documentation>
-      </xsd:annotation>
-    </xsd:attribute>
-    <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:transient="true" ecore:volatile="true" name="derivedBinDir" type="ecore:EString"/>
-    <xsd:attribute ecore:changeable="false" ecore:derived="true" ecore:transient="true" ecore:volatile="true" name="derivedSrcDir" type="ecore:EString"/>
-  </xsd:complexType>
-  <xsd:simpleType name="SShapeType">
-    <xsd:restriction base="xsd:string">
-      <xsd:enumeration ecore:name="Point" ecore:value="1" value="POINT"/>
-      <xsd:enumeration ecore:name="Line" ecore:value="2" value="LINE"/>
-      <xsd:enumeration ecore:name="Polygon" ecore:value="3" value="POLYGON"/>
-    </xsd:restriction>
-  </xsd:simpleType>
-</xsd:schema>
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/AData.ecore b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/AData.ecore
similarity index 91%
rename from org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/AData.ecore
rename to org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/AData.ecore
index 7cfd484..c79faf8 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/AData.ecore
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/AData.ecore
@@ -7,15 +7,12 @@
     <eStructuralFeatures xsi:type="ecore:EReference" name="model" lowerBound="1" eType="ecore:EClass ../../org.eclipse.amp.amf.acore/src/model/metaabm.ecore#//SContext"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="started" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDate"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="finished" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDate"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="entries" ordered="false"
-        upperBound="-1" eType="#//DataPoint" transient="true" resolveProxies="false"
-        eOpposite="#//DataPoint/run"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" unique="false" lowerBound="1"
         eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="parameterSets" upperBound="-1"
         eType="#//ParameterSet" containment="true"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="measurements" upperBound="-1"
-        eType="#//Measurement" containment="true"/>
+        eType="#//Measurement" containment="true" eOpposite="#//Measurement/run"/>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Parameter">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -26,9 +23,8 @@
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="period" ordered="false"
         unique="false" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//ELong"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EDouble"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="run" eType="#//Run" transient="true"
-        eOpposite="#//Run/entries"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="measure" eType="#//Measurement"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="measurement" lowerBound="1"
+        eType="#//Measurement" eOpposite="#//Measurement/entries"/>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Catalog">
     <eStructuralFeatures xsi:type="ecore:EReference" name="runs" upperBound="-1" eType="#//Run"
@@ -40,7 +36,10 @@
     <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass ../../org.eclipse.amp.amf.acore/src/model/metaabm.ecore#//IValue"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="entries" ordered="false"
-        upperBound="-1" eType="#//DataPoint" containment="true" resolveProxies="false"/>
+        upperBound="-1" eType="#//DataPoint" containment="true" resolveProxies="false"
+        eOpposite="#//DataPoint/measurement"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="run" lowerBound="1" eType="#//Run"
+        eOpposite="#//Run/measurements"/>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EEnum" name="ScaleType">
     <eLiterals name="Individual" literal="INDIVIDUAL"/>
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/AData.genmodel b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/AData.genmodel
similarity index 80%
rename from org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/AData.genmodel
rename to org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/AData.genmodel
index 89ce78b..c93cfe6 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/model/AData.genmodel
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/AData.genmodel
@@ -2,9 +2,10 @@
 <genmodel:GenModel xmi:version="2.0"
     xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
     xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.amp.amf.data/src"
-    modelPluginID="org.eclipse.amp.amf.data" modelName="AData" importerID="org.eclipse.emf.importer.ecore"
-    complianceLevel="6.0" copyrightFields="false" providerRootExtendsClass="" optimizedHasChildren="true"
-    tableProviders="true" colorProviders="true" usedGenPackages="../../org.eclipse.amp.amf.acore/src/model/metaabm.genmodel#//metaabm">
+    modelPluginID="org.eclipse.amp.amf.data" modelName="AData" rootExtendsClass="org.eclipse.emf.ecore.impl.FlatEObjectImpl"
+    importerID="org.eclipse.emf.importer.ecore" complianceLevel="6.0" copyrightFields="false"
+    providerRootExtendsClass="" optimizedHasChildren="true" tableProviders="true"
+    colorProviders="true" usedGenPackages="../../org.eclipse.amp.amf.acore/src/model/metaabm.genmodel#//metaabm">
   <foreignModel>AData.ecore</foreignModel>
   <genPackages prefix="Data" basePackage="org.eclipse.amp.amf" disposableProviderFactory="true"
       generateExampleClass="false" ecorePackage="AData.ecore#/">
@@ -23,7 +24,6 @@
       <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference AData.ecore#//Run/model"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute AData.ecore#//Run/started"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute AData.ecore#//Run/finished"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference AData.ecore#//Run/entries"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute AData.ecore#//Run/name"/>
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference AData.ecore#//Run/parameterSets"/>
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference AData.ecore#//Run/measurements"/>
@@ -36,11 +36,8 @@
     <genClasses ecoreClass="AData.ecore#//DataPoint">
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute AData.ecore#//DataPoint/period"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute AData.ecore#//DataPoint/value"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference AData.ecore#//DataPoint/run"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference AData.ecore#//DataPoint/measure"/>
     </genClasses>
     <genClasses ecoreClass="AData.ecore#//Catalog">
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference AData.ecore#//Catalog/entries"/>
       <genFeatures property="None" children="true" createChild="false" ecoreFeature="ecore:EReference AData.ecore#//Catalog/runs"/>
     </genClasses>
     <genClasses ecoreClass="AData.ecore#//Measurement">
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Catalog.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Catalog.java
index 3bffaf9..ec5baf6 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Catalog.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Catalog.java
@@ -28,19 +28,19 @@
  */
 public interface Catalog extends EObject {
     /**
-     * Returns the value of the '<em><b>Runs</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.adata.Run}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Runs</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.adata.Run}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Runs</em>' containment reference list isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Runs</em>' containment reference list.
-     * @see org.eclipse.amp.amf.adata.DataPackage#getCatalog_Runs()
-     * @model containment="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Runs</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getCatalog_Runs()
+	 * @model containment="true"
+	 * @generated
+	 */
     EList<Run> getRuns();
 
 } // Catalog
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataFactory.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataFactory.java
index 936b866..f288062 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataFactory.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataFactory.java
@@ -18,74 +18,74 @@
  */
 public interface DataFactory extends EFactory {
     /**
-     * The singleton instance of the factory.
-     * <!-- begin-user-doc -->
+	 * The singleton instance of the factory.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     DataFactory eINSTANCE = org.eclipse.amp.amf.adata.impl.DataFactoryImpl.init();
 
     /**
-     * Returns a new object of class '<em>Run</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Run</em>'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return a new object of class '<em>Run</em>'.
-     * @generated
-     */
+	 * @return a new object of class '<em>Run</em>'.
+	 * @generated
+	 */
     Run createRun();
 
     /**
-     * Returns a new object of class '<em>Parameter</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Parameter</em>'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return a new object of class '<em>Parameter</em>'.
-     * @generated
-     */
+	 * @return a new object of class '<em>Parameter</em>'.
+	 * @generated
+	 */
     Parameter createParameter();
 
     /**
-     * Returns a new object of class '<em>Point</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Point</em>'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return a new object of class '<em>Point</em>'.
-     * @generated
-     */
+	 * @return a new object of class '<em>Point</em>'.
+	 * @generated
+	 */
     DataPoint createDataPoint();
 
     /**
-     * Returns a new object of class '<em>Catalog</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Catalog</em>'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return a new object of class '<em>Catalog</em>'.
-     * @generated
-     */
+	 * @return a new object of class '<em>Catalog</em>'.
+	 * @generated
+	 */
     Catalog createCatalog();
 
     /**
-     * Returns a new object of class '<em>Measurement</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Measurement</em>'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return a new object of class '<em>Measurement</em>'.
-     * @generated
-     */
+	 * @return a new object of class '<em>Measurement</em>'.
+	 * @generated
+	 */
     Measurement createMeasurement();
 
     /**
-     * Returns a new object of class '<em>Parameter Set</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Parameter Set</em>'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return a new object of class '<em>Parameter Set</em>'.
-     * @generated
-     */
+	 * @return a new object of class '<em>Parameter Set</em>'.
+	 * @generated
+	 */
     ParameterSet createParameterSet();
 
     /**
-     * Returns the package supported by this factory.
-     * <!-- begin-user-doc -->
+	 * Returns the package supported by this factory.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the package supported by this factory.
-     * @generated
-     */
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
     DataPackage getDataPackage();
 
 } //DataFactory
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataPackage.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataPackage.java
index c18d4c1..cfbbb1d 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataPackage.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataPackage.java
@@ -29,643 +29,623 @@
  */
 public interface DataPackage extends EPackage {
     /**
-     * The package name.
-     * <!-- begin-user-doc -->
+	 * The package name.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     String eNAME = "adata";
 
     /**
-     * The package namespace URI.
-     * <!-- begin-user-doc -->
+	 * The package namespace URI.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     String eNS_URI = "http://eclipse.org/amp/amf/AData";
 
     /**
-     * The package namespace name.
-     * <!-- begin-user-doc -->
+	 * The package namespace name.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     String eNS_PREFIX = "adata";
 
     /**
-     * The singleton instance of the package.
-     * <!-- begin-user-doc -->
+	 * The singleton instance of the package.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     DataPackage eINSTANCE = org.eclipse.amp.amf.adata.impl.DataPackageImpl.init();
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.RunImpl <em>Run</em>}' class.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.RunImpl <em>Run</em>}' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.adata.impl.RunImpl
-     * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getRun()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.adata.impl.RunImpl
+	 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getRun()
+	 * @generated
+	 */
     int RUN = 0;
 
     /**
-     * The feature id for the '<em><b>Model</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Model</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN__MODEL = 0;
 
     /**
-     * The feature id for the '<em><b>Started</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Started</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN__STARTED = 1;
 
     /**
-     * The feature id for the '<em><b>Finished</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Finished</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN__FINISHED = 2;
 
     /**
-     * The feature id for the '<em><b>Entries</b></em>' reference list.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int RUN__ENTRIES = 3;
+	 * @generated
+	 * @ordered
+	 */
+    int RUN__NAME = 3;
 
     /**
-     * The feature id for the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Parameter Sets</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int RUN__NAME = 4;
+	 * @generated
+	 * @ordered
+	 */
+    int RUN__PARAMETER_SETS = 4;
 
     /**
-     * The feature id for the '<em><b>Parameter Sets</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Measurements</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int RUN__PARAMETER_SETS = 5;
+	 * @generated
+	 * @ordered
+	 */
+    int RUN__MEASUREMENTS = 5;
 
     /**
-     * The feature id for the '<em><b>Measurements</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Run</em>' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int RUN__MEASUREMENTS = 6;
+	 * @generated
+	 * @ordered
+	 */
+    int RUN_FEATURE_COUNT = 6;
 
     /**
-     * The number of structural features of the '<em>Run</em>' class.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.ParameterImpl <em>Parameter</em>}' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int RUN_FEATURE_COUNT = 7;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.ParameterImpl <em>Parameter</em>}' class.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.adata.impl.ParameterImpl
-     * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getParameter()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.adata.impl.ParameterImpl
+	 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getParameter()
+	 * @generated
+	 */
     int PARAMETER = 1;
 
     /**
-     * The feature id for the '<em><b>Value</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int PARAMETER__VALUE = 0;
 
     /**
-     * The feature id for the '<em><b>Attribute</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Attribute</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int PARAMETER__ATTRIBUTE = 1;
 
     /**
-     * The feature id for the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int PARAMETER__NAME = 2;
 
     /**
-     * The number of structural features of the '<em>Parameter</em>' class.
-     * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Parameter</em>' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int PARAMETER_FEATURE_COUNT = 3;
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.DataPointImpl <em>Point</em>}' class.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.DataPointImpl <em>Point</em>}' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.adata.impl.DataPointImpl
-     * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getDataPoint()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.adata.impl.DataPointImpl
+	 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getDataPoint()
+	 * @generated
+	 */
     int DATA_POINT = 2;
 
     /**
-     * The feature id for the '<em><b>Period</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Period</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int DATA_POINT__PERIOD = 0;
 
     /**
-     * The feature id for the '<em><b>Value</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int DATA_POINT__VALUE = 1;
 
     /**
-     * The feature id for the '<em><b>Run</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Measurement</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_POINT__MEASUREMENT = 2;
+
+				/**
+	 * The number of structural features of the '<em>Point</em>' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int DATA_POINT__RUN = 2;
+	 * @generated
+	 * @ordered
+	 */
+    int DATA_POINT_FEATURE_COUNT = 3;
 
     /**
-     * The feature id for the '<em><b>Measure</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.CatalogImpl <em>Catalog</em>}' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int DATA_POINT__MEASURE = 3;
-
-    /**
-     * The number of structural features of the '<em>Point</em>' class.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int DATA_POINT_FEATURE_COUNT = 4;
-
-    /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.CatalogImpl <em>Catalog</em>}' class.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.adata.impl.CatalogImpl
-     * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getCatalog()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.adata.impl.CatalogImpl
+	 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getCatalog()
+	 * @generated
+	 */
     int CATALOG = 3;
 
     /**
-     * The feature id for the '<em><b>Runs</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Runs</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int CATALOG__RUNS = 0;
 
     /**
-     * The number of structural features of the '<em>Catalog</em>' class.
-     * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Catalog</em>' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int CATALOG_FEATURE_COUNT = 1;
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.MeasurementImpl <em>Measurement</em>}' class.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.MeasurementImpl <em>Measurement</em>}' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.adata.impl.MeasurementImpl
-     * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getMeasurement()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.adata.impl.MeasurementImpl
+	 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getMeasurement()
+	 * @generated
+	 */
     int MEASUREMENT = 4;
 
     /**
-     * The feature id for the '<em><b>Type</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int MEASUREMENT__TYPE = 0;
 
     /**
-     * The feature id for the '<em><b>Value</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Value</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int MEASUREMENT__VALUE = 1;
 
     /**
-     * The feature id for the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int MEASUREMENT__NAME = 2;
 
     /**
-     * The feature id for the '<em><b>Entries</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Entries</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int MEASUREMENT__ENTRIES = 3;
 
     /**
-     * The number of structural features of the '<em>Measurement</em>' class.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Run</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MEASUREMENT__RUN = 4;
+
+				/**
+	 * The number of structural features of the '<em>Measurement</em>' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
-    int MEASUREMENT_FEATURE_COUNT = 4;
+	 * @generated
+	 * @ordered
+	 */
+    int MEASUREMENT_FEATURE_COUNT = 5;
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.ParameterSetImpl <em>Parameter Set</em>}' class.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.adata.impl.ParameterSetImpl <em>Parameter Set</em>}' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.adata.impl.ParameterSetImpl
-     * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getParameterSet()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.adata.impl.ParameterSetImpl
+	 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getParameterSet()
+	 * @generated
+	 */
     int PARAMETER_SET = 5;
 
     /**
-     * The feature id for the '<em><b>Members</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Members</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int PARAMETER_SET__MEMBERS = 0;
 
     /**
-     * The number of structural features of the '<em>Parameter Set</em>' class.
-     * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Parameter Set</em>' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int PARAMETER_SET_FEATURE_COUNT = 1;
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.adata.ScaleType <em>Scale Type</em>}' enum.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.adata.ScaleType <em>Scale Type</em>}' enum.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.adata.ScaleType
-     * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getScaleType()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.adata.ScaleType
+	 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getScaleType()
+	 * @generated
+	 */
     int SCALE_TYPE = 6;
 
 
     /**
-     * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.Run <em>Run</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.Run <em>Run</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Run</em>'.
-     * @see org.eclipse.amp.amf.adata.Run
-     * @generated
-     */
+	 * @return the meta object for class '<em>Run</em>'.
+	 * @see org.eclipse.amp.amf.adata.Run
+	 * @generated
+	 */
     EClass getRun();
 
     /**
-     * Returns the meta object for the reference '{@link org.eclipse.amp.amf.adata.Run#getModel <em>Model</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the reference '{@link org.eclipse.amp.amf.adata.Run#getModel <em>Model</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the reference '<em>Model</em>'.
-     * @see org.eclipse.amp.amf.adata.Run#getModel()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the reference '<em>Model</em>'.
+	 * @see org.eclipse.amp.amf.adata.Run#getModel()
+	 * @see #getRun()
+	 * @generated
+	 */
     EReference getRun_Model();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Run#getStarted <em>Started</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Run#getStarted <em>Started</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Started</em>'.
-     * @see org.eclipse.amp.amf.adata.Run#getStarted()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Started</em>'.
+	 * @see org.eclipse.amp.amf.adata.Run#getStarted()
+	 * @see #getRun()
+	 * @generated
+	 */
     EAttribute getRun_Started();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Run#getFinished <em>Finished</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Run#getFinished <em>Finished</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Finished</em>'.
-     * @see org.eclipse.amp.amf.adata.Run#getFinished()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Finished</em>'.
+	 * @see org.eclipse.amp.amf.adata.Run#getFinished()
+	 * @see #getRun()
+	 * @generated
+	 */
     EAttribute getRun_Finished();
 
     /**
-     * Returns the meta object for the reference list '{@link org.eclipse.amp.amf.adata.Run#getEntries <em>Entries</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Run#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the reference list '<em>Entries</em>'.
-     * @see org.eclipse.amp.amf.adata.Run#getEntries()
-     * @see #getRun()
-     * @generated
-     */
-    EReference getRun_Entries();
-
-    /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Run#getName <em>Name</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Name</em>'.
-     * @see org.eclipse.amp.amf.adata.Run#getName()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.amp.amf.adata.Run#getName()
+	 * @see #getRun()
+	 * @generated
+	 */
     EAttribute getRun_Name();
 
     /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.Run#getParameterSets <em>Parameter Sets</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.Run#getParameterSets <em>Parameter Sets</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Parameter Sets</em>'.
-     * @see org.eclipse.amp.amf.adata.Run#getParameterSets()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the containment reference list '<em>Parameter Sets</em>'.
+	 * @see org.eclipse.amp.amf.adata.Run#getParameterSets()
+	 * @see #getRun()
+	 * @generated
+	 */
     EReference getRun_ParameterSets();
 
     /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.Run#getMeasurements <em>Measurements</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.Run#getMeasurements <em>Measurements</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Measurements</em>'.
-     * @see org.eclipse.amp.amf.adata.Run#getMeasurements()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the containment reference list '<em>Measurements</em>'.
+	 * @see org.eclipse.amp.amf.adata.Run#getMeasurements()
+	 * @see #getRun()
+	 * @generated
+	 */
     EReference getRun_Measurements();
 
     /**
-     * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.Parameter <em>Parameter</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.Parameter <em>Parameter</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Parameter</em>'.
-     * @see org.eclipse.amp.amf.adata.Parameter
-     * @generated
-     */
+	 * @return the meta object for class '<em>Parameter</em>'.
+	 * @see org.eclipse.amp.amf.adata.Parameter
+	 * @generated
+	 */
     EClass getParameter();
 
     /**
-     * Returns the meta object for the reference '{@link org.eclipse.amp.amf.adata.Parameter#getAttribute <em>Attribute</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the reference '{@link org.eclipse.amp.amf.adata.Parameter#getAttribute <em>Attribute</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the reference '<em>Attribute</em>'.
-     * @see org.eclipse.amp.amf.adata.Parameter#getAttribute()
-     * @see #getParameter()
-     * @generated
-     */
+	 * @return the meta object for the reference '<em>Attribute</em>'.
+	 * @see org.eclipse.amp.amf.adata.Parameter#getAttribute()
+	 * @see #getParameter()
+	 * @generated
+	 */
     EReference getParameter_Attribute();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Parameter#getName <em>Name</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Parameter#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Name</em>'.
-     * @see org.eclipse.amp.amf.adata.Parameter#getName()
-     * @see #getParameter()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.amp.amf.adata.Parameter#getName()
+	 * @see #getParameter()
+	 * @generated
+	 */
     EAttribute getParameter_Name();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Parameter#getValue <em>Value</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Parameter#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Value</em>'.
-     * @see org.eclipse.amp.amf.adata.Parameter#getValue()
-     * @see #getParameter()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see org.eclipse.amp.amf.adata.Parameter#getValue()
+	 * @see #getParameter()
+	 * @generated
+	 */
     EAttribute getParameter_Value();
 
     /**
-     * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.DataPoint <em>Point</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.DataPoint <em>Point</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Point</em>'.
-     * @see org.eclipse.amp.amf.adata.DataPoint
-     * @generated
-     */
+	 * @return the meta object for class '<em>Point</em>'.
+	 * @see org.eclipse.amp.amf.adata.DataPoint
+	 * @generated
+	 */
     EClass getDataPoint();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.DataPoint#getPeriod <em>Period</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.DataPoint#getPeriod <em>Period</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Period</em>'.
-     * @see org.eclipse.amp.amf.adata.DataPoint#getPeriod()
-     * @see #getDataPoint()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Period</em>'.
+	 * @see org.eclipse.amp.amf.adata.DataPoint#getPeriod()
+	 * @see #getDataPoint()
+	 * @generated
+	 */
     EAttribute getDataPoint_Period();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.DataPoint#getValue <em>Value</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.DataPoint#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Value</em>'.
-     * @see org.eclipse.amp.amf.adata.DataPoint#getValue()
-     * @see #getDataPoint()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see org.eclipse.amp.amf.adata.DataPoint#getValue()
+	 * @see #getDataPoint()
+	 * @generated
+	 */
     EAttribute getDataPoint_Value();
 
     /**
-     * Returns the meta object for the reference '{@link org.eclipse.amp.amf.adata.DataPoint#getRun <em>Run</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for the reference '<em>Run</em>'.
-     * @see org.eclipse.amp.amf.adata.DataPoint#getRun()
-     * @see #getDataPoint()
-     * @generated
-     */
-    EReference getDataPoint_Run();
+	 * Returns the meta object for the container reference '{@link org.eclipse.amp.amf.adata.DataPoint#getMeasurement <em>Measurement</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the container reference '<em>Measurement</em>'.
+	 * @see org.eclipse.amp.amf.adata.DataPoint#getMeasurement()
+	 * @see #getDataPoint()
+	 * @generated
+	 */
+	EReference getDataPoint_Measurement();
 
-    /**
-     * Returns the meta object for the reference '{@link org.eclipse.amp.amf.adata.DataPoint#getMeasure <em>Measure</em>}'.
-     * <!-- begin-user-doc -->
+				/**
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.Catalog <em>Catalog</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the reference '<em>Measure</em>'.
-     * @see org.eclipse.amp.amf.adata.DataPoint#getMeasure()
-     * @see #getDataPoint()
-     * @generated
-     */
-    EReference getDataPoint_Measure();
-
-    /**
-     * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.Catalog <em>Catalog</em>}'.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Catalog</em>'.
-     * @see org.eclipse.amp.amf.adata.Catalog
-     * @generated
-     */
+	 * @return the meta object for class '<em>Catalog</em>'.
+	 * @see org.eclipse.amp.amf.adata.Catalog
+	 * @generated
+	 */
     EClass getCatalog();
 
     /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.Catalog#getRuns <em>Runs</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.Catalog#getRuns <em>Runs</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Runs</em>'.
-     * @see org.eclipse.amp.amf.adata.Catalog#getRuns()
-     * @see #getCatalog()
-     * @generated
-     */
+	 * @return the meta object for the containment reference list '<em>Runs</em>'.
+	 * @see org.eclipse.amp.amf.adata.Catalog#getRuns()
+	 * @see #getCatalog()
+	 * @generated
+	 */
     EReference getCatalog_Runs();
 
     /**
-     * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.Measurement <em>Measurement</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.Measurement <em>Measurement</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Measurement</em>'.
-     * @see org.eclipse.amp.amf.adata.Measurement
-     * @generated
-     */
+	 * @return the meta object for class '<em>Measurement</em>'.
+	 * @see org.eclipse.amp.amf.adata.Measurement
+	 * @generated
+	 */
     EClass getMeasurement();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Measurement#getType <em>Type</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Measurement#getType <em>Type</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Type</em>'.
-     * @see org.eclipse.amp.amf.adata.Measurement#getType()
-     * @see #getMeasurement()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Type</em>'.
+	 * @see org.eclipse.amp.amf.adata.Measurement#getType()
+	 * @see #getMeasurement()
+	 * @generated
+	 */
     EAttribute getMeasurement_Type();
 
     /**
-     * Returns the meta object for the reference '{@link org.eclipse.amp.amf.adata.Measurement#getValue <em>Value</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the reference '{@link org.eclipse.amp.amf.adata.Measurement#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the reference '<em>Value</em>'.
-     * @see org.eclipse.amp.amf.adata.Measurement#getValue()
-     * @see #getMeasurement()
-     * @generated
-     */
+	 * @return the meta object for the reference '<em>Value</em>'.
+	 * @see org.eclipse.amp.amf.adata.Measurement#getValue()
+	 * @see #getMeasurement()
+	 * @generated
+	 */
     EReference getMeasurement_Value();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Measurement#getName <em>Name</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.adata.Measurement#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Name</em>'.
-     * @see org.eclipse.amp.amf.adata.Measurement#getName()
-     * @see #getMeasurement()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.amp.amf.adata.Measurement#getName()
+	 * @see #getMeasurement()
+	 * @generated
+	 */
     EAttribute getMeasurement_Name();
 
     /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.Measurement#getEntries <em>Entries</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.Measurement#getEntries <em>Entries</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Entries</em>'.
-     * @see org.eclipse.amp.amf.adata.Measurement#getEntries()
-     * @see #getMeasurement()
-     * @generated
-     */
+	 * @return the meta object for the containment reference list '<em>Entries</em>'.
+	 * @see org.eclipse.amp.amf.adata.Measurement#getEntries()
+	 * @see #getMeasurement()
+	 * @generated
+	 */
     EReference getMeasurement_Entries();
 
     /**
-     * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.ParameterSet <em>Parameter Set</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the container reference '{@link org.eclipse.amp.amf.adata.Measurement#getRun <em>Run</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the container reference '<em>Run</em>'.
+	 * @see org.eclipse.amp.amf.adata.Measurement#getRun()
+	 * @see #getMeasurement()
+	 * @generated
+	 */
+	EReference getMeasurement_Run();
+
+				/**
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.adata.ParameterSet <em>Parameter Set</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Parameter Set</em>'.
-     * @see org.eclipse.amp.amf.adata.ParameterSet
-     * @generated
-     */
+	 * @return the meta object for class '<em>Parameter Set</em>'.
+	 * @see org.eclipse.amp.amf.adata.ParameterSet
+	 * @generated
+	 */
     EClass getParameterSet();
 
     /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.ParameterSet#getMembers <em>Members</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.adata.ParameterSet#getMembers <em>Members</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Members</em>'.
-     * @see org.eclipse.amp.amf.adata.ParameterSet#getMembers()
-     * @see #getParameterSet()
-     * @generated
-     */
+	 * @return the meta object for the containment reference list '<em>Members</em>'.
+	 * @see org.eclipse.amp.amf.adata.ParameterSet#getMembers()
+	 * @see #getParameterSet()
+	 * @generated
+	 */
     EReference getParameterSet_Members();
 
     /**
-     * Returns the meta object for enum '{@link org.eclipse.amp.amf.adata.ScaleType <em>Scale Type</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for enum '{@link org.eclipse.amp.amf.adata.ScaleType <em>Scale Type</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for enum '<em>Scale Type</em>'.
-     * @see org.eclipse.amp.amf.adata.ScaleType
-     * @generated
-     */
+	 * @return the meta object for enum '<em>Scale Type</em>'.
+	 * @see org.eclipse.amp.amf.adata.ScaleType
+	 * @generated
+	 */
     EEnum getScaleType();
 
     /**
-     * Returns the factory that creates the instances of the model.
-     * <!-- begin-user-doc -->
+	 * Returns the factory that creates the instances of the model.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the factory that creates the instances of the model.
-     * @generated
-     */
+	 * @return the factory that creates the instances of the model.
+	 * @generated
+	 */
     DataFactory getDataFactory();
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * Defines literals for the meta objects that represent
      * <ul>
      *   <li>each class,</li>
@@ -674,237 +654,229 @@
      *   <li>and each data type</li>
      * </ul>
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     interface Literals {
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.RunImpl <em>Run</em>}' class.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.RunImpl <em>Run</em>}' class.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.adata.impl.RunImpl
-         * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getRun()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.adata.impl.RunImpl
+		 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getRun()
+		 * @generated
+		 */
         EClass RUN = eINSTANCE.getRun();
 
         /**
-         * The meta object literal for the '<em><b>Model</b></em>' reference feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Model</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference RUN__MODEL = eINSTANCE.getRun_Model();
 
         /**
-         * The meta object literal for the '<em><b>Started</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Started</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute RUN__STARTED = eINSTANCE.getRun_Started();
 
         /**
-         * The meta object literal for the '<em><b>Finished</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Finished</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute RUN__FINISHED = eINSTANCE.getRun_Finished();
 
         /**
-         * The meta object literal for the '<em><b>Entries</b></em>' reference list feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
-        EReference RUN__ENTRIES = eINSTANCE.getRun_Entries();
-
-        /**
-         * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
-         * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute RUN__NAME = eINSTANCE.getRun_Name();
 
         /**
-         * The meta object literal for the '<em><b>Parameter Sets</b></em>' containment reference list feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Parameter Sets</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference RUN__PARAMETER_SETS = eINSTANCE.getRun_ParameterSets();
 
         /**
-         * The meta object literal for the '<em><b>Measurements</b></em>' containment reference list feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Measurements</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference RUN__MEASUREMENTS = eINSTANCE.getRun_Measurements();
 
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.ParameterImpl <em>Parameter</em>}' class.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.ParameterImpl <em>Parameter</em>}' class.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.adata.impl.ParameterImpl
-         * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getParameter()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.adata.impl.ParameterImpl
+		 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getParameter()
+		 * @generated
+		 */
         EClass PARAMETER = eINSTANCE.getParameter();
 
         /**
-         * The meta object literal for the '<em><b>Attribute</b></em>' reference feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Attribute</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference PARAMETER__ATTRIBUTE = eINSTANCE.getParameter_Attribute();
 
         /**
-         * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute PARAMETER__NAME = eINSTANCE.getParameter_Name();
 
         /**
-         * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute PARAMETER__VALUE = eINSTANCE.getParameter_Value();
 
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.DataPointImpl <em>Point</em>}' class.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.DataPointImpl <em>Point</em>}' class.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.adata.impl.DataPointImpl
-         * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getDataPoint()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.adata.impl.DataPointImpl
+		 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getDataPoint()
+		 * @generated
+		 */
         EClass DATA_POINT = eINSTANCE.getDataPoint();
 
         /**
-         * The meta object literal for the '<em><b>Period</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Period</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute DATA_POINT__PERIOD = eINSTANCE.getDataPoint_Period();
 
         /**
-         * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute DATA_POINT__VALUE = eINSTANCE.getDataPoint_Value();
 
         /**
-         * The meta object literal for the '<em><b>Run</b></em>' reference feature.
-         * <!-- begin-user-doc -->
-         * <!-- end-user-doc -->
-         * @generated
-         */
-        EReference DATA_POINT__RUN = eINSTANCE.getDataPoint_Run();
+		 * The meta object literal for the '<em><b>Measurement</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DATA_POINT__MEASUREMENT = eINSTANCE.getDataPoint_Measurement();
 
-        /**
-         * The meta object literal for the '<em><b>Measure</b></em>' reference feature.
-         * <!-- begin-user-doc -->
+								/**
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.CatalogImpl <em>Catalog</em>}' class.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
-        EReference DATA_POINT__MEASURE = eINSTANCE.getDataPoint_Measure();
-
-        /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.CatalogImpl <em>Catalog</em>}' class.
-         * <!-- begin-user-doc -->
-         * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.adata.impl.CatalogImpl
-         * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getCatalog()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.adata.impl.CatalogImpl
+		 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getCatalog()
+		 * @generated
+		 */
         EClass CATALOG = eINSTANCE.getCatalog();
 
         /**
-         * The meta object literal for the '<em><b>Runs</b></em>' containment reference list feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Runs</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference CATALOG__RUNS = eINSTANCE.getCatalog_Runs();
 
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.MeasurementImpl <em>Measurement</em>}' class.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.MeasurementImpl <em>Measurement</em>}' class.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.adata.impl.MeasurementImpl
-         * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getMeasurement()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.adata.impl.MeasurementImpl
+		 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getMeasurement()
+		 * @generated
+		 */
         EClass MEASUREMENT = eINSTANCE.getMeasurement();
 
         /**
-         * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute MEASUREMENT__TYPE = eINSTANCE.getMeasurement_Type();
 
         /**
-         * The meta object literal for the '<em><b>Value</b></em>' reference feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Value</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference MEASUREMENT__VALUE = eINSTANCE.getMeasurement_Value();
 
         /**
-         * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute MEASUREMENT__NAME = eINSTANCE.getMeasurement_Name();
 
         /**
-         * The meta object literal for the '<em><b>Entries</b></em>' containment reference list feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Entries</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference MEASUREMENT__ENTRIES = eINSTANCE.getMeasurement_Entries();
 
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.ParameterSetImpl <em>Parameter Set</em>}' class.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Run</b></em>' container reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference MEASUREMENT__RUN = eINSTANCE.getMeasurement_Run();
+
+								/**
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.adata.impl.ParameterSetImpl <em>Parameter Set</em>}' class.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.adata.impl.ParameterSetImpl
-         * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getParameterSet()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.adata.impl.ParameterSetImpl
+		 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getParameterSet()
+		 * @generated
+		 */
         EClass PARAMETER_SET = eINSTANCE.getParameterSet();
 
         /**
-         * The meta object literal for the '<em><b>Members</b></em>' containment reference list feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Members</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference PARAMETER_SET__MEMBERS = eINSTANCE.getParameterSet_Members();
 
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.adata.ScaleType <em>Scale Type</em>}' enum.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.adata.ScaleType <em>Scale Type</em>}' enum.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.adata.ScaleType
-         * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getScaleType()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.adata.ScaleType
+		 * @see org.eclipse.amp.amf.adata.impl.DataPackageImpl#getScaleType()
+		 * @generated
+		 */
         EEnum SCALE_TYPE = eINSTANCE.getScaleType();
 
     }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataPoint.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataPoint.java
index 771fe7c..2ab3d27 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataPoint.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/DataPoint.java
@@ -18,8 +18,7 @@
  * <ul>
  *   <li>{@link org.eclipse.amp.amf.adata.DataPoint#getPeriod <em>Period</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.DataPoint#getValue <em>Value</em>}</li>
- *   <li>{@link org.eclipse.amp.amf.adata.DataPoint#getRun <em>Run</em>}</li>
- *   <li>{@link org.eclipse.amp.amf.adata.DataPoint#getMeasure <em>Measure</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.adata.DataPoint#getMeasurement <em>Measurement</em>}</li>
  * </ul>
  * </p>
  *
@@ -29,109 +28,83 @@
  */
 public interface DataPoint extends EObject {
     /**
-     * Returns the value of the '<em><b>Period</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Period</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Period</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Period</em>' attribute.
-     * @see #setPeriod(long)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getDataPoint_Period()
-     * @model unique="false" ordered="false"
-     * @generated
-     */
+	 * @return the value of the '<em>Period</em>' attribute.
+	 * @see #setPeriod(long)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getDataPoint_Period()
+	 * @model unique="false" ordered="false"
+	 * @generated
+	 */
     long getPeriod();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.DataPoint#getPeriod <em>Period</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.DataPoint#getPeriod <em>Period</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Period</em>' attribute.
-     * @see #getPeriod()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Period</em>' attribute.
+	 * @see #getPeriod()
+	 * @generated
+	 */
     void setPeriod(long value);
 
     /**
-     * Returns the value of the '<em><b>Value</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Value</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Value</em>' attribute.
-     * @see #setValue(double)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getDataPoint_Value()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(double)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getDataPoint_Value()
+	 * @model
+	 * @generated
+	 */
     double getValue();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.DataPoint#getValue <em>Value</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.DataPoint#getValue <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Value</em>' attribute.
-     * @see #getValue()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Value</em>' attribute.
+	 * @see #getValue()
+	 * @generated
+	 */
     void setValue(double value);
 
     /**
-     * Returns the value of the '<em><b>Run</b></em>' reference.
-     * It is bidirectional and its opposite is '{@link org.eclipse.amp.amf.adata.Run#getEntries <em>Entries</em>}'.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Run</em>' reference isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Run</em>' reference.
-     * @see #setRun(Run)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getDataPoint_Run()
-     * @see org.eclipse.amp.amf.adata.Run#getEntries
-     * @model opposite="entries" transient="true"
-     * @generated
-     */
-    Run getRun();
+	 * Returns the value of the '<em><b>Measurement</b></em>' container reference.
+	 * It is bidirectional and its opposite is '{@link org.eclipse.amp.amf.adata.Measurement#getEntries <em>Entries</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Measurement</em>' container reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Measurement</em>' container reference.
+	 * @see #setMeasurement(Measurement)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getDataPoint_Measurement()
+	 * @see org.eclipse.amp.amf.adata.Measurement#getEntries
+	 * @model opposite="entries" required="true" transient="false"
+	 * @generated
+	 */
+	Measurement getMeasurement();
 
-    /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.DataPoint#getRun <em>Run</em>}' reference.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Run</em>' reference.
-     * @see #getRun()
-     * @generated
-     */
-    void setRun(Run value);
-
-    /**
-     * Returns the value of the '<em><b>Measure</b></em>' reference.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Measure</em>' reference isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Measure</em>' reference.
-     * @see #setMeasure(Measurement)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getDataPoint_Measure()
-     * @model
-     * @generated
-     */
-    Measurement getMeasure();
-
-    /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.DataPoint#getMeasure <em>Measure</em>}' reference.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Measure</em>' reference.
-     * @see #getMeasure()
-     * @generated
-     */
-    void setMeasure(Measurement value);
+				/**
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.DataPoint#getMeasurement <em>Measurement</em>}' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Measurement</em>' container reference.
+	 * @see #getMeasurement()
+	 * @generated
+	 */
+	void setMeasurement(Measurement value);
 
 } // DataPoint
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Measurement.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Measurement.java
index 2cd1869..0f032c5 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Measurement.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Measurement.java
@@ -24,6 +24,7 @@
  *   <li>{@link org.eclipse.amp.amf.adata.Measurement#getValue <em>Value</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.Measurement#getName <em>Name</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.Measurement#getEntries <em>Entries</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.adata.Measurement#getRun <em>Run</em>}</li>
  * </ul>
  * </p>
  *
@@ -33,100 +34,130 @@
  */
 public interface Measurement extends EObject {
     /**
-     * Returns the value of the '<em><b>Type</b></em>' attribute.
-     * The literals are from the enumeration {@link org.eclipse.amp.amf.adata.ScaleType}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.amp.amf.adata.ScaleType}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Type</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Type</em>' attribute.
-     * @see org.eclipse.amp.amf.adata.ScaleType
-     * @see #setType(ScaleType)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getMeasurement_Type()
-     * @model unique="false" ordered="false"
-     * @generated
-     */
+	 * @return the value of the '<em>Type</em>' attribute.
+	 * @see org.eclipse.amp.amf.adata.ScaleType
+	 * @see #setType(ScaleType)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getMeasurement_Type()
+	 * @model unique="false" ordered="false"
+	 * @generated
+	 */
     ScaleType getType();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Measurement#getType <em>Type</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Measurement#getType <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Type</em>' attribute.
-     * @see org.eclipse.amp.amf.adata.ScaleType
-     * @see #getType()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Type</em>' attribute.
+	 * @see org.eclipse.amp.amf.adata.ScaleType
+	 * @see #getType()
+	 * @generated
+	 */
     void setType(ScaleType value);
 
     /**
-     * Returns the value of the '<em><b>Value</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Value</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Value</em>' reference isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Value</em>' reference.
-     * @see #setValue(IValue)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getMeasurement_Value()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Value</em>' reference.
+	 * @see #setValue(IValue)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getMeasurement_Value()
+	 * @model
+	 * @generated
+	 */
     IValue getValue();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Measurement#getValue <em>Value</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Measurement#getValue <em>Value</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Value</em>' reference.
-     * @see #getValue()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Value</em>' reference.
+	 * @see #getValue()
+	 * @generated
+	 */
     void setValue(IValue value);
 
     /**
-     * Returns the value of the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Name</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Name</em>' attribute.
-     * @see #setName(String)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getMeasurement_Name()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getMeasurement_Name()
+	 * @model required="true"
+	 * @generated
+	 */
     String getName();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Measurement#getName <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Measurement#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Name</em>' attribute.
-     * @see #getName()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
     void setName(String value);
 
     /**
-     * Returns the value of the '<em><b>Entries</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.adata.DataPoint}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Entries</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.adata.DataPoint}.
+	 * It is bidirectional and its opposite is '{@link org.eclipse.amp.amf.adata.DataPoint#getMeasurement <em>Measurement</em>}'.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Entries</em>' containment reference list isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Entries</em>' containment reference list.
-     * @see org.eclipse.amp.amf.adata.DataPackage#getMeasurement_Entries()
-     * @model containment="true" ordered="false"
-     * @generated
-     */
+	 * @return the value of the '<em>Entries</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getMeasurement_Entries()
+	 * @see org.eclipse.amp.amf.adata.DataPoint#getMeasurement
+	 * @model opposite="measurement" containment="true" ordered="false"
+	 * @generated
+	 */
     EList<DataPoint> getEntries();
 
+				/**
+	 * Returns the value of the '<em><b>Run</b></em>' container reference.
+	 * It is bidirectional and its opposite is '{@link org.eclipse.amp.amf.adata.Run#getMeasurements <em>Measurements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Run</em>' container reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Run</em>' container reference.
+	 * @see #setRun(Run)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getMeasurement_Run()
+	 * @see org.eclipse.amp.amf.adata.Run#getMeasurements
+	 * @model opposite="measurements" required="true" transient="false"
+	 * @generated
+	 */
+	Run getRun();
+
+				/**
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Measurement#getRun <em>Run</em>}' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Run</em>' container reference.
+	 * @see #getRun()
+	 * @generated
+	 */
+	void setRun(Run value);
+
 } // Measurement
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Parameter.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Parameter.java
index 51ba6ab..c74e94b 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Parameter.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Parameter.java
@@ -6,11 +6,7 @@
  */
 package org.eclipse.amp.amf.adata;
 
-import org.eclipse.emf.common.util.EList;
-import org.eclipse.amp.amf.abase.aBase.Value;
-
 import org.eclipse.emf.ecore.EObject;
-
 import org.metaabm.SAttribute;
 
 /**
@@ -33,81 +29,81 @@
  */
 public interface Parameter extends EObject {
     /**
-     * Returns the value of the '<em><b>Attribute</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Attribute</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Attribute</em>' reference isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Attribute</em>' reference.
-     * @see #setAttribute(SAttribute)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getParameter_Attribute()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Attribute</em>' reference.
+	 * @see #setAttribute(SAttribute)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getParameter_Attribute()
+	 * @model
+	 * @generated
+	 */
     SAttribute getAttribute();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Parameter#getAttribute <em>Attribute</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Parameter#getAttribute <em>Attribute</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Attribute</em>' reference.
-     * @see #getAttribute()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Attribute</em>' reference.
+	 * @see #getAttribute()
+	 * @generated
+	 */
     void setAttribute(SAttribute value);
 
     /**
-     * Returns the value of the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Name</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Name</em>' attribute.
-     * @see #setName(String)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getParameter_Name()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getParameter_Name()
+	 * @model required="true"
+	 * @generated
+	 */
     String getName();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Parameter#getName <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Parameter#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Name</em>' attribute.
-     * @see #getName()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
     void setName(String value);
 
     /**
-     * Returns the value of the '<em><b>Value</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Value</em>' reference isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Value</em>' attribute.
-     * @see #setValue(String)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getParameter_Value()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getParameter_Value()
+	 * @model required="true"
+	 * @generated
+	 */
     String getValue();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Parameter#getValue <em>Value</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Parameter#getValue <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Value</em>' attribute.
-     * @see #getValue()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Value</em>' attribute.
+	 * @see #getValue()
+	 * @generated
+	 */
     void setValue(String value);
 
 } // Parameter
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/ParameterSet.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/ParameterSet.java
index b4959e0..0bee184 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/ParameterSet.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/ParameterSet.java
@@ -27,19 +27,19 @@
  */
 public interface ParameterSet extends EObject {
     /**
-     * Returns the value of the '<em><b>Members</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.adata.Parameter}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Members</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.adata.Parameter}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Members</em>' containment reference list isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Members</em>' containment reference list.
-     * @see org.eclipse.amp.amf.adata.DataPackage#getParameterSet_Members()
-     * @model containment="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Members</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getParameterSet_Members()
+	 * @model containment="true"
+	 * @generated
+	 */
     EList<Parameter> getMembers();
 
 } // ParameterSet
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Run.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Run.java
index 111eb7a..8db71c2 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Run.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/Run.java
@@ -25,7 +25,6 @@
  *   <li>{@link org.eclipse.amp.amf.adata.Run#getModel <em>Model</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.Run#getStarted <em>Started</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.Run#getFinished <em>Finished</em>}</li>
- *   <li>{@link org.eclipse.amp.amf.adata.Run#getEntries <em>Entries</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.Run#getName <em>Name</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.Run#getParameterSets <em>Parameter Sets</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.Run#getMeasurements <em>Measurements</em>}</li>
@@ -38,157 +37,141 @@
  */
 public interface Run extends EObject {
     /**
-     * Returns the value of the '<em><b>Model</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Model</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Model</em>' reference isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Model</em>' reference.
-     * @see #setModel(SContext)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Model()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Model</em>' reference.
+	 * @see #setModel(SContext)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Model()
+	 * @model required="true"
+	 * @generated
+	 */
     SContext getModel();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Run#getModel <em>Model</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Run#getModel <em>Model</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Model</em>' reference.
-     * @see #getModel()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Model</em>' reference.
+	 * @see #getModel()
+	 * @generated
+	 */
     void setModel(SContext value);
 
     /**
-     * Returns the value of the '<em><b>Started</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Started</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Started</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Started</em>' attribute.
-     * @see #setStarted(Date)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Started()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Started</em>' attribute.
+	 * @see #setStarted(Date)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Started()
+	 * @model
+	 * @generated
+	 */
     Date getStarted();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Run#getStarted <em>Started</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Run#getStarted <em>Started</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Started</em>' attribute.
-     * @see #getStarted()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Started</em>' attribute.
+	 * @see #getStarted()
+	 * @generated
+	 */
     void setStarted(Date value);
 
     /**
-     * Returns the value of the '<em><b>Finished</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Finished</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Finished</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Finished</em>' attribute.
-     * @see #setFinished(Date)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Finished()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Finished</em>' attribute.
+	 * @see #setFinished(Date)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Finished()
+	 * @model
+	 * @generated
+	 */
     Date getFinished();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Run#getFinished <em>Finished</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Run#getFinished <em>Finished</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Finished</em>' attribute.
-     * @see #getFinished()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Finished</em>' attribute.
+	 * @see #getFinished()
+	 * @generated
+	 */
     void setFinished(Date value);
 
     /**
-     * Returns the value of the '<em><b>Entries</b></em>' reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.adata.DataPoint}.
-     * It is bidirectional and its opposite is '{@link org.eclipse.amp.amf.adata.DataPoint#getRun <em>Run</em>}'.
-     * <!-- begin-user-doc -->
-     * <p>
-     * If the meaning of the '<em>Entries</em>' reference list isn't clear,
-     * there really should be more of a description here...
-     * </p>
-     * <!-- end-user-doc -->
-     * @return the value of the '<em>Entries</em>' reference list.
-     * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Entries()
-     * @see org.eclipse.amp.amf.adata.DataPoint#getRun
-     * @model opposite="run" resolveProxies="false" transient="true" ordered="false"
-     * @generated
-     */
-    EList<DataPoint> getEntries();
-
-    /**
-     * Returns the value of the '<em><b>Name</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Name</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Name</em>' attribute.
-     * @see #setName(String)
-     * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Name()
-     * @model unique="false" required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Name()
+	 * @model unique="false" required="true"
+	 * @generated
+	 */
     String getName();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.adata.Run#getName <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.adata.Run#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Name</em>' attribute.
-     * @see #getName()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
     void setName(String value);
 
     /**
-     * Returns the value of the '<em><b>Parameter Sets</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.adata.ParameterSet}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Parameter Sets</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.adata.ParameterSet}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Parameter Sets</em>' containment reference list isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Parameter Sets</em>' containment reference list.
-     * @see org.eclipse.amp.amf.adata.DataPackage#getRun_ParameterSets()
-     * @model containment="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Parameter Sets</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getRun_ParameterSets()
+	 * @model containment="true"
+	 * @generated
+	 */
     EList<ParameterSet> getParameterSets();
 
     /**
-     * Returns the value of the '<em><b>Measurements</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.adata.Measurement}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Measurements</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.adata.Measurement}.
+	 * It is bidirectional and its opposite is '{@link org.eclipse.amp.amf.adata.Measurement#getRun <em>Run</em>}'.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Measurements</em>' containment reference list isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Measurements</em>' containment reference list.
-     * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Measurements()
-     * @model containment="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Measurements</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.adata.DataPackage#getRun_Measurements()
+	 * @see org.eclipse.amp.amf.adata.Measurement#getRun
+	 * @model opposite="run" containment="true"
+	 * @generated
+	 */
     EList<Measurement> getMeasurements();
 
 } // Run
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/ScaleType.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/ScaleType.java
index ea695c7..27ca06f 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/ScaleType.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/ScaleType.java
@@ -23,377 +23,377 @@
  */
 public enum ScaleType implements Enumerator {
     /**
-     * The '<em><b>Individual</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Individual</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #INDIVIDUAL_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #INDIVIDUAL_VALUE
+	 * @generated
+	 * @ordered
+	 */
     INDIVIDUAL(0, "Individual", "INDIVIDUAL"), /**
-     * The '<em><b>Count</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Count</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #COUNT_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #COUNT_VALUE
+	 * @generated
+	 * @ordered
+	 */
     COUNT(1, "Count", "COUNT"),
 
     /**
-     * The '<em><b>Sum</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Sum</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #SUM_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #SUM_VALUE
+	 * @generated
+	 * @ordered
+	 */
     SUM(2, "Sum", "SUM"),
 
     /**
-     * The '<em><b>Average</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Average</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #AVERAGE_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #AVERAGE_VALUE
+	 * @generated
+	 * @ordered
+	 */
     AVERAGE(3, "Average", "AVERAGE"),
 
     /**
-     * The '<em><b>Minimum</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Minimum</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #MINIMUM_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #MINIMUM_VALUE
+	 * @generated
+	 * @ordered
+	 */
     MINIMUM(4, "Minimum", "MINIMUM"),
 
     /**
-     * The '<em><b>Maximum</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Maximum</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #MAXIMUM_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #MAXIMUM_VALUE
+	 * @generated
+	 * @ordered
+	 */
     MAXIMUM(5, "Maximum", "MAXIMUM"),
 
     /**
-     * The '<em><b>Standard Deviation</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Standard Deviation</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #STANDARD_DEVIATION_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #STANDARD_DEVIATION_VALUE
+	 * @generated
+	 * @ordered
+	 */
     STANDARD_DEVIATION(6, "StandardDeviation", "STAMDARD_DEVIATION"),
 
     /**
-     * The '<em><b>Variance</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Variance</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #VARIANCE_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #VARIANCE_VALUE
+	 * @generated
+	 * @ordered
+	 */
     VARIANCE(7, "Variance", "VARIANCE"),
 
     /**
-     * The '<em><b>Custom</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Custom</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #CUSTOM_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #CUSTOM_VALUE
+	 * @generated
+	 * @ordered
+	 */
     CUSTOM(1000, "Custom", "CUSTOM");
 
     /**
-     * The '<em><b>Individual</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Individual</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Individual</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #INDIVIDUAL
-     * @model name="Individual" literal="INDIVIDUAL"
-     * @generated
-     * @ordered
-     */
+	 * @see #INDIVIDUAL
+	 * @model name="Individual" literal="INDIVIDUAL"
+	 * @generated
+	 * @ordered
+	 */
     public static final int INDIVIDUAL_VALUE = 0;
 
     /**
-     * The '<em><b>Count</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Count</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Count</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #COUNT
-     * @model name="Count" literal="COUNT"
-     * @generated
-     * @ordered
-     */
+	 * @see #COUNT
+	 * @model name="Count" literal="COUNT"
+	 * @generated
+	 * @ordered
+	 */
     public static final int COUNT_VALUE = 1;
 
     /**
-     * The '<em><b>Sum</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Sum</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Sum</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #SUM
-     * @model name="Sum" literal="SUM"
-     * @generated
-     * @ordered
-     */
+	 * @see #SUM
+	 * @model name="Sum" literal="SUM"
+	 * @generated
+	 * @ordered
+	 */
     public static final int SUM_VALUE = 2;
 
     /**
-     * The '<em><b>Average</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Average</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Average</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #AVERAGE
-     * @model name="Average" literal="AVERAGE"
-     * @generated
-     * @ordered
-     */
+	 * @see #AVERAGE
+	 * @model name="Average" literal="AVERAGE"
+	 * @generated
+	 * @ordered
+	 */
     public static final int AVERAGE_VALUE = 3;
 
     /**
-     * The '<em><b>Minimum</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Minimum</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Minimum</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #MINIMUM
-     * @model name="Minimum" literal="MINIMUM"
-     * @generated
-     * @ordered
-     */
+	 * @see #MINIMUM
+	 * @model name="Minimum" literal="MINIMUM"
+	 * @generated
+	 * @ordered
+	 */
     public static final int MINIMUM_VALUE = 4;
 
     /**
-     * The '<em><b>Maximum</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Maximum</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Maximum</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #MAXIMUM
-     * @model name="Maximum" literal="MAXIMUM"
-     * @generated
-     * @ordered
-     */
+	 * @see #MAXIMUM
+	 * @model name="Maximum" literal="MAXIMUM"
+	 * @generated
+	 * @ordered
+	 */
     public static final int MAXIMUM_VALUE = 5;
 
     /**
-     * The '<em><b>Standard Deviation</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Standard Deviation</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Standard Deviation</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #STANDARD_DEVIATION
-     * @model name="StandardDeviation" literal="STAMDARD_DEVIATION"
-     * @generated
-     * @ordered
-     */
+	 * @see #STANDARD_DEVIATION
+	 * @model name="StandardDeviation" literal="STAMDARD_DEVIATION"
+	 * @generated
+	 * @ordered
+	 */
     public static final int STANDARD_DEVIATION_VALUE = 6;
 
     /**
-     * The '<em><b>Variance</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Variance</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Variance</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #VARIANCE
-     * @model name="Variance" literal="VARIANCE"
-     * @generated
-     * @ordered
-     */
+	 * @see #VARIANCE
+	 * @model name="Variance" literal="VARIANCE"
+	 * @generated
+	 * @ordered
+	 */
     public static final int VARIANCE_VALUE = 7;
 
     /**
-     * The '<em><b>Custom</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Custom</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Custom</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #CUSTOM
-     * @model name="Custom" literal="CUSTOM"
-     * @generated
-     * @ordered
-     */
+	 * @see #CUSTOM
+	 * @model name="Custom" literal="CUSTOM"
+	 * @generated
+	 * @ordered
+	 */
     public static final int CUSTOM_VALUE = 1000;
 
     /**
-     * An array of all the '<em><b>Scale Type</b></em>' enumerators.
-     * <!-- begin-user-doc -->
+	 * An array of all the '<em><b>Scale Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private static final ScaleType[] VALUES_ARRAY =
         new ScaleType[] {
-            INDIVIDUAL,
-            COUNT,
-            SUM,
-            AVERAGE,
-            MINIMUM,
-            MAXIMUM,
-            STANDARD_DEVIATION,
-            VARIANCE,
-            CUSTOM,
-        };
+			INDIVIDUAL,
+			COUNT,
+			SUM,
+			AVERAGE,
+			MINIMUM,
+			MAXIMUM,
+			STANDARD_DEVIATION,
+			VARIANCE,
+			CUSTOM,
+		};
 
     /**
-     * A public read-only list of all the '<em><b>Scale Type</b></em>' enumerators.
-     * <!-- begin-user-doc -->
+	 * A public read-only list of all the '<em><b>Scale Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static final List<ScaleType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
     /**
-     * Returns the '<em><b>Scale Type</b></em>' literal with the specified literal value.
-     * <!-- begin-user-doc -->
+	 * Returns the '<em><b>Scale Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static ScaleType get(String literal) {
-        for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-            ScaleType result = VALUES_ARRAY[i];
-            if (result.toString().equals(literal)) {
-                return result;
-            }
-        }
-        return null;
-    }
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ScaleType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
 
     /**
-     * Returns the '<em><b>Scale Type</b></em>' literal with the specified name.
-     * <!-- begin-user-doc -->
+	 * Returns the '<em><b>Scale Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static ScaleType getByName(String name) {
-        for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-            ScaleType result = VALUES_ARRAY[i];
-            if (result.getName().equals(name)) {
-                return result;
-            }
-        }
-        return null;
-    }
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ScaleType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
 
     /**
-     * Returns the '<em><b>Scale Type</b></em>' literal with the specified integer value.
-     * <!-- begin-user-doc -->
+	 * Returns the '<em><b>Scale Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static ScaleType get(int value) {
-        switch (value) {
-            case INDIVIDUAL_VALUE: return INDIVIDUAL;
-            case COUNT_VALUE: return COUNT;
-            case SUM_VALUE: return SUM;
-            case AVERAGE_VALUE: return AVERAGE;
-            case MINIMUM_VALUE: return MINIMUM;
-            case MAXIMUM_VALUE: return MAXIMUM;
-            case STANDARD_DEVIATION_VALUE: return STANDARD_DEVIATION;
-            case VARIANCE_VALUE: return VARIANCE;
-            case CUSTOM_VALUE: return CUSTOM;
-        }
-        return null;
-    }
+		switch (value) {
+			case INDIVIDUAL_VALUE: return INDIVIDUAL;
+			case COUNT_VALUE: return COUNT;
+			case SUM_VALUE: return SUM;
+			case AVERAGE_VALUE: return AVERAGE;
+			case MINIMUM_VALUE: return MINIMUM;
+			case MAXIMUM_VALUE: return MAXIMUM;
+			case STANDARD_DEVIATION_VALUE: return STANDARD_DEVIATION;
+			case VARIANCE_VALUE: return VARIANCE;
+			case CUSTOM_VALUE: return CUSTOM;
+		}
+		return null;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private final int value;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private final String name;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private final String literal;
 
     /**
-     * Only this class can construct instances.
-     * <!-- begin-user-doc -->
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private ScaleType(int value, String name, String literal) {
-        this.value = value;
-        this.name = name;
-        this.literal = literal;
-    }
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public int getValue() {
-      return value;
-    }
+	  return value;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public String getName() {
-      return name;
-    }
+	  return name;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public String getLiteral() {
-      return literal;
-    }
+	  return literal;
+	}
 
     /**
-     * Returns the literal value of the enumerator, which is its string representation.
-     * <!-- begin-user-doc -->
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public String toString() {
-        return literal;
-    }
+		return literal;
+	}
     
 } //ScaleType
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/CatalogImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/CatalogImpl.java
index cc18687..63b4702 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/CatalogImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/CatalogImpl.java
@@ -20,6 +20,9 @@
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.InternalEObject;
 
+import org.eclipse.emf.ecore.impl.FlatEObjectImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.BasicInternalEList;
 import org.eclipse.emf.ecore.impl.EObjectImpl;
 
 import org.eclipse.emf.ecore.util.EObjectContainmentEList;
@@ -39,120 +42,120 @@
  *
  * @generated
  */
-public class CatalogImpl extends EObjectImpl implements Catalog {
+public class CatalogImpl extends FlatEObjectImpl implements Catalog {
     /**
-     * The cached value of the '{@link #getRuns() <em>Runs</em>}' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getRuns() <em>Runs</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getRuns()
-     * @generated
-     * @ordered
-     */
+	 * @see #getRuns()
+	 * @generated
+	 * @ordered
+	 */
     protected EList<Run> runs;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected CatalogImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EClass eStaticClass() {
-        return DataPackage.Literals.CATALOG;
-    }
+		return DataPackage.Literals.CATALOG;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EList<Run> getRuns() {
-        if (runs == null) {
-            runs = new EObjectContainmentEList<Run>(Run.class, this, DataPackage.CATALOG__RUNS);
-        }
-        return runs;
-    }
+		if (runs == null) {
+			runs = new EObjectContainmentEList<Run>(Run.class, this, DataPackage.CATALOG__RUNS);
+		}
+		return runs;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-        switch (featureID) {
-            case DataPackage.CATALOG__RUNS:
-                return ((InternalEList<?>)getRuns()).basicRemove(otherEnd, msgs);
-        }
-        return super.eInverseRemove(otherEnd, featureID, msgs);
-    }
+		switch (featureID) {
+			case DataPackage.CATALOG__RUNS:
+				return ((InternalEList<?>)getRuns()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object eGet(int featureID, boolean resolve, boolean coreType) {
-        switch (featureID) {
-            case DataPackage.CATALOG__RUNS:
-                return getRuns();
-        }
-        return super.eGet(featureID, resolve, coreType);
-    }
+		switch (featureID) {
+			case DataPackage.CATALOG__RUNS:
+				return getRuns();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @SuppressWarnings("unchecked")
     @Override
     public void eSet(int featureID, Object newValue) {
-        switch (featureID) {
-            case DataPackage.CATALOG__RUNS:
-                getRuns().clear();
-                getRuns().addAll((Collection<? extends Run>)newValue);
-                return;
-        }
-        super.eSet(featureID, newValue);
-    }
+		switch (featureID) {
+			case DataPackage.CATALOG__RUNS:
+				getRuns().clear();
+				getRuns().addAll((Collection<? extends Run>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void eUnset(int featureID) {
-        switch (featureID) {
-            case DataPackage.CATALOG__RUNS:
-                getRuns().clear();
-                return;
-        }
-        super.eUnset(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.CATALOG__RUNS:
+				getRuns().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean eIsSet(int featureID) {
-        switch (featureID) {
-            case DataPackage.CATALOG__RUNS:
-                return runs != null && !runs.isEmpty();
-        }
-        return super.eIsSet(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.CATALOG__RUNS:
+				return runs != null && !runs.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
 
 } //CatalogImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataFactoryImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataFactoryImpl.java
index a7a5f98..0e8c149 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataFactoryImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataFactoryImpl.java
@@ -25,181 +25,181 @@
  */
 public class DataFactoryImpl extends EFactoryImpl implements DataFactory {
     /**
-     * Creates the default factory implementation.
-     * <!-- begin-user-doc -->
+	 * Creates the default factory implementation.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static DataFactory init() {
-        try {
-            DataFactory theDataFactory = (DataFactory)EPackage.Registry.INSTANCE.getEFactory("http://eclipse.org/amp/amf/AData"); 
-            if (theDataFactory != null) {
-                return theDataFactory;
-            }
-        }
-        catch (Exception exception) {
-            EcorePlugin.INSTANCE.log(exception);
-        }
-        return new DataFactoryImpl();
-    }
+		try {
+			DataFactory theDataFactory = (DataFactory)EPackage.Registry.INSTANCE.getEFactory("http://eclipse.org/amp/amf/AData"); 
+			if (theDataFactory != null) {
+				return theDataFactory;
+			}
+		}
+		catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new DataFactoryImpl();
+	}
 
     /**
-     * Creates an instance of the factory.
-     * <!-- begin-user-doc -->
+	 * Creates an instance of the factory.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public DataFactoryImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public EObject create(EClass eClass) {
-        switch (eClass.getClassifierID()) {
-            case DataPackage.RUN: return createRun();
-            case DataPackage.PARAMETER: return createParameter();
-            case DataPackage.DATA_POINT: return createDataPoint();
-            case DataPackage.CATALOG: return createCatalog();
-            case DataPackage.MEASUREMENT: return createMeasurement();
-            case DataPackage.PARAMETER_SET: return createParameterSet();
-            default:
-                throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
-        }
-    }
+		switch (eClass.getClassifierID()) {
+			case DataPackage.RUN: return createRun();
+			case DataPackage.PARAMETER: return createParameter();
+			case DataPackage.DATA_POINT: return createDataPoint();
+			case DataPackage.CATALOG: return createCatalog();
+			case DataPackage.MEASUREMENT: return createMeasurement();
+			case DataPackage.PARAMETER_SET: return createParameterSet();
+			default:
+				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+		}
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object createFromString(EDataType eDataType, String initialValue) {
-        switch (eDataType.getClassifierID()) {
-            case DataPackage.SCALE_TYPE:
-                return createScaleTypeFromString(eDataType, initialValue);
-            default:
-                throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
-        }
-    }
+		switch (eDataType.getClassifierID()) {
+			case DataPackage.SCALE_TYPE:
+				return createScaleTypeFromString(eDataType, initialValue);
+			default:
+				throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+		}
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public String convertToString(EDataType eDataType, Object instanceValue) {
-        switch (eDataType.getClassifierID()) {
-            case DataPackage.SCALE_TYPE:
-                return convertScaleTypeToString(eDataType, instanceValue);
-            default:
-                throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
-        }
-    }
+		switch (eDataType.getClassifierID()) {
+			case DataPackage.SCALE_TYPE:
+				return convertScaleTypeToString(eDataType, instanceValue);
+			default:
+				throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+		}
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Run createRun() {
-        RunImpl run = new RunImpl();
-        return run;
-    }
+		RunImpl run = new RunImpl();
+		return run;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Parameter createParameter() {
-        ParameterImpl parameter = new ParameterImpl();
-        return parameter;
-    }
+		ParameterImpl parameter = new ParameterImpl();
+		return parameter;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public DataPoint createDataPoint() {
-        DataPointImpl dataPoint = new DataPointImpl();
-        return dataPoint;
-    }
+		DataPointImpl dataPoint = new DataPointImpl();
+		return dataPoint;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Catalog createCatalog() {
-        CatalogImpl catalog = new CatalogImpl();
-        return catalog;
-    }
+		CatalogImpl catalog = new CatalogImpl();
+		return catalog;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Measurement createMeasurement() {
-        MeasurementImpl measurement = new MeasurementImpl();
-        return measurement;
-    }
+		MeasurementImpl measurement = new MeasurementImpl();
+		return measurement;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ParameterSet createParameterSet() {
-        ParameterSetImpl parameterSet = new ParameterSetImpl();
-        return parameterSet;
-    }
+		ParameterSetImpl parameterSet = new ParameterSetImpl();
+		return parameterSet;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ScaleType createScaleTypeFromString(EDataType eDataType, String initialValue) {
-        ScaleType result = ScaleType.get(initialValue);
-        if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
-        return result;
-    }
+		ScaleType result = ScaleType.get(initialValue);
+		if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public String convertScaleTypeToString(EDataType eDataType, Object instanceValue) {
-        return instanceValue == null ? null : instanceValue.toString();
-    }
+		return instanceValue == null ? null : instanceValue.toString();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public DataPackage getDataPackage() {
-        return (DataPackage)getEPackage();
-    }
+		return (DataPackage)getEPackage();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @deprecated
-     * @generated
-     */
+	 * @deprecated
+	 * @generated
+	 */
     @Deprecated
     public static DataPackage getPackage() {
-        return DataPackage.eINSTANCE;
-    }
+		return DataPackage.eINSTANCE;
+	}
 
 } //DataFactoryImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataPackageImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataPackageImpl.java
index 74f4861..8d1b932 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataPackageImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataPackageImpl.java
@@ -6,8 +6,6 @@
  */
 package org.eclipse.amp.amf.adata.impl;
 
-import org.eclipse.amp.amf.abase.aBase.ABasePackage;
-
 import org.eclipse.amp.amf.adata.Catalog;
 import org.eclipse.amp.amf.adata.DataFactory;
 import org.eclipse.amp.amf.adata.DataPackage;
@@ -17,15 +15,12 @@
 import org.eclipse.amp.amf.adata.ParameterSet;
 import org.eclipse.amp.amf.adata.Run;
 import org.eclipse.amp.amf.adata.ScaleType;
-
 import org.eclipse.emf.ecore.EAttribute;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EEnum;
 import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.EReference;
-
 import org.eclipse.emf.ecore.impl.EPackageImpl;
-
 import org.metaabm.MetaABMPackage;
 
 /**
@@ -36,504 +31,493 @@
  */
 public class DataPackageImpl extends EPackageImpl implements DataPackage {
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EClass runEClass = null;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EClass parameterEClass = null;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EClass dataPointEClass = null;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EClass catalogEClass = null;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EClass measurementEClass = null;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EClass parameterSetEClass = null;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EEnum scaleTypeEEnum = null;
 
     /**
-     * Creates an instance of the model <b>Package</b>, registered with
-     * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
-     * package URI value.
-     * <p>Note: the correct way to create the package is via the static
-     * factory method {@link #init init()}, which also performs
-     * initialization of the package, or returns the registered package,
-     * if one already exists.
-     * <!-- begin-user-doc -->
+	 * Creates an instance of the model <b>Package</b>, registered with
+	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+	 * package URI value.
+	 * <p>Note: the correct way to create the package is via the static
+	 * factory method {@link #init init()}, which also performs
+	 * initialization of the package, or returns the registered package,
+	 * if one already exists.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.emf.ecore.EPackage.Registry
-     * @see org.eclipse.amp.amf.adata.DataPackage#eNS_URI
-     * @see #init()
-     * @generated
-     */
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see org.eclipse.amp.amf.adata.DataPackage#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
     private DataPackageImpl() {
-        super(eNS_URI, DataFactory.eINSTANCE);
-    }
+		super(eNS_URI, DataFactory.eINSTANCE);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private static boolean isInited = false;
 
     /**
-     * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
-     * 
-     * <p>This method is used to initialize {@link DataPackage#eINSTANCE} when that field is accessed.
-     * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
-     * <!-- begin-user-doc -->
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+	 * 
+	 * <p>This method is used to initialize {@link DataPackage#eINSTANCE} when that field is accessed.
+	 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #eNS_URI
-     * @see #createPackageContents()
-     * @see #initializePackageContents()
-     * @generated
-     */
+	 * @see #eNS_URI
+	 * @see #createPackageContents()
+	 * @see #initializePackageContents()
+	 * @generated
+	 */
     public static DataPackage init() {
-        if (isInited) return (DataPackage)EPackage.Registry.INSTANCE.getEPackage(DataPackage.eNS_URI);
+		if (isInited) return (DataPackage)EPackage.Registry.INSTANCE.getEPackage(DataPackage.eNS_URI);
 
-        // Obtain or create and register package
-        DataPackageImpl theDataPackage = (DataPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof DataPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new DataPackageImpl());
+		// Obtain or create and register package
+		DataPackageImpl theDataPackage = (DataPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof DataPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new DataPackageImpl());
 
-        isInited = true;
+		isInited = true;
 
-        // Initialize simple dependencies
-        MetaABMPackage.eINSTANCE.eClass();
+		// Initialize simple dependencies
+		MetaABMPackage.eINSTANCE.eClass();
 
-        // Create package meta-data objects
-        theDataPackage.createPackageContents();
+		// Create package meta-data objects
+		theDataPackage.createPackageContents();
 
-        // Initialize created meta-data
-        theDataPackage.initializePackageContents();
+		// Initialize created meta-data
+		theDataPackage.initializePackageContents();
 
-        // Mark meta-data to indicate it can't be changed
-        theDataPackage.freeze();
+		// Mark meta-data to indicate it can't be changed
+		theDataPackage.freeze();
 
   
-        // Update the registry and return the package
-        EPackage.Registry.INSTANCE.put(DataPackage.eNS_URI, theDataPackage);
-        return theDataPackage;
-    }
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(DataPackage.eNS_URI, theDataPackage);
+		return theDataPackage;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EClass getRun() {
-        return runEClass;
-    }
+		return runEClass;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getRun_Model() {
-        return (EReference)runEClass.getEStructuralFeatures().get(0);
-    }
+		return (EReference)runEClass.getEStructuralFeatures().get(0);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getRun_Started() {
-        return (EAttribute)runEClass.getEStructuralFeatures().get(1);
-    }
+		return (EAttribute)runEClass.getEStructuralFeatures().get(1);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getRun_Finished() {
-        return (EAttribute)runEClass.getEStructuralFeatures().get(2);
-    }
+		return (EAttribute)runEClass.getEStructuralFeatures().get(2);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getRun_Entries() {
-        return (EReference)runEClass.getEStructuralFeatures().get(3);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getRun_Name() {
-        return (EAttribute)runEClass.getEStructuralFeatures().get(4);
-    }
+		return (EAttribute)runEClass.getEStructuralFeatures().get(3);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getRun_ParameterSets() {
-        return (EReference)runEClass.getEStructuralFeatures().get(5);
-    }
+		return (EReference)runEClass.getEStructuralFeatures().get(4);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getRun_Measurements() {
-        return (EReference)runEClass.getEStructuralFeatures().get(6);
-    }
+		return (EReference)runEClass.getEStructuralFeatures().get(5);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EClass getParameter() {
-        return parameterEClass;
-    }
+		return parameterEClass;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getParameter_Attribute() {
-        return (EReference)parameterEClass.getEStructuralFeatures().get(1);
-    }
+		return (EReference)parameterEClass.getEStructuralFeatures().get(1);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getParameter_Name() {
-        return (EAttribute)parameterEClass.getEStructuralFeatures().get(2);
-    }
+		return (EAttribute)parameterEClass.getEStructuralFeatures().get(2);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getParameter_Value() {
-        return (EAttribute)parameterEClass.getEStructuralFeatures().get(0);
-    }
+		return (EAttribute)parameterEClass.getEStructuralFeatures().get(0);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EClass getDataPoint() {
-        return dataPointEClass;
-    }
+		return dataPointEClass;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getDataPoint_Period() {
-        return (EAttribute)dataPointEClass.getEStructuralFeatures().get(0);
-    }
+		return (EAttribute)dataPointEClass.getEStructuralFeatures().get(0);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getDataPoint_Value() {
-        return (EAttribute)dataPointEClass.getEStructuralFeatures().get(1);
-    }
+		return (EAttribute)dataPointEClass.getEStructuralFeatures().get(1);
+	}
 
     /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getDataPoint_Run() {
-        return (EReference)dataPointEClass.getEStructuralFeatures().get(2);
-    }
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDataPoint_Measurement() {
+		return (EReference)dataPointEClass.getEStructuralFeatures().get(2);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
+				/**
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
-    public EReference getDataPoint_Measure() {
-        return (EReference)dataPointEClass.getEStructuralFeatures().get(3);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EClass getCatalog() {
-        return catalogEClass;
-    }
+		return catalogEClass;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getCatalog_Runs() {
-        return (EReference)catalogEClass.getEStructuralFeatures().get(0);
-    }
+		return (EReference)catalogEClass.getEStructuralFeatures().get(0);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EClass getMeasurement() {
-        return measurementEClass;
-    }
+		return measurementEClass;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getMeasurement_Type() {
-        return (EAttribute)measurementEClass.getEStructuralFeatures().get(0);
-    }
+		return (EAttribute)measurementEClass.getEStructuralFeatures().get(0);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getMeasurement_Value() {
-        return (EReference)measurementEClass.getEStructuralFeatures().get(1);
-    }
+		return (EReference)measurementEClass.getEStructuralFeatures().get(1);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getMeasurement_Name() {
-        return (EAttribute)measurementEClass.getEStructuralFeatures().get(2);
-    }
+		return (EAttribute)measurementEClass.getEStructuralFeatures().get(2);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getMeasurement_Entries() {
-        return (EReference)measurementEClass.getEStructuralFeatures().get(3);
-    }
+		return (EReference)measurementEClass.getEStructuralFeatures().get(3);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getMeasurement_Run() {
+		return (EReference)measurementEClass.getEStructuralFeatures().get(4);
+	}
+
+				/**
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EClass getParameterSet() {
-        return parameterSetEClass;
-    }
+		return parameterSetEClass;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getParameterSet_Members() {
-        return (EReference)parameterSetEClass.getEStructuralFeatures().get(0);
-    }
+		return (EReference)parameterSetEClass.getEStructuralFeatures().get(0);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EEnum getScaleType() {
-        return scaleTypeEEnum;
-    }
+		return scaleTypeEEnum;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public DataFactory getDataFactory() {
-        return (DataFactory)getEFactoryInstance();
-    }
+		return (DataFactory)getEFactoryInstance();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private boolean isCreated = false;
 
     /**
-     * Creates the meta-model objects for the package.  This method is
-     * guarded to have no affect on any invocation but its first.
-     * <!-- begin-user-doc -->
+	 * Creates the meta-model objects for the package.  This method is
+	 * guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void createPackageContents() {
-        if (isCreated) return;
-        isCreated = true;
+		if (isCreated) return;
+		isCreated = true;
 
-        // Create classes and their features
-        runEClass = createEClass(RUN);
-        createEReference(runEClass, RUN__MODEL);
-        createEAttribute(runEClass, RUN__STARTED);
-        createEAttribute(runEClass, RUN__FINISHED);
-        createEReference(runEClass, RUN__ENTRIES);
-        createEAttribute(runEClass, RUN__NAME);
-        createEReference(runEClass, RUN__PARAMETER_SETS);
-        createEReference(runEClass, RUN__MEASUREMENTS);
+		// Create classes and their features
+		runEClass = createEClass(RUN);
+		createEReference(runEClass, RUN__MODEL);
+		createEAttribute(runEClass, RUN__STARTED);
+		createEAttribute(runEClass, RUN__FINISHED);
+		createEAttribute(runEClass, RUN__NAME);
+		createEReference(runEClass, RUN__PARAMETER_SETS);
+		createEReference(runEClass, RUN__MEASUREMENTS);
 
-        parameterEClass = createEClass(PARAMETER);
-        createEAttribute(parameterEClass, PARAMETER__VALUE);
-        createEReference(parameterEClass, PARAMETER__ATTRIBUTE);
-        createEAttribute(parameterEClass, PARAMETER__NAME);
+		parameterEClass = createEClass(PARAMETER);
+		createEAttribute(parameterEClass, PARAMETER__VALUE);
+		createEReference(parameterEClass, PARAMETER__ATTRIBUTE);
+		createEAttribute(parameterEClass, PARAMETER__NAME);
 
-        dataPointEClass = createEClass(DATA_POINT);
-        createEAttribute(dataPointEClass, DATA_POINT__PERIOD);
-        createEAttribute(dataPointEClass, DATA_POINT__VALUE);
-        createEReference(dataPointEClass, DATA_POINT__RUN);
-        createEReference(dataPointEClass, DATA_POINT__MEASURE);
+		dataPointEClass = createEClass(DATA_POINT);
+		createEAttribute(dataPointEClass, DATA_POINT__PERIOD);
+		createEAttribute(dataPointEClass, DATA_POINT__VALUE);
+		createEReference(dataPointEClass, DATA_POINT__MEASUREMENT);
 
-        catalogEClass = createEClass(CATALOG);
-        createEReference(catalogEClass, CATALOG__RUNS);
+		catalogEClass = createEClass(CATALOG);
+		createEReference(catalogEClass, CATALOG__RUNS);
 
-        measurementEClass = createEClass(MEASUREMENT);
-        createEAttribute(measurementEClass, MEASUREMENT__TYPE);
-        createEReference(measurementEClass, MEASUREMENT__VALUE);
-        createEAttribute(measurementEClass, MEASUREMENT__NAME);
-        createEReference(measurementEClass, MEASUREMENT__ENTRIES);
+		measurementEClass = createEClass(MEASUREMENT);
+		createEAttribute(measurementEClass, MEASUREMENT__TYPE);
+		createEReference(measurementEClass, MEASUREMENT__VALUE);
+		createEAttribute(measurementEClass, MEASUREMENT__NAME);
+		createEReference(measurementEClass, MEASUREMENT__ENTRIES);
+		createEReference(measurementEClass, MEASUREMENT__RUN);
 
-        parameterSetEClass = createEClass(PARAMETER_SET);
-        createEReference(parameterSetEClass, PARAMETER_SET__MEMBERS);
+		parameterSetEClass = createEClass(PARAMETER_SET);
+		createEReference(parameterSetEClass, PARAMETER_SET__MEMBERS);
 
-        // Create enums
-        scaleTypeEEnum = createEEnum(SCALE_TYPE);
-    }
+		// Create enums
+		scaleTypeEEnum = createEEnum(SCALE_TYPE);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private boolean isInitialized = false;
 
     /**
-     * Complete the initialization of the package and its meta-model.  This
-     * method is guarded to have no affect on any invocation but its first.
-     * <!-- begin-user-doc -->
+	 * Complete the initialization of the package and its meta-model.  This
+	 * method is guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void initializePackageContents() {
-        if (isInitialized) return;
-        isInitialized = true;
+		if (isInitialized) return;
+		isInitialized = true;
 
-        // Initialize package
-        setName(eNAME);
-        setNsPrefix(eNS_PREFIX);
-        setNsURI(eNS_URI);
+		// Initialize package
+		setName(eNAME);
+		setNsPrefix(eNS_PREFIX);
+		setNsURI(eNS_URI);
 
-        // Obtain other dependent packages
-        MetaABMPackage theMetaABMPackage = (MetaABMPackage)EPackage.Registry.INSTANCE.getEPackage(MetaABMPackage.eNS_URI);
+		// Obtain other dependent packages
+		MetaABMPackage theMetaABMPackage = (MetaABMPackage)EPackage.Registry.INSTANCE.getEPackage(MetaABMPackage.eNS_URI);
 
-        // Create type parameters
+		// Create type parameters
 
-        // Set bounds for type parameters
+		// Set bounds for type parameters
 
-        // Add supertypes to classes
+		// Add supertypes to classes
 
-        // Initialize classes and features; add operations and parameters
-        initEClass(runEClass, Run.class, "Run", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEReference(getRun_Model(), theMetaABMPackage.getSContext(), null, "model", null, 1, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getRun_Started(), ecorePackage.getEDate(), "started", null, 0, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getRun_Finished(), ecorePackage.getEDate(), "finished", null, 0, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getRun_Entries(), this.getDataPoint(), this.getDataPoint_Run(), "entries", null, 0, -1, Run.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
-        initEAttribute(getRun_Name(), ecorePackage.getEString(), "name", null, 1, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getRun_ParameterSets(), this.getParameterSet(), null, "parameterSets", null, 0, -1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getRun_Measurements(), this.getMeasurement(), null, "measurements", null, 0, -1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		// Initialize classes and features; add operations and parameters
+		initEClass(runEClass, Run.class, "Run", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getRun_Model(), theMetaABMPackage.getSContext(), null, "model", null, 1, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getRun_Started(), ecorePackage.getEDate(), "started", null, 0, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getRun_Finished(), ecorePackage.getEDate(), "finished", null, 0, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getRun_Name(), ecorePackage.getEString(), "name", null, 1, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getRun_ParameterSets(), this.getParameterSet(), null, "parameterSets", null, 0, -1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getRun_Measurements(), this.getMeasurement(), this.getMeasurement_Run(), "measurements", null, 0, -1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-        initEClass(parameterEClass, Parameter.class, "Parameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getParameter_Value(), ecorePackage.getEString(), "value", null, 1, 1, Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getParameter_Attribute(), theMetaABMPackage.getSAttribute(), null, "attribute", null, 0, 1, Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getParameter_Name(), ecorePackage.getEString(), "name", null, 1, 1, Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEClass(parameterEClass, Parameter.class, "Parameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getParameter_Value(), ecorePackage.getEString(), "value", null, 1, 1, Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getParameter_Attribute(), theMetaABMPackage.getSAttribute(), null, "attribute", null, 0, 1, Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getParameter_Name(), ecorePackage.getEString(), "name", null, 1, 1, Parameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-        initEClass(dataPointEClass, DataPoint.class, "DataPoint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getDataPoint_Period(), ecorePackage.getELong(), "period", null, 0, 1, DataPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
-        initEAttribute(getDataPoint_Value(), ecorePackage.getEDouble(), "value", null, 0, 1, DataPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getDataPoint_Run(), this.getRun(), this.getRun_Entries(), "run", null, 0, 1, DataPoint.class, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getDataPoint_Measure(), this.getMeasurement(), null, "measure", null, 0, 1, DataPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEClass(dataPointEClass, DataPoint.class, "DataPoint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getDataPoint_Period(), ecorePackage.getELong(), "period", null, 0, 1, DataPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getDataPoint_Value(), ecorePackage.getEDouble(), "value", null, 0, 1, DataPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDataPoint_Measurement(), this.getMeasurement(), this.getMeasurement_Entries(), "measurement", null, 1, 1, DataPoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-        initEClass(catalogEClass, Catalog.class, "Catalog", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEReference(getCatalog_Runs(), this.getRun(), null, "runs", null, 0, -1, Catalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEClass(catalogEClass, Catalog.class, "Catalog", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getCatalog_Runs(), this.getRun(), null, "runs", null, 0, -1, Catalog.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-        initEClass(measurementEClass, Measurement.class, "Measurement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getMeasurement_Type(), this.getScaleType(), "type", null, 0, 1, Measurement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
-        initEReference(getMeasurement_Value(), theMetaABMPackage.getIValue(), null, "value", null, 0, 1, Measurement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getMeasurement_Name(), ecorePackage.getEString(), "name", null, 1, 1, Measurement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getMeasurement_Entries(), this.getDataPoint(), null, "entries", null, 0, -1, Measurement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEClass(measurementEClass, Measurement.class, "Measurement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getMeasurement_Type(), this.getScaleType(), "type", null, 0, 1, Measurement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getMeasurement_Value(), theMetaABMPackage.getIValue(), null, "value", null, 0, 1, Measurement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getMeasurement_Name(), ecorePackage.getEString(), "name", null, 1, 1, Measurement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getMeasurement_Entries(), this.getDataPoint(), this.getDataPoint_Measurement(), "entries", null, 0, -1, Measurement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getMeasurement_Run(), this.getRun(), this.getRun_Measurements(), "run", null, 1, 1, Measurement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-        initEClass(parameterSetEClass, ParameterSet.class, "ParameterSet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEReference(getParameterSet_Members(), this.getParameter(), null, "members", null, 0, -1, ParameterSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEClass(parameterSetEClass, ParameterSet.class, "ParameterSet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getParameterSet_Members(), this.getParameter(), null, "members", null, 0, -1, ParameterSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-        // Initialize enums and add enum literals
-        initEEnum(scaleTypeEEnum, ScaleType.class, "ScaleType");
-        addEEnumLiteral(scaleTypeEEnum, ScaleType.INDIVIDUAL);
-        addEEnumLiteral(scaleTypeEEnum, ScaleType.COUNT);
-        addEEnumLiteral(scaleTypeEEnum, ScaleType.SUM);
-        addEEnumLiteral(scaleTypeEEnum, ScaleType.AVERAGE);
-        addEEnumLiteral(scaleTypeEEnum, ScaleType.MINIMUM);
-        addEEnumLiteral(scaleTypeEEnum, ScaleType.MAXIMUM);
-        addEEnumLiteral(scaleTypeEEnum, ScaleType.STANDARD_DEVIATION);
-        addEEnumLiteral(scaleTypeEEnum, ScaleType.VARIANCE);
-        addEEnumLiteral(scaleTypeEEnum, ScaleType.CUSTOM);
+		// Initialize enums and add enum literals
+		initEEnum(scaleTypeEEnum, ScaleType.class, "ScaleType");
+		addEEnumLiteral(scaleTypeEEnum, ScaleType.INDIVIDUAL);
+		addEEnumLiteral(scaleTypeEEnum, ScaleType.COUNT);
+		addEEnumLiteral(scaleTypeEEnum, ScaleType.SUM);
+		addEEnumLiteral(scaleTypeEEnum, ScaleType.AVERAGE);
+		addEEnumLiteral(scaleTypeEEnum, ScaleType.MINIMUM);
+		addEEnumLiteral(scaleTypeEEnum, ScaleType.MAXIMUM);
+		addEEnumLiteral(scaleTypeEEnum, ScaleType.STANDARD_DEVIATION);
+		addEEnumLiteral(scaleTypeEEnum, ScaleType.VARIANCE);
+		addEEnumLiteral(scaleTypeEEnum, ScaleType.CUSTOM);
 
-        // Create resource
-        createResource(eNS_URI);
-    }
+		// Create resource
+		createResource(eNS_URI);
+	}
 
 } //DataPackageImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataPointImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataPointImpl.java
index a39f66d..a341fac 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataPointImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/DataPointImpl.java
@@ -18,6 +18,9 @@
 import org.eclipse.emf.ecore.InternalEObject;
 
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.FlatEObjectImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
 import org.eclipse.emf.ecore.impl.EObjectImpl;
 
 /**
@@ -29,369 +32,293 @@
  * <ul>
  *   <li>{@link org.eclipse.amp.amf.adata.impl.DataPointImpl#getPeriod <em>Period</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.impl.DataPointImpl#getValue <em>Value</em>}</li>
- *   <li>{@link org.eclipse.amp.amf.adata.impl.DataPointImpl#getRun <em>Run</em>}</li>
- *   <li>{@link org.eclipse.amp.amf.adata.impl.DataPointImpl#getMeasure <em>Measure</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.adata.impl.DataPointImpl#getMeasurement <em>Measurement</em>}</li>
  * </ul>
  * </p>
  *
  * @generated
  */
-public class DataPointImpl extends EObjectImpl implements DataPoint {
+public class DataPointImpl extends FlatEObjectImpl implements DataPoint {
     /**
-     * The default value of the '{@link #getPeriod() <em>Period</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getPeriod() <em>Period</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getPeriod()
-     * @generated
-     * @ordered
-     */
+	 * @see #getPeriod()
+	 * @generated
+	 * @ordered
+	 */
     protected static final long PERIOD_EDEFAULT = 0L;
 
     /**
-     * The cached value of the '{@link #getPeriod() <em>Period</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getPeriod() <em>Period</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getPeriod()
-     * @generated
-     * @ordered
-     */
+	 * @see #getPeriod()
+	 * @generated
+	 * @ordered
+	 */
     protected long period = PERIOD_EDEFAULT;
 
     /**
-     * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getValue()
-     * @generated
-     * @ordered
-     */
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
     protected static final double VALUE_EDEFAULT = 0.0;
 
     /**
-     * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getValue()
-     * @generated
-     * @ordered
-     */
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
     protected double value = VALUE_EDEFAULT;
 
     /**
-     * The cached value of the '{@link #getRun() <em>Run</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getRun()
-     * @generated
-     * @ordered
-     */
-    protected Run run;
-
-    /**
-     * The cached value of the '{@link #getMeasure() <em>Measure</em>}' reference.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getMeasure()
-     * @generated
-     * @ordered
-     */
-    protected Measurement measure;
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected DataPointImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EClass eStaticClass() {
-        return DataPackage.Literals.DATA_POINT;
-    }
+		return DataPackage.Literals.DATA_POINT;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public long getPeriod() {
-        return period;
-    }
+		return period;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setPeriod(long newPeriod) {
-        long oldPeriod = period;
-        period = newPeriod;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.DATA_POINT__PERIOD, oldPeriod, period));
-    }
+		long oldPeriod = period;
+		period = newPeriod;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.DATA_POINT__PERIOD, oldPeriod, period));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public double getValue() {
-        return value;
-    }
+		return value;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setValue(double newValue) {
-        double oldValue = value;
-        value = newValue;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.DATA_POINT__VALUE, oldValue, value));
-    }
+		double oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.DATA_POINT__VALUE, oldValue, value));
+	}
 
     /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public Run getRun() {
-        if (run != null && run.eIsProxy()) {
-            InternalEObject oldRun = (InternalEObject)run;
-            run = (Run)eResolveProxy(oldRun);
-            if (run != oldRun) {
-                if (eNotificationRequired())
-                    eNotify(new ENotificationImpl(this, Notification.RESOLVE, DataPackage.DATA_POINT__RUN, oldRun, run));
-            }
-        }
-        return run;
-    }
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public Measurement getMeasurement() {
+		if (eContainerFeatureID() != DataPackage.DATA_POINT__MEASUREMENT) return null;
+		return (Measurement)eContainer();
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public Run basicGetRun() {
-        return run;
-    }
+				/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetMeasurement(Measurement newMeasurement, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newMeasurement, DataPackage.DATA_POINT__MEASUREMENT, msgs);
+		return msgs;
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public NotificationChain basicSetRun(Run newRun, NotificationChain msgs) {
-        Run oldRun = run;
-        run = newRun;
-        if (eNotificationRequired()) {
-            ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, DataPackage.DATA_POINT__RUN, oldRun, newRun);
-            if (msgs == null) msgs = notification; else msgs.add(notification);
-        }
-        return msgs;
-    }
+				/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMeasurement(Measurement newMeasurement) {
+		if (newMeasurement != eInternalContainer() || (eContainerFeatureID() != DataPackage.DATA_POINT__MEASUREMENT && newMeasurement != null)) {
+			if (EcoreUtil.isAncestor(this, newMeasurement))
+				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+			NotificationChain msgs = null;
+			if (eInternalContainer() != null)
+				msgs = eBasicRemoveFromContainer(msgs);
+			if (newMeasurement != null)
+				msgs = ((InternalEObject)newMeasurement).eInverseAdd(this, DataPackage.MEASUREMENT__ENTRIES, Measurement.class, msgs);
+			msgs = basicSetMeasurement(newMeasurement, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.DATA_POINT__MEASUREMENT, newMeasurement, newMeasurement));
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setRun(Run newRun) {
-        if (newRun != run) {
-            NotificationChain msgs = null;
-            if (run != null)
-                msgs = ((InternalEObject)run).eInverseRemove(this, DataPackage.RUN__ENTRIES, Run.class, msgs);
-            if (newRun != null)
-                msgs = ((InternalEObject)newRun).eInverseAdd(this, DataPackage.RUN__ENTRIES, Run.class, msgs);
-            msgs = basicSetRun(newRun, msgs);
-            if (msgs != null) msgs.dispatch();
-        }
-        else if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.DATA_POINT__RUN, newRun, newRun));
-    }
+				/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case DataPackage.DATA_POINT__MEASUREMENT:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetMeasurement((Measurement)otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public Measurement getMeasure() {
-        if (measure != null && measure.eIsProxy()) {
-            InternalEObject oldMeasure = (InternalEObject)measure;
-            measure = (Measurement)eResolveProxy(oldMeasure);
-            if (measure != oldMeasure) {
-                if (eNotificationRequired())
-                    eNotify(new ENotificationImpl(this, Notification.RESOLVE, DataPackage.DATA_POINT__MEASURE, oldMeasure, measure));
-            }
-        }
-        return measure;
-    }
+				/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case DataPackage.DATA_POINT__MEASUREMENT:
+				return basicSetMeasurement(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public Measurement basicGetMeasure() {
-        return measure;
-    }
+				/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID()) {
+			case DataPackage.DATA_POINT__MEASUREMENT:
+				return eInternalContainer().eInverseRemove(this, DataPackage.MEASUREMENT__ENTRIES, Measurement.class, msgs);
+		}
+		return super.eBasicRemoveFromContainerFeature(msgs);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
+				/**
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
-    public void setMeasure(Measurement newMeasure) {
-        Measurement oldMeasure = measure;
-        measure = newMeasure;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.DATA_POINT__MEASURE, oldMeasure, measure));
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-        switch (featureID) {
-            case DataPackage.DATA_POINT__RUN:
-                if (run != null)
-                    msgs = ((InternalEObject)run).eInverseRemove(this, DataPackage.RUN__ENTRIES, Run.class, msgs);
-                return basicSetRun((Run)otherEnd, msgs);
-        }
-        return super.eInverseAdd(otherEnd, featureID, msgs);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-        switch (featureID) {
-            case DataPackage.DATA_POINT__RUN:
-                return basicSetRun(null, msgs);
-        }
-        return super.eInverseRemove(otherEnd, featureID, msgs);
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object eGet(int featureID, boolean resolve, boolean coreType) {
-        switch (featureID) {
-            case DataPackage.DATA_POINT__PERIOD:
-                return getPeriod();
-            case DataPackage.DATA_POINT__VALUE:
-                return getValue();
-            case DataPackage.DATA_POINT__RUN:
-                if (resolve) return getRun();
-                return basicGetRun();
-            case DataPackage.DATA_POINT__MEASURE:
-                if (resolve) return getMeasure();
-                return basicGetMeasure();
-        }
-        return super.eGet(featureID, resolve, coreType);
-    }
+		switch (featureID) {
+			case DataPackage.DATA_POINT__PERIOD:
+				return getPeriod();
+			case DataPackage.DATA_POINT__VALUE:
+				return getValue();
+			case DataPackage.DATA_POINT__MEASUREMENT:
+				return getMeasurement();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void eSet(int featureID, Object newValue) {
-        switch (featureID) {
-            case DataPackage.DATA_POINT__PERIOD:
-                setPeriod((Long)newValue);
-                return;
-            case DataPackage.DATA_POINT__VALUE:
-                setValue((Double)newValue);
-                return;
-            case DataPackage.DATA_POINT__RUN:
-                setRun((Run)newValue);
-                return;
-            case DataPackage.DATA_POINT__MEASURE:
-                setMeasure((Measurement)newValue);
-                return;
-        }
-        super.eSet(featureID, newValue);
-    }
+		switch (featureID) {
+			case DataPackage.DATA_POINT__PERIOD:
+				setPeriod((Long)newValue);
+				return;
+			case DataPackage.DATA_POINT__VALUE:
+				setValue((Double)newValue);
+				return;
+			case DataPackage.DATA_POINT__MEASUREMENT:
+				setMeasurement((Measurement)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void eUnset(int featureID) {
-        switch (featureID) {
-            case DataPackage.DATA_POINT__PERIOD:
-                setPeriod(PERIOD_EDEFAULT);
-                return;
-            case DataPackage.DATA_POINT__VALUE:
-                setValue(VALUE_EDEFAULT);
-                return;
-            case DataPackage.DATA_POINT__RUN:
-                setRun((Run)null);
-                return;
-            case DataPackage.DATA_POINT__MEASURE:
-                setMeasure((Measurement)null);
-                return;
-        }
-        super.eUnset(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.DATA_POINT__PERIOD:
+				setPeriod(PERIOD_EDEFAULT);
+				return;
+			case DataPackage.DATA_POINT__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case DataPackage.DATA_POINT__MEASUREMENT:
+				setMeasurement((Measurement)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean eIsSet(int featureID) {
-        switch (featureID) {
-            case DataPackage.DATA_POINT__PERIOD:
-                return period != PERIOD_EDEFAULT;
-            case DataPackage.DATA_POINT__VALUE:
-                return value != VALUE_EDEFAULT;
-            case DataPackage.DATA_POINT__RUN:
-                return run != null;
-            case DataPackage.DATA_POINT__MEASURE:
-                return measure != null;
-        }
-        return super.eIsSet(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.DATA_POINT__PERIOD:
+				return period != PERIOD_EDEFAULT;
+			case DataPackage.DATA_POINT__VALUE:
+				return value != VALUE_EDEFAULT;
+			case DataPackage.DATA_POINT__MEASUREMENT:
+				return getMeasurement() != null;
+		}
+		return super.eIsSet(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public String toString() {
-        if (eIsProxy()) return super.toString();
+		if (eIsProxy()) return super.toString();
 
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (period: ");
-        result.append(period);
-        result.append(", value: ");
-        result.append(value);
-        result.append(')');
-        return result.toString();
-    }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (period: ");
+		result.append(period);
+		result.append(", value: ");
+		result.append(value);
+		result.append(')');
+		return result.toString();
+	}
 
 } //DataPointImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/MeasurementImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/MeasurementImpl.java
index 2ec6034..72060c9 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/MeasurementImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/MeasurementImpl.java
@@ -10,6 +10,7 @@
 import org.eclipse.amp.amf.adata.DataPackage;
 import org.eclipse.amp.amf.adata.DataPoint;
 import org.eclipse.amp.amf.adata.Measurement;
+import org.eclipse.amp.amf.adata.Run;
 import org.eclipse.amp.amf.adata.ScaleType;
 
 import org.eclipse.emf.common.notify.Notification;
@@ -20,6 +21,11 @@
 import org.eclipse.emf.ecore.InternalEObject;
 
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.FlatEObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.BasicInternalEList;
 import org.eclipse.emf.ecore.impl.EObjectImpl;
 
 import org.eclipse.emf.ecore.util.EObjectContainmentEList;
@@ -38,304 +44,391 @@
  *   <li>{@link org.eclipse.amp.amf.adata.impl.MeasurementImpl#getValue <em>Value</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.impl.MeasurementImpl#getName <em>Name</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.impl.MeasurementImpl#getEntries <em>Entries</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.adata.impl.MeasurementImpl#getRun <em>Run</em>}</li>
  * </ul>
  * </p>
  *
  * @generated
  */
-public class MeasurementImpl extends EObjectImpl implements Measurement {
+public class MeasurementImpl extends FlatEObjectImpl implements Measurement {
     /**
-     * The default value of the '{@link #getType() <em>Type</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getType()
-     * @generated
-     * @ordered
-     */
+	 * @see #getType()
+	 * @generated
+	 * @ordered
+	 */
     protected static final ScaleType TYPE_EDEFAULT = ScaleType.INDIVIDUAL;
 
     /**
-     * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getType()
-     * @generated
-     * @ordered
-     */
+	 * @see #getType()
+	 * @generated
+	 * @ordered
+	 */
     protected ScaleType type = TYPE_EDEFAULT;
 
     /**
-     * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getValue()
-     * @generated
-     * @ordered
-     */
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
     protected IValue value;
 
     /**
-     * The default value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
     protected static final String NAME_EDEFAULT = null;
 
     /**
-     * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
     protected String name = NAME_EDEFAULT;
 
     /**
-     * The cached value of the '{@link #getEntries() <em>Entries</em>}' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getEntries() <em>Entries</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getEntries()
-     * @generated
-     * @ordered
-     */
+	 * @see #getEntries()
+	 * @generated
+	 * @ordered
+	 */
     protected EList<DataPoint> entries;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected MeasurementImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EClass eStaticClass() {
-        return DataPackage.Literals.MEASUREMENT;
-    }
+		return DataPackage.Literals.MEASUREMENT;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ScaleType getType() {
-        return type;
-    }
+		return type;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setType(ScaleType newType) {
-        ScaleType oldType = type;
-        type = newType == null ? TYPE_EDEFAULT : newType;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.MEASUREMENT__TYPE, oldType, type));
-    }
+		ScaleType oldType = type;
+		type = newType == null ? TYPE_EDEFAULT : newType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.MEASUREMENT__TYPE, oldType, type));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public IValue getValue() {
-        if (value != null && value.eIsProxy()) {
-            InternalEObject oldValue = (InternalEObject)value;
-            value = (IValue)eResolveProxy(oldValue);
-            if (value != oldValue) {
-                if (eNotificationRequired())
-                    eNotify(new ENotificationImpl(this, Notification.RESOLVE, DataPackage.MEASUREMENT__VALUE, oldValue, value));
-            }
-        }
-        return value;
-    }
+		if (value != null && value.eIsProxy()) {
+			InternalEObject oldValue = (InternalEObject)value;
+			value = (IValue)eResolveProxy(oldValue);
+			if (value != oldValue) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DataPackage.MEASUREMENT__VALUE, oldValue, value));
+			}
+		}
+		return value;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public IValue basicGetValue() {
-        return value;
-    }
+		return value;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setValue(IValue newValue) {
-        IValue oldValue = value;
-        value = newValue;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.MEASUREMENT__VALUE, oldValue, value));
-    }
+		IValue oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.MEASUREMENT__VALUE, oldValue, value));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public String getName() {
-        return name;
-    }
+		return name;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setName(String newName) {
-        String oldName = name;
-        name = newName;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.MEASUREMENT__NAME, oldName, name));
-    }
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.MEASUREMENT__NAME, oldName, name));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EList<DataPoint> getEntries() {
-        if (entries == null) {
-            entries = new EObjectContainmentEList<DataPoint>(DataPoint.class, this, DataPackage.MEASUREMENT__ENTRIES);
-        }
-        return entries;
-    }
+		if (entries == null) {
+			entries = new EObjectContainmentWithInverseEList<DataPoint>(DataPoint.class, this, DataPackage.MEASUREMENT__ENTRIES, DataPackage.DATA_POINT__MEASUREMENT);
+		}
+		return entries;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public Run getRun() {
+		if (eContainerFeatureID() != DataPackage.MEASUREMENT__RUN) return null;
+		return (Run)eContainer();
+	}
+
+				/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetRun(Run newRun, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject)newRun, DataPackage.MEASUREMENT__RUN, msgs);
+		return msgs;
+	}
+
+				/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRun(Run newRun) {
+		if (newRun != eInternalContainer() || (eContainerFeatureID() != DataPackage.MEASUREMENT__RUN && newRun != null)) {
+			if (EcoreUtil.isAncestor(this, newRun))
+				throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+			NotificationChain msgs = null;
+			if (eInternalContainer() != null)
+				msgs = eBasicRemoveFromContainer(msgs);
+			if (newRun != null)
+				msgs = ((InternalEObject)newRun).eInverseAdd(this, DataPackage.RUN__MEASUREMENTS, Run.class, msgs);
+			msgs = basicSetRun(newRun, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.MEASUREMENT__RUN, newRun, newRun));
+	}
+
+				/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case DataPackage.MEASUREMENT__ENTRIES:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getEntries()).basicAdd(otherEnd, msgs);
+			case DataPackage.MEASUREMENT__RUN:
+				if (eInternalContainer() != null)
+					msgs = eBasicRemoveFromContainer(msgs);
+				return basicSetRun((Run)otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
+
+				/**
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-        switch (featureID) {
-            case DataPackage.MEASUREMENT__ENTRIES:
-                return ((InternalEList<?>)getEntries()).basicRemove(otherEnd, msgs);
-        }
-        return super.eInverseRemove(otherEnd, featureID, msgs);
-    }
+		switch (featureID) {
+			case DataPackage.MEASUREMENT__ENTRIES:
+				return ((InternalEList<?>)getEntries()).basicRemove(otherEnd, msgs);
+			case DataPackage.MEASUREMENT__RUN:
+				return basicSetRun(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+		switch (eContainerFeatureID()) {
+			case DataPackage.MEASUREMENT__RUN:
+				return eInternalContainer().eInverseRemove(this, DataPackage.RUN__MEASUREMENTS, Run.class, msgs);
+		}
+		return super.eBasicRemoveFromContainerFeature(msgs);
+	}
+
+				/**
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object eGet(int featureID, boolean resolve, boolean coreType) {
-        switch (featureID) {
-            case DataPackage.MEASUREMENT__TYPE:
-                return getType();
-            case DataPackage.MEASUREMENT__VALUE:
-                if (resolve) return getValue();
-                return basicGetValue();
-            case DataPackage.MEASUREMENT__NAME:
-                return getName();
-            case DataPackage.MEASUREMENT__ENTRIES:
-                return getEntries();
-        }
-        return super.eGet(featureID, resolve, coreType);
-    }
+		switch (featureID) {
+			case DataPackage.MEASUREMENT__TYPE:
+				return getType();
+			case DataPackage.MEASUREMENT__VALUE:
+				if (resolve) return getValue();
+				return basicGetValue();
+			case DataPackage.MEASUREMENT__NAME:
+				return getName();
+			case DataPackage.MEASUREMENT__ENTRIES:
+				return getEntries();
+			case DataPackage.MEASUREMENT__RUN:
+				return getRun();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @SuppressWarnings("unchecked")
     @Override
     public void eSet(int featureID, Object newValue) {
-        switch (featureID) {
-            case DataPackage.MEASUREMENT__TYPE:
-                setType((ScaleType)newValue);
-                return;
-            case DataPackage.MEASUREMENT__VALUE:
-                setValue((IValue)newValue);
-                return;
-            case DataPackage.MEASUREMENT__NAME:
-                setName((String)newValue);
-                return;
-            case DataPackage.MEASUREMENT__ENTRIES:
-                getEntries().clear();
-                getEntries().addAll((Collection<? extends DataPoint>)newValue);
-                return;
-        }
-        super.eSet(featureID, newValue);
-    }
+		switch (featureID) {
+			case DataPackage.MEASUREMENT__TYPE:
+				setType((ScaleType)newValue);
+				return;
+			case DataPackage.MEASUREMENT__VALUE:
+				setValue((IValue)newValue);
+				return;
+			case DataPackage.MEASUREMENT__NAME:
+				setName((String)newValue);
+				return;
+			case DataPackage.MEASUREMENT__ENTRIES:
+				getEntries().clear();
+				getEntries().addAll((Collection<? extends DataPoint>)newValue);
+				return;
+			case DataPackage.MEASUREMENT__RUN:
+				setRun((Run)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void eUnset(int featureID) {
-        switch (featureID) {
-            case DataPackage.MEASUREMENT__TYPE:
-                setType(TYPE_EDEFAULT);
-                return;
-            case DataPackage.MEASUREMENT__VALUE:
-                setValue((IValue)null);
-                return;
-            case DataPackage.MEASUREMENT__NAME:
-                setName(NAME_EDEFAULT);
-                return;
-            case DataPackage.MEASUREMENT__ENTRIES:
-                getEntries().clear();
-                return;
-        }
-        super.eUnset(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.MEASUREMENT__TYPE:
+				setType(TYPE_EDEFAULT);
+				return;
+			case DataPackage.MEASUREMENT__VALUE:
+				setValue((IValue)null);
+				return;
+			case DataPackage.MEASUREMENT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case DataPackage.MEASUREMENT__ENTRIES:
+				getEntries().clear();
+				return;
+			case DataPackage.MEASUREMENT__RUN:
+				setRun((Run)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean eIsSet(int featureID) {
-        switch (featureID) {
-            case DataPackage.MEASUREMENT__TYPE:
-                return type != TYPE_EDEFAULT;
-            case DataPackage.MEASUREMENT__VALUE:
-                return value != null;
-            case DataPackage.MEASUREMENT__NAME:
-                return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-            case DataPackage.MEASUREMENT__ENTRIES:
-                return entries != null && !entries.isEmpty();
-        }
-        return super.eIsSet(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.MEASUREMENT__TYPE:
+				return type != TYPE_EDEFAULT;
+			case DataPackage.MEASUREMENT__VALUE:
+				return value != null;
+			case DataPackage.MEASUREMENT__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case DataPackage.MEASUREMENT__ENTRIES:
+				return entries != null && !entries.isEmpty();
+			case DataPackage.MEASUREMENT__RUN:
+				return getRun() != null;
+		}
+		return super.eIsSet(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public String toString() {
-        if (eIsProxy()) return super.toString();
+		if (eIsProxy()) return super.toString();
 
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (type: ");
-        result.append(type);
-        result.append(", name: ");
-        result.append(name);
-        result.append(')');
-        return result.toString();
-    }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (type: ");
+		result.append(type);
+		result.append(", name: ");
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
 
 } //MeasurementImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/ParameterImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/ParameterImpl.java
index 3335600..96c7571 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/ParameterImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/ParameterImpl.java
@@ -6,23 +6,14 @@
  */
 package org.eclipse.amp.amf.adata.impl;
 
-import java.util.Collection;
-import org.eclipse.amp.amf.abase.aBase.Value;
-
 import org.eclipse.amp.amf.adata.DataPackage;
 import org.eclipse.amp.amf.adata.Parameter;
-
 import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.common.util.EList;
 import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.InternalEObject;
-
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-import org.eclipse.emf.ecore.util.EDataTypeUniqueEList;
+import org.eclipse.emf.ecore.impl.FlatEObjectImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
 import org.metaabm.SAttribute;
 
 /**
@@ -40,252 +31,252 @@
  *
  * @generated
  */
-public class ParameterImpl extends EObjectImpl implements Parameter {
+public class ParameterImpl extends FlatEObjectImpl implements Parameter {
     /**
-     * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getValue()
-     * @generated
-     * @ordered
-     */
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
     protected static final String VALUE_EDEFAULT = null;
 
     /**
-     * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getValue()
-     * @generated
-     * @ordered
-     */
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
     protected String value = VALUE_EDEFAULT;
 
     /**
-     * The cached value of the '{@link #getAttribute() <em>Attribute</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getAttribute() <em>Attribute</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getAttribute()
-     * @generated
-     * @ordered
-     */
+	 * @see #getAttribute()
+	 * @generated
+	 * @ordered
+	 */
     protected SAttribute attribute;
 
     /**
-     * The default value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
     protected static final String NAME_EDEFAULT = null;
 
     /**
-     * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
     protected String name = NAME_EDEFAULT;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ParameterImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EClass eStaticClass() {
-        return DataPackage.Literals.PARAMETER;
-    }
+		return DataPackage.Literals.PARAMETER;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public SAttribute getAttribute() {
-        if (attribute != null && attribute.eIsProxy()) {
-            InternalEObject oldAttribute = (InternalEObject)attribute;
-            attribute = (SAttribute)eResolveProxy(oldAttribute);
-            if (attribute != oldAttribute) {
-                if (eNotificationRequired())
-                    eNotify(new ENotificationImpl(this, Notification.RESOLVE, DataPackage.PARAMETER__ATTRIBUTE, oldAttribute, attribute));
-            }
-        }
-        return attribute;
-    }
+		if (attribute != null && attribute.eIsProxy()) {
+			InternalEObject oldAttribute = (InternalEObject)attribute;
+			attribute = (SAttribute)eResolveProxy(oldAttribute);
+			if (attribute != oldAttribute) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DataPackage.PARAMETER__ATTRIBUTE, oldAttribute, attribute));
+			}
+		}
+		return attribute;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public SAttribute basicGetAttribute() {
-        return attribute;
-    }
+		return attribute;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setAttribute(SAttribute newAttribute) {
-        SAttribute oldAttribute = attribute;
-        attribute = newAttribute;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.PARAMETER__ATTRIBUTE, oldAttribute, attribute));
-    }
+		SAttribute oldAttribute = attribute;
+		attribute = newAttribute;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.PARAMETER__ATTRIBUTE, oldAttribute, attribute));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public String getName() {
-        return name;
-    }
+		return name;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setName(String newName) {
-        String oldName = name;
-        name = newName;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.PARAMETER__NAME, oldName, name));
-    }
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.PARAMETER__NAME, oldName, name));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public String getValue() {
-        return value;
-    }
+		return value;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setValue(String newValue) {
-        String oldValue = value;
-        value = newValue;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.PARAMETER__VALUE, oldValue, value));
-    }
+		String oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.PARAMETER__VALUE, oldValue, value));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object eGet(int featureID, boolean resolve, boolean coreType) {
-        switch (featureID) {
-            case DataPackage.PARAMETER__VALUE:
-                return getValue();
-            case DataPackage.PARAMETER__ATTRIBUTE:
-                if (resolve) return getAttribute();
-                return basicGetAttribute();
-            case DataPackage.PARAMETER__NAME:
-                return getName();
-        }
-        return super.eGet(featureID, resolve, coreType);
-    }
+		switch (featureID) {
+			case DataPackage.PARAMETER__VALUE:
+				return getValue();
+			case DataPackage.PARAMETER__ATTRIBUTE:
+				if (resolve) return getAttribute();
+				return basicGetAttribute();
+			case DataPackage.PARAMETER__NAME:
+				return getName();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @SuppressWarnings("unchecked")
     @Override
     public void eSet(int featureID, Object newValue) {
-        switch (featureID) {
-            case DataPackage.PARAMETER__VALUE:
-                setValue((String)newValue);
-                return;
-            case DataPackage.PARAMETER__ATTRIBUTE:
-                setAttribute((SAttribute)newValue);
-                return;
-            case DataPackage.PARAMETER__NAME:
-                setName((String)newValue);
-                return;
-        }
-        super.eSet(featureID, newValue);
-    }
+		switch (featureID) {
+			case DataPackage.PARAMETER__VALUE:
+				setValue((String)newValue);
+				return;
+			case DataPackage.PARAMETER__ATTRIBUTE:
+				setAttribute((SAttribute)newValue);
+				return;
+			case DataPackage.PARAMETER__NAME:
+				setName((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void eUnset(int featureID) {
-        switch (featureID) {
-            case DataPackage.PARAMETER__VALUE:
-                setValue(VALUE_EDEFAULT);
-                return;
-            case DataPackage.PARAMETER__ATTRIBUTE:
-                setAttribute((SAttribute)null);
-                return;
-            case DataPackage.PARAMETER__NAME:
-                setName(NAME_EDEFAULT);
-                return;
-        }
-        super.eUnset(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.PARAMETER__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case DataPackage.PARAMETER__ATTRIBUTE:
+				setAttribute((SAttribute)null);
+				return;
+			case DataPackage.PARAMETER__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean eIsSet(int featureID) {
-        switch (featureID) {
-            case DataPackage.PARAMETER__VALUE:
-                return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
-            case DataPackage.PARAMETER__ATTRIBUTE:
-                return attribute != null;
-            case DataPackage.PARAMETER__NAME:
-                return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-        }
-        return super.eIsSet(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.PARAMETER__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+			case DataPackage.PARAMETER__ATTRIBUTE:
+				return attribute != null;
+			case DataPackage.PARAMETER__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+		}
+		return super.eIsSet(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public String toString() {
-        if (eIsProxy()) return super.toString();
+		if (eIsProxy()) return super.toString();
 
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (value: ");
-        result.append(value);
-        result.append(", name: ");
-        result.append(name);
-        result.append(')');
-        return result.toString();
-    }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (value: ");
+		result.append(value);
+		result.append(", name: ");
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
 
 } //ParameterImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/ParameterSetImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/ParameterSetImpl.java
index a734947..5259a34 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/ParameterSetImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/ParameterSetImpl.java
@@ -18,6 +18,9 @@
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.InternalEObject;
 
+import org.eclipse.emf.ecore.impl.FlatEObjectImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.BasicInternalEList;
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
 import org.eclipse.emf.ecore.impl.EObjectImpl;
 import org.eclipse.emf.ecore.util.EObjectContainmentEList;
@@ -36,119 +39,119 @@
  *
  * @generated
  */
-public class ParameterSetImpl extends EObjectImpl implements ParameterSet {
+public class ParameterSetImpl extends FlatEObjectImpl implements ParameterSet {
     /**
-     * The cached value of the '{@link #getMembers() <em>Members</em>}' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getMembers() <em>Members</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getMembers()
-     * @generated
-     * @ordered
-     */
+	 * @see #getMembers()
+	 * @generated
+	 * @ordered
+	 */
     protected EList<Parameter> members;
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ParameterSetImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EClass eStaticClass() {
-        return DataPackage.Literals.PARAMETER_SET;
-    }
+		return DataPackage.Literals.PARAMETER_SET;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EList<Parameter> getMembers() {
-        if (members == null) {
-            members = new EObjectContainmentEList<Parameter>(Parameter.class, this, DataPackage.PARAMETER_SET__MEMBERS);
-        }
-        return members;
-    }
+		if (members == null) {
+			members = new EObjectContainmentEList<Parameter>(Parameter.class, this, DataPackage.PARAMETER_SET__MEMBERS);
+		}
+		return members;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-        switch (featureID) {
-            case DataPackage.PARAMETER_SET__MEMBERS:
-                return ((InternalEList<?>)getMembers()).basicRemove(otherEnd, msgs);
-        }
-        return super.eInverseRemove(otherEnd, featureID, msgs);
-    }
+		switch (featureID) {
+			case DataPackage.PARAMETER_SET__MEMBERS:
+				return ((InternalEList<?>)getMembers()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object eGet(int featureID, boolean resolve, boolean coreType) {
-        switch (featureID) {
-            case DataPackage.PARAMETER_SET__MEMBERS:
-                return getMembers();
-        }
-        return super.eGet(featureID, resolve, coreType);
-    }
+		switch (featureID) {
+			case DataPackage.PARAMETER_SET__MEMBERS:
+				return getMembers();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @SuppressWarnings("unchecked")
     @Override
     public void eSet(int featureID, Object newValue) {
-        switch (featureID) {
-            case DataPackage.PARAMETER_SET__MEMBERS:
-                getMembers().clear();
-                getMembers().addAll((Collection<? extends Parameter>)newValue);
-                return;
-        }
-        super.eSet(featureID, newValue);
-    }
+		switch (featureID) {
+			case DataPackage.PARAMETER_SET__MEMBERS:
+				getMembers().clear();
+				getMembers().addAll((Collection<? extends Parameter>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void eUnset(int featureID) {
-        switch (featureID) {
-            case DataPackage.PARAMETER_SET__MEMBERS:
-                getMembers().clear();
-                return;
-        }
-        super.eUnset(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.PARAMETER_SET__MEMBERS:
+				getMembers().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean eIsSet(int featureID) {
-        switch (featureID) {
-            case DataPackage.PARAMETER_SET__MEMBERS:
-                return members != null && !members.isEmpty();
-        }
-        return super.eIsSet(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.PARAMETER_SET__MEMBERS:
+				return members != null && !members.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
 
 } //ParameterSetImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/RunImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/RunImpl.java
index b069aa35..e27d18e 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/RunImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/impl/RunImpl.java
@@ -25,9 +25,13 @@
 import org.eclipse.emf.ecore.InternalEObject;
 
 import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.FlatEObjectImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+import org.eclipse.emf.ecore.util.BasicInternalEList;
 import org.eclipse.emf.ecore.impl.EObjectImpl;
 
 import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList;
 import org.eclipse.emf.ecore.util.EObjectWithInverseEList;
 import org.eclipse.emf.ecore.util.InternalEList;
 
@@ -43,7 +47,6 @@
  *   <li>{@link org.eclipse.amp.amf.adata.impl.RunImpl#getModel <em>Model</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.impl.RunImpl#getStarted <em>Started</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.impl.RunImpl#getFinished <em>Finished</em>}</li>
- *   <li>{@link org.eclipse.amp.amf.adata.impl.RunImpl#getEntries <em>Entries</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.impl.RunImpl#getName <em>Name</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.impl.RunImpl#getParameterSets <em>Parameter Sets</em>}</li>
  *   <li>{@link org.eclipse.amp.amf.adata.impl.RunImpl#getMeasurements <em>Measurements</em>}</li>
@@ -52,437 +55,402 @@
  *
  * @generated
  */
-public class RunImpl extends EObjectImpl implements Run {
+public class RunImpl extends FlatEObjectImpl implements Run {
     /**
-     * The cached value of the '{@link #getModel() <em>Model</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getModel() <em>Model</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getModel()
-     * @generated
-     * @ordered
-     */
+	 * @see #getModel()
+	 * @generated
+	 * @ordered
+	 */
     protected SContext model;
 
     /**
-     * The default value of the '{@link #getStarted() <em>Started</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getStarted() <em>Started</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getStarted()
-     * @generated
-     * @ordered
-     */
+	 * @see #getStarted()
+	 * @generated
+	 * @ordered
+	 */
     protected static final Date STARTED_EDEFAULT = null;
 
     /**
-     * The cached value of the '{@link #getStarted() <em>Started</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getStarted() <em>Started</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getStarted()
-     * @generated
-     * @ordered
-     */
+	 * @see #getStarted()
+	 * @generated
+	 * @ordered
+	 */
     protected Date started = STARTED_EDEFAULT;
 
     /**
-     * The default value of the '{@link #getFinished() <em>Finished</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getFinished() <em>Finished</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getFinished()
-     * @generated
-     * @ordered
-     */
+	 * @see #getFinished()
+	 * @generated
+	 * @ordered
+	 */
     protected static final Date FINISHED_EDEFAULT = null;
 
     /**
-     * The cached value of the '{@link #getFinished() <em>Finished</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getFinished() <em>Finished</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getFinished()
-     * @generated
-     * @ordered
-     */
+	 * @see #getFinished()
+	 * @generated
+	 * @ordered
+	 */
     protected Date finished = FINISHED_EDEFAULT;
 
     /**
-     * The cached value of the '{@link #getEntries() <em>Entries</em>}' reference list.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getEntries()
-     * @generated
-     * @ordered
-     */
-    protected EList<DataPoint> entries;
-
-    /**
-     * The default value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
     protected static final String NAME_EDEFAULT = null;
 
     /**
-     * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getName()
-     * @generated
-     * @ordered
-     */
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
     protected String name = NAME_EDEFAULT;
 
     /**
-     * The cached value of the '{@link #getParameterSets() <em>Parameter Sets</em>}' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getParameterSets() <em>Parameter Sets</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getParameterSets()
-     * @generated
-     * @ordered
-     */
+	 * @see #getParameterSets()
+	 * @generated
+	 * @ordered
+	 */
     protected EList<ParameterSet> parameterSets;
 
     /**
-     * The cached value of the '{@link #getMeasurements() <em>Measurements</em>}' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getMeasurements() <em>Measurements</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getMeasurements()
-     * @generated
-     * @ordered
-     */
+	 * @see #getMeasurements()
+	 * @generated
+	 * @ordered
+	 */
     protected EList<Measurement> measurements;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected RunImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EClass eStaticClass() {
-        return DataPackage.Literals.RUN;
-    }
+		return DataPackage.Literals.RUN;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public SContext getModel() {
-        if (model != null && model.eIsProxy()) {
-            InternalEObject oldModel = (InternalEObject)model;
-            model = (SContext)eResolveProxy(oldModel);
-            if (model != oldModel) {
-                if (eNotificationRequired())
-                    eNotify(new ENotificationImpl(this, Notification.RESOLVE, DataPackage.RUN__MODEL, oldModel, model));
-            }
-        }
-        return model;
-    }
+		if (model != null && model.eIsProxy()) {
+			InternalEObject oldModel = (InternalEObject)model;
+			model = (SContext)eResolveProxy(oldModel);
+			if (model != oldModel) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, DataPackage.RUN__MODEL, oldModel, model));
+			}
+		}
+		return model;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public SContext basicGetModel() {
-        return model;
-    }
+		return model;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setModel(SContext newModel) {
-        SContext oldModel = model;
-        model = newModel;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.RUN__MODEL, oldModel, model));
-    }
+		SContext oldModel = model;
+		model = newModel;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.RUN__MODEL, oldModel, model));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Date getStarted() {
-        return started;
-    }
+		return started;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setStarted(Date newStarted) {
-        Date oldStarted = started;
-        started = newStarted;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.RUN__STARTED, oldStarted, started));
-    }
+		Date oldStarted = started;
+		started = newStarted;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.RUN__STARTED, oldStarted, started));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Date getFinished() {
-        return finished;
-    }
+		return finished;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setFinished(Date newFinished) {
-        Date oldFinished = finished;
-        finished = newFinished;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.RUN__FINISHED, oldFinished, finished));
-    }
+		Date oldFinished = finished;
+		finished = newFinished;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.RUN__FINISHED, oldFinished, finished));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
-    public EList<DataPoint> getEntries() {
-        if (entries == null) {
-            entries = new EObjectWithInverseEList<DataPoint>(DataPoint.class, this, DataPackage.RUN__ENTRIES, DataPackage.DATA_POINT__RUN);
-        }
-        return entries;
-    }
-
-    /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public String getName() {
-        return name;
-    }
+		return name;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setName(String newName) {
-        String oldName = name;
-        name = newName;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.RUN__NAME, oldName, name));
-    }
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, DataPackage.RUN__NAME, oldName, name));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EList<ParameterSet> getParameterSets() {
-        if (parameterSets == null) {
-            parameterSets = new EObjectContainmentEList<ParameterSet>(ParameterSet.class, this, DataPackage.RUN__PARAMETER_SETS);
-        }
-        return parameterSets;
-    }
+		if (parameterSets == null) {
+			parameterSets = new EObjectContainmentEList<ParameterSet>(ParameterSet.class, this, DataPackage.RUN__PARAMETER_SETS);
+		}
+		return parameterSets;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EList<Measurement> getMeasurements() {
-        if (measurements == null) {
-            measurements = new EObjectContainmentEList<Measurement>(Measurement.class, this, DataPackage.RUN__MEASUREMENTS);
-        }
-        return measurements;
-    }
+		if (measurements == null) {
+			measurements = new EObjectContainmentWithInverseEList<Measurement>(Measurement.class, this, DataPackage.RUN__MEASUREMENTS, DataPackage.MEASUREMENT__RUN);
+		}
+		return measurements;
+	}
 
     /**
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @SuppressWarnings("unchecked")
-    @Override
-    public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-        switch (featureID) {
-            case DataPackage.RUN__ENTRIES:
-                return ((InternalEList<InternalEObject>)(InternalEList<?>)getEntries()).basicAdd(otherEnd, msgs);
-        }
-        return super.eInverseAdd(otherEnd, featureID, msgs);
-    }
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@SuppressWarnings("unchecked")
+	@Override
+	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case DataPackage.RUN__MEASUREMENTS:
+				return ((InternalEList<InternalEObject>)(InternalEList<?>)getMeasurements()).basicAdd(otherEnd, msgs);
+		}
+		return super.eInverseAdd(otherEnd, featureID, msgs);
+	}
 
-    /**
-     * <!-- begin-user-doc -->
+				/**
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-        switch (featureID) {
-            case DataPackage.RUN__ENTRIES:
-                return ((InternalEList<?>)getEntries()).basicRemove(otherEnd, msgs);
-            case DataPackage.RUN__PARAMETER_SETS:
-                return ((InternalEList<?>)getParameterSets()).basicRemove(otherEnd, msgs);
-            case DataPackage.RUN__MEASUREMENTS:
-                return ((InternalEList<?>)getMeasurements()).basicRemove(otherEnd, msgs);
-        }
-        return super.eInverseRemove(otherEnd, featureID, msgs);
-    }
+		switch (featureID) {
+			case DataPackage.RUN__PARAMETER_SETS:
+				return ((InternalEList<?>)getParameterSets()).basicRemove(otherEnd, msgs);
+			case DataPackage.RUN__MEASUREMENTS:
+				return ((InternalEList<?>)getMeasurements()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object eGet(int featureID, boolean resolve, boolean coreType) {
-        switch (featureID) {
-            case DataPackage.RUN__MODEL:
-                if (resolve) return getModel();
-                return basicGetModel();
-            case DataPackage.RUN__STARTED:
-                return getStarted();
-            case DataPackage.RUN__FINISHED:
-                return getFinished();
-            case DataPackage.RUN__ENTRIES:
-                return getEntries();
-            case DataPackage.RUN__NAME:
-                return getName();
-            case DataPackage.RUN__PARAMETER_SETS:
-                return getParameterSets();
-            case DataPackage.RUN__MEASUREMENTS:
-                return getMeasurements();
-        }
-        return super.eGet(featureID, resolve, coreType);
-    }
+		switch (featureID) {
+			case DataPackage.RUN__MODEL:
+				if (resolve) return getModel();
+				return basicGetModel();
+			case DataPackage.RUN__STARTED:
+				return getStarted();
+			case DataPackage.RUN__FINISHED:
+				return getFinished();
+			case DataPackage.RUN__NAME:
+				return getName();
+			case DataPackage.RUN__PARAMETER_SETS:
+				return getParameterSets();
+			case DataPackage.RUN__MEASUREMENTS:
+				return getMeasurements();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @SuppressWarnings("unchecked")
     @Override
     public void eSet(int featureID, Object newValue) {
-        switch (featureID) {
-            case DataPackage.RUN__MODEL:
-                setModel((SContext)newValue);
-                return;
-            case DataPackage.RUN__STARTED:
-                setStarted((Date)newValue);
-                return;
-            case DataPackage.RUN__FINISHED:
-                setFinished((Date)newValue);
-                return;
-            case DataPackage.RUN__ENTRIES:
-                getEntries().clear();
-                getEntries().addAll((Collection<? extends DataPoint>)newValue);
-                return;
-            case DataPackage.RUN__NAME:
-                setName((String)newValue);
-                return;
-            case DataPackage.RUN__PARAMETER_SETS:
-                getParameterSets().clear();
-                getParameterSets().addAll((Collection<? extends ParameterSet>)newValue);
-                return;
-            case DataPackage.RUN__MEASUREMENTS:
-                getMeasurements().clear();
-                getMeasurements().addAll((Collection<? extends Measurement>)newValue);
-                return;
-        }
-        super.eSet(featureID, newValue);
-    }
+		switch (featureID) {
+			case DataPackage.RUN__MODEL:
+				setModel((SContext)newValue);
+				return;
+			case DataPackage.RUN__STARTED:
+				setStarted((Date)newValue);
+				return;
+			case DataPackage.RUN__FINISHED:
+				setFinished((Date)newValue);
+				return;
+			case DataPackage.RUN__NAME:
+				setName((String)newValue);
+				return;
+			case DataPackage.RUN__PARAMETER_SETS:
+				getParameterSets().clear();
+				getParameterSets().addAll((Collection<? extends ParameterSet>)newValue);
+				return;
+			case DataPackage.RUN__MEASUREMENTS:
+				getMeasurements().clear();
+				getMeasurements().addAll((Collection<? extends Measurement>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void eUnset(int featureID) {
-        switch (featureID) {
-            case DataPackage.RUN__MODEL:
-                setModel((SContext)null);
-                return;
-            case DataPackage.RUN__STARTED:
-                setStarted(STARTED_EDEFAULT);
-                return;
-            case DataPackage.RUN__FINISHED:
-                setFinished(FINISHED_EDEFAULT);
-                return;
-            case DataPackage.RUN__ENTRIES:
-                getEntries().clear();
-                return;
-            case DataPackage.RUN__NAME:
-                setName(NAME_EDEFAULT);
-                return;
-            case DataPackage.RUN__PARAMETER_SETS:
-                getParameterSets().clear();
-                return;
-            case DataPackage.RUN__MEASUREMENTS:
-                getMeasurements().clear();
-                return;
-        }
-        super.eUnset(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.RUN__MODEL:
+				setModel((SContext)null);
+				return;
+			case DataPackage.RUN__STARTED:
+				setStarted(STARTED_EDEFAULT);
+				return;
+			case DataPackage.RUN__FINISHED:
+				setFinished(FINISHED_EDEFAULT);
+				return;
+			case DataPackage.RUN__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case DataPackage.RUN__PARAMETER_SETS:
+				getParameterSets().clear();
+				return;
+			case DataPackage.RUN__MEASUREMENTS:
+				getMeasurements().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean eIsSet(int featureID) {
-        switch (featureID) {
-            case DataPackage.RUN__MODEL:
-                return model != null;
-            case DataPackage.RUN__STARTED:
-                return STARTED_EDEFAULT == null ? started != null : !STARTED_EDEFAULT.equals(started);
-            case DataPackage.RUN__FINISHED:
-                return FINISHED_EDEFAULT == null ? finished != null : !FINISHED_EDEFAULT.equals(finished);
-            case DataPackage.RUN__ENTRIES:
-                return entries != null && !entries.isEmpty();
-            case DataPackage.RUN__NAME:
-                return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-            case DataPackage.RUN__PARAMETER_SETS:
-                return parameterSets != null && !parameterSets.isEmpty();
-            case DataPackage.RUN__MEASUREMENTS:
-                return measurements != null && !measurements.isEmpty();
-        }
-        return super.eIsSet(featureID);
-    }
+		switch (featureID) {
+			case DataPackage.RUN__MODEL:
+				return model != null;
+			case DataPackage.RUN__STARTED:
+				return STARTED_EDEFAULT == null ? started != null : !STARTED_EDEFAULT.equals(started);
+			case DataPackage.RUN__FINISHED:
+				return FINISHED_EDEFAULT == null ? finished != null : !FINISHED_EDEFAULT.equals(finished);
+			case DataPackage.RUN__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case DataPackage.RUN__PARAMETER_SETS:
+				return parameterSets != null && !parameterSets.isEmpty();
+			case DataPackage.RUN__MEASUREMENTS:
+				return measurements != null && !measurements.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public String toString() {
-        if (eIsProxy()) return super.toString();
+		if (eIsProxy()) return super.toString();
 
-        StringBuffer result = new StringBuffer(super.toString());
-        result.append(" (started: ");
-        result.append(started);
-        result.append(", finished: ");
-        result.append(finished);
-        result.append(", name: ");
-        result.append(name);
-        result.append(')');
-        return result.toString();
-    }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (started: ");
+		result.append(started);
+		result.append(", finished: ");
+		result.append(finished);
+		result.append(", name: ");
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
 
 } //RunImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/BinaryResourceFactoryImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/BinaryResourceFactoryImpl.java
new file mode 100644
index 0000000..28a1ae0
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/BinaryResourceFactoryImpl.java
@@ -0,0 +1,11 @@
+package org.eclipse.amp.amf.adata.util;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.impl.BinaryResourceImpl;
+
+public class BinaryResourceFactoryImpl implements Resource.Factory {
+	public Resource createResource(URI uri) {
+		return new BinaryResourceImpl(uri);
+	}
+};
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/DataAdapterFactory.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/DataAdapterFactory.java
index d4fccbc..3fb673a 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/DataAdapterFactory.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/DataAdapterFactory.java
@@ -25,190 +25,190 @@
  */
 public class DataAdapterFactory extends AdapterFactoryImpl {
     /**
-     * The cached model package.
-     * <!-- begin-user-doc -->
+	 * The cached model package.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected static DataPackage modelPackage;
 
     /**
-     * Creates an instance of the adapter factory.
-     * <!-- begin-user-doc -->
+	 * Creates an instance of the adapter factory.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public DataAdapterFactory() {
-        if (modelPackage == null) {
-            modelPackage = DataPackage.eINSTANCE;
-        }
-    }
+		if (modelPackage == null) {
+			modelPackage = DataPackage.eINSTANCE;
+		}
+	}
 
     /**
-     * Returns whether this factory is applicable for the type of the object.
-     * <!-- begin-user-doc -->
+	 * Returns whether this factory is applicable for the type of the object.
+	 * <!-- begin-user-doc -->
      * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
      * <!-- end-user-doc -->
-     * @return whether this factory is applicable for the type of the object.
-     * @generated
-     */
+	 * @return whether this factory is applicable for the type of the object.
+	 * @generated
+	 */
     @Override
     public boolean isFactoryForType(Object object) {
-        if (object == modelPackage) {
-            return true;
-        }
-        if (object instanceof EObject) {
-            return ((EObject)object).eClass().getEPackage() == modelPackage;
-        }
-        return false;
-    }
+		if (object == modelPackage) {
+			return true;
+		}
+		if (object instanceof EObject) {
+			return ((EObject)object).eClass().getEPackage() == modelPackage;
+		}
+		return false;
+	}
 
     /**
-     * The switch that delegates to the <code>createXXX</code> methods.
-     * <!-- begin-user-doc -->
+	 * The switch that delegates to the <code>createXXX</code> methods.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected DataSwitch<Adapter> modelSwitch =
         new DataSwitch<Adapter>() {
-            @Override
-            public Adapter caseRun(Run object) {
-                return createRunAdapter();
-            }
-            @Override
-            public Adapter caseParameter(Parameter object) {
-                return createParameterAdapter();
-            }
-            @Override
-            public Adapter caseDataPoint(DataPoint object) {
-                return createDataPointAdapter();
-            }
-            @Override
-            public Adapter caseCatalog(Catalog object) {
-                return createCatalogAdapter();
-            }
-            @Override
-            public Adapter caseMeasurement(Measurement object) {
-                return createMeasurementAdapter();
-            }
-            @Override
-            public Adapter caseParameterSet(ParameterSet object) {
-                return createParameterSetAdapter();
-            }
-            @Override
-            public Adapter defaultCase(EObject object) {
-                return createEObjectAdapter();
-            }
-        };
+			@Override
+			public Adapter caseRun(Run object) {
+				return createRunAdapter();
+			}
+			@Override
+			public Adapter caseParameter(Parameter object) {
+				return createParameterAdapter();
+			}
+			@Override
+			public Adapter caseDataPoint(DataPoint object) {
+				return createDataPointAdapter();
+			}
+			@Override
+			public Adapter caseCatalog(Catalog object) {
+				return createCatalogAdapter();
+			}
+			@Override
+			public Adapter caseMeasurement(Measurement object) {
+				return createMeasurementAdapter();
+			}
+			@Override
+			public Adapter caseParameterSet(ParameterSet object) {
+				return createParameterSetAdapter();
+			}
+			@Override
+			public Adapter defaultCase(EObject object) {
+				return createEObjectAdapter();
+			}
+		};
 
     /**
-     * Creates an adapter for the <code>target</code>.
-     * <!-- begin-user-doc -->
+	 * Creates an adapter for the <code>target</code>.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param target the object to adapt.
-     * @return the adapter for the <code>target</code>.
-     * @generated
-     */
+	 * @param target the object to adapt.
+	 * @return the adapter for the <code>target</code>.
+	 * @generated
+	 */
     @Override
     public Adapter createAdapter(Notifier target) {
-        return modelSwitch.doSwitch((EObject)target);
-    }
+		return modelSwitch.doSwitch((EObject)target);
+	}
 
 
     /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.Run <em>Run</em>}'.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.Run <em>Run</em>}'.
+	 * <!-- begin-user-doc -->
      * This default implementation returns null so that we can easily ignore cases;
      * it's useful to ignore a case when inheritance will catch all the cases anyway.
      * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.amp.amf.adata.Run
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.adata.Run
+	 * @generated
+	 */
     public Adapter createRunAdapter() {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.Parameter <em>Parameter</em>}'.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.Parameter <em>Parameter</em>}'.
+	 * <!-- begin-user-doc -->
      * This default implementation returns null so that we can easily ignore cases;
      * it's useful to ignore a case when inheritance will catch all the cases anyway.
      * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.amp.amf.adata.Parameter
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.adata.Parameter
+	 * @generated
+	 */
     public Adapter createParameterAdapter() {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.DataPoint <em>Point</em>}'.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.DataPoint <em>Point</em>}'.
+	 * <!-- begin-user-doc -->
      * This default implementation returns null so that we can easily ignore cases;
      * it's useful to ignore a case when inheritance will catch all the cases anyway.
      * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.amp.amf.adata.DataPoint
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.adata.DataPoint
+	 * @generated
+	 */
     public Adapter createDataPointAdapter() {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.Catalog <em>Catalog</em>}'.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.Catalog <em>Catalog</em>}'.
+	 * <!-- begin-user-doc -->
      * This default implementation returns null so that we can easily ignore cases;
      * it's useful to ignore a case when inheritance will catch all the cases anyway.
      * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.amp.amf.adata.Catalog
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.adata.Catalog
+	 * @generated
+	 */
     public Adapter createCatalogAdapter() {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.Measurement <em>Measurement</em>}'.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.Measurement <em>Measurement</em>}'.
+	 * <!-- begin-user-doc -->
      * This default implementation returns null so that we can easily ignore cases;
      * it's useful to ignore a case when inheritance will catch all the cases anyway.
      * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.amp.amf.adata.Measurement
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.adata.Measurement
+	 * @generated
+	 */
     public Adapter createMeasurementAdapter() {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.ParameterSet <em>Parameter Set</em>}'.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.adata.ParameterSet <em>Parameter Set</em>}'.
+	 * <!-- begin-user-doc -->
      * This default implementation returns null so that we can easily ignore cases;
      * it's useful to ignore a case when inheritance will catch all the cases anyway.
      * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @see org.eclipse.amp.amf.adata.ParameterSet
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.adata.ParameterSet
+	 * @generated
+	 */
     public Adapter createParameterSetAdapter() {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Creates a new adapter for the default case.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for the default case.
+	 * <!-- begin-user-doc -->
      * This default implementation returns null.
      * <!-- end-user-doc -->
-     * @return the new adapter.
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @generated
+	 */
     public Adapter createEObjectAdapter() {
-        return null;
-    }
+		return null;
+	}
 
 } //DataAdapterFactory
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/DataSwitch.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/DataSwitch.java
index 5780277..ef11879 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/DataSwitch.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.data/src/org/eclipse/amp/amf/adata/util/DataSwitch.java
@@ -28,208 +28,208 @@
  */
 public class DataSwitch<T> {
     /**
-     * The cached model package
-     * <!-- begin-user-doc -->
+	 * The cached model package
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected static DataPackage modelPackage;
 
     /**
-     * Creates an instance of the switch.
-     * <!-- begin-user-doc -->
+	 * Creates an instance of the switch.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public DataSwitch() {
-        if (modelPackage == null) {
-            modelPackage = DataPackage.eINSTANCE;
-        }
-    }
+		if (modelPackage == null) {
+			modelPackage = DataPackage.eINSTANCE;
+		}
+	}
 
     /**
-     * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-     * <!-- begin-user-doc -->
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the first non-null result returned by a <code>caseXXX</code> call.
-     * @generated
-     */
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
     public T doSwitch(EObject theEObject) {
-        return doSwitch(theEObject.eClass(), theEObject);
-    }
+		return doSwitch(theEObject.eClass(), theEObject);
+	}
 
     /**
-     * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-     * <!-- begin-user-doc -->
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the first non-null result returned by a <code>caseXXX</code> call.
-     * @generated
-     */
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
     protected T doSwitch(EClass theEClass, EObject theEObject) {
-        if (theEClass.eContainer() == modelPackage) {
-            return doSwitch(theEClass.getClassifierID(), theEObject);
-        }
-        else {
-            List<EClass> eSuperTypes = theEClass.getESuperTypes();
-            return
-                eSuperTypes.isEmpty() ?
-                    defaultCase(theEObject) :
-                    doSwitch(eSuperTypes.get(0), theEObject);
-        }
-    }
+		if (theEClass.eContainer() == modelPackage) {
+			return doSwitch(theEClass.getClassifierID(), theEObject);
+		}
+		else {
+			List<EClass> eSuperTypes = theEClass.getESuperTypes();
+			return
+				eSuperTypes.isEmpty() ?
+					defaultCase(theEObject) :
+					doSwitch(eSuperTypes.get(0), theEObject);
+		}
+	}
 
     /**
-     * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
-     * <!-- begin-user-doc -->
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the first non-null result returned by a <code>caseXXX</code> call.
-     * @generated
-     */
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
     protected T doSwitch(int classifierID, EObject theEObject) {
-        switch (classifierID) {
-            case DataPackage.RUN: {
-                Run run = (Run)theEObject;
-                T result = caseRun(run);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case DataPackage.PARAMETER: {
-                Parameter parameter = (Parameter)theEObject;
-                T result = caseParameter(parameter);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case DataPackage.DATA_POINT: {
-                DataPoint dataPoint = (DataPoint)theEObject;
-                T result = caseDataPoint(dataPoint);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case DataPackage.CATALOG: {
-                Catalog catalog = (Catalog)theEObject;
-                T result = caseCatalog(catalog);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case DataPackage.MEASUREMENT: {
-                Measurement measurement = (Measurement)theEObject;
-                T result = caseMeasurement(measurement);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case DataPackage.PARAMETER_SET: {
-                ParameterSet parameterSet = (ParameterSet)theEObject;
-                T result = caseParameterSet(parameterSet);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            default: return defaultCase(theEObject);
-        }
-    }
+		switch (classifierID) {
+			case DataPackage.RUN: {
+				Run run = (Run)theEObject;
+				T result = caseRun(run);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case DataPackage.PARAMETER: {
+				Parameter parameter = (Parameter)theEObject;
+				T result = caseParameter(parameter);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case DataPackage.DATA_POINT: {
+				DataPoint dataPoint = (DataPoint)theEObject;
+				T result = caseDataPoint(dataPoint);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case DataPackage.CATALOG: {
+				Catalog catalog = (Catalog)theEObject;
+				T result = caseCatalog(catalog);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case DataPackage.MEASUREMENT: {
+				Measurement measurement = (Measurement)theEObject;
+				T result = caseMeasurement(measurement);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case DataPackage.PARAMETER_SET: {
+				ParameterSet parameterSet = (ParameterSet)theEObject;
+				T result = caseParameterSet(parameterSet);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			default: return defaultCase(theEObject);
+		}
+	}
 
     /**
-     * Returns the result of interpreting the object as an instance of '<em>Run</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Run</em>'.
+	 * <!-- begin-user-doc -->
      * This implementation returns null;
      * returning a non-null result will terminate the switch.
      * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpreting the object as an instance of '<em>Run</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Run</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
     public T caseRun(Run object) {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Returns the result of interpreting the object as an instance of '<em>Parameter</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Parameter</em>'.
+	 * <!-- begin-user-doc -->
      * This implementation returns null;
      * returning a non-null result will terminate the switch.
      * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpreting the object as an instance of '<em>Parameter</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Parameter</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
     public T caseParameter(Parameter object) {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Returns the result of interpreting the object as an instance of '<em>Point</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Point</em>'.
+	 * <!-- begin-user-doc -->
      * This implementation returns null;
      * returning a non-null result will terminate the switch.
      * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpreting the object as an instance of '<em>Point</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Point</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
     public T caseDataPoint(DataPoint object) {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Returns the result of interpreting the object as an instance of '<em>Catalog</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Catalog</em>'.
+	 * <!-- begin-user-doc -->
      * This implementation returns null;
      * returning a non-null result will terminate the switch.
      * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpreting the object as an instance of '<em>Catalog</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Catalog</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
     public T caseCatalog(Catalog object) {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Returns the result of interpreting the object as an instance of '<em>Measurement</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Measurement</em>'.
+	 * <!-- begin-user-doc -->
      * This implementation returns null;
      * returning a non-null result will terminate the switch.
      * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpreting the object as an instance of '<em>Measurement</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Measurement</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
     public T caseMeasurement(Measurement object) {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Returns the result of interpreting the object as an instance of '<em>Parameter Set</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Parameter Set</em>'.
+	 * <!-- begin-user-doc -->
      * This implementation returns null;
      * returning a non-null result will terminate the switch.
      * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpreting the object as an instance of '<em>Parameter Set</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-     * @generated
-     */
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Parameter Set</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
     public T caseParameterSet(ParameterSet object) {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * <!-- begin-user-doc -->
      * This implementation returns null;
      * returning a non-null result will terminate the switch, but this is the last case anyway.
      * <!-- end-user-doc -->
-     * @param object the target of the switch.
-     * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
-     * @see #doSwitch(org.eclipse.emf.ecore.EObject)
-     * @generated
-     */
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+	 * @generated
+	 */
     public T defaultCase(EObject object) {
-        return null;
-    }
+		return null;
+	}
 
 } //DataSwitch
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/META-INF/MANIFEST.MF b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/META-INF/MANIFEST.MF
index f001e83..4b3ce45 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/META-INF/MANIFEST.MF
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/META-INF/MANIFEST.MF
@@ -15,5 +15,8 @@
  org.eclipse.amp.amf.acore;visibility:=reexport,
  org.eclipse.amp.amf.acore.edit;visibility:=reexport,
  org.eclipse.amp.amf.abase,
- org.eclipse.amp.amf.abase.edit
+ org.eclipse.amp.amf.abase.edit,
+ org.eclipse.amp.amf.parameters.ui;bundle-version="0.8.0",
+ com.google.inject;bundle-version="2.0.0",
+ org.eclipse.xtext.ui;bundle-version="1.0.1"
 Bundle-ActivationPolicy: lazy
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateModel_parameters_SingleParameter.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateModel_parameters_SingleParameter.gif
new file mode 100644
index 0000000..2833425
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateModel_parameters_SingleParameter.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateModel_parameters_SweepLink.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateModel_parameters_SweepLink.gif
new file mode 100644
index 0000000..301a4bc
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateModel_parameters_SweepLink.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateModel_parameters_SweepParameter.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateModel_parameters_SweepParameter.gif
new file mode 100644
index 0000000..33735d9
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateModel_parameters_SweepParameter.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_BooleanValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_BooleanValue.gif
new file mode 100644
index 0000000..82bf8d2
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_BooleanValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_IntValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_IntValue.gif
new file mode 100644
index 0000000..ac035ea
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_IntValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_RealValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_RealValue.gif
new file mode 100644
index 0000000..7d4d39f
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_RealValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_StringValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_StringValue.gif
new file mode 100644
index 0000000..c345ca5
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_StringValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_Value.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_Value.gif
new file mode 100644
index 0000000..5bfbb66
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSingleParameter_value_Value.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_Parameter.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_Parameter.gif
new file mode 100644
index 0000000..b03123d
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_Parameter.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_SingleParameter.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_SingleParameter.gif
new file mode 100644
index 0000000..c3fe622
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_SingleParameter.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_SweepLink.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_SweepLink.gif
new file mode 100644
index 0000000..09741e8
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_SweepLink.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_SweepParameter.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.