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.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_SweepParameter.gif
new file mode 100644
index 0000000..bfe4a39
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepLink_parameters_SweepParameter.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_BooleanValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_BooleanValue.gif
new file mode 100644
index 0000000..03fbf5b
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_BooleanValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_IntValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_IntValue.gif
new file mode 100644
index 0000000..59b79fe
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_IntValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_RealValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_RealValue.gif
new file mode 100644
index 0000000..3f6d4c7
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_RealValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_StringValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_StringValue.gif
new file mode 100644
index 0000000..10fa13d
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_StringValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_Value.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_Value.gif
new file mode 100644
index 0000000..4b78f56
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_endValue_Value.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_BooleanValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_BooleanValue.gif
new file mode 100644
index 0000000..03fbf5b
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_BooleanValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_IntValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_IntValue.gif
new file mode 100644
index 0000000..59b79fe
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_IntValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_RealValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_RealValue.gif
new file mode 100644
index 0000000..3f6d4c7
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_RealValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_StringValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_StringValue.gif
new file mode 100644
index 0000000..10fa13d
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_StringValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_Value.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_Value.gif
new file mode 100644
index 0000000..4b78f56
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_increment_Value.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_BooleanValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_BooleanValue.gif
new file mode 100644
index 0000000..03fbf5b
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_BooleanValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_IntValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_IntValue.gif
new file mode 100644
index 0000000..59b79fe
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_IntValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_RealValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_RealValue.gif
new file mode 100644
index 0000000..3f6d4c7
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_RealValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_StringValue.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_StringValue.gif
new file mode 100644
index 0000000..10fa13d
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_StringValue.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_Value.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_Value.gif
new file mode 100644
index 0000000..4b78f56
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/ctool16/CreateSweepParameter_startValue_Value.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/obj16/SingleParameter.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/obj16/SingleParameter.gif
new file mode 100644
index 0000000..14af8aa
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/obj16/SingleParameter.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/obj16/SweepLink.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/obj16/SweepLink.gif
new file mode 100644
index 0000000..98b351f
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/obj16/SweepLink.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/obj16/SweepParameter.gif b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/obj16/SweepParameter.gif
new file mode 100644
index 0000000..5915591
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/icons/full/obj16/SweepParameter.gif
Binary files differ
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/plugin.properties b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/plugin.properties
index b2fe861..0bb696f 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/plugin.properties
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/plugin.properties
@@ -63,3 +63,13 @@
 _UI_Model_agents_feature = Agents
 _UI_AgentParameters_agent_feature = Agent
 _UI_AgentParameters_parameters_feature = Parameters
+_UI_SingleParameter_type = Single Parameter
+_UI_SweepParameter_type = Sweep Parameter
+_UI_SweepLink_type = Sweep Link
+_UI_SingleParameter_attribute_feature = Attribute
+_UI_SingleParameter_value_feature = Value
+_UI_SweepParameter_attribute_feature = Attribute
+_UI_SweepParameter_startValue_feature = Start Value
+_UI_SweepParameter_endValue_feature = End Value
+_UI_SweepParameter_increment_feature = Increment
+_UI_SweepLink_parameters_feature = Parameters
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/AParEditPlugin.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/AParEditPlugin.java
index 32b4842..e5169cd 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/AParEditPlugin.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/AParEditPlugin.java
@@ -19,78 +19,78 @@
  */
 public final class AParEditPlugin 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 AParEditPlugin INSTANCE = new AParEditPlugin();
 
     /**
-     * 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 AParEditPlugin() {
-        super
-          (new ResourceLocator [] {
-             MetaABMEditPlugin.INSTANCE,
-             ABaseEditPlugin.INSTANCE,
-           });
-    }
+		super
+		  (new ResourceLocator [] {
+		     MetaABMEditPlugin.INSTANCE,
+		     ABaseEditPlugin.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.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/AParItemProviderAdapterFactory.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/AParItemProviderAdapterFactory.java
index 1ef57e9..5926063 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/AParItemProviderAdapterFactory.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/AParItemProviderAdapterFactory.java
@@ -36,238 +36,310 @@
  */
 public class AParItemProviderAdapterFactory extends AParAdapterFactory 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 AParItemProviderAdapterFactory() {
-        supportedTypes.add(IEditingDomainItemProvider.class);
-        supportedTypes.add(IStructuredItemContentProvider.class);
-        supportedTypes.add(ITreeItemContentProvider.class);
-        supportedTypes.add(IItemLabelProvider.class);
-        supportedTypes.add(IItemPropertySource.class);
-    }
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.Model} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.Model} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ModelItemProvider modelItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.Model}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.Model}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createModelAdapter() {
-        if (modelItemProvider == null) {
-            modelItemProvider = new ModelItemProvider(this);
-        }
+		if (modelItemProvider == null) {
+			modelItemProvider = new ModelItemProvider(this);
+		}
 
-        return modelItemProvider;
-    }
+		return modelItemProvider;
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.Import} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.Import} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ImportItemProvider importItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.Import}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.Import}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createImportAdapter() {
-        if (importItemProvider == null) {
-            importItemProvider = new ImportItemProvider(this);
-        }
+		if (importItemProvider == null) {
+			importItemProvider = new ImportItemProvider(this);
+		}
 
-        return importItemProvider;
-    }
+		return importItemProvider;
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.Incorporates} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.Incorporates} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IncorporatesItemProvider incorporatesItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.Incorporates}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.Incorporates}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createIncorporatesAdapter() {
-        if (incorporatesItemProvider == null) {
-            incorporatesItemProvider = new IncorporatesItemProvider(this);
-        }
+		if (incorporatesItemProvider == null) {
+			incorporatesItemProvider = new IncorporatesItemProvider(this);
+		}
 
-        return incorporatesItemProvider;
-    }
+		return incorporatesItemProvider;
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.Parameter} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.Parameter} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ParameterItemProvider parameterItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.Parameter}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.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 returns the root adapter factory that contains this factory.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.SingleParameter} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SingleParameterItemProvider singleParameterItemProvider;
+
+				/**
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.SingleParameter}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createSingleParameterAdapter() {
+		if (singleParameterItemProvider == null) {
+			singleParameterItemProvider = new SingleParameterItemProvider(this);
+		}
+
+		return singleParameterItemProvider;
+	}
+
+				/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.SweepParameter} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SweepParameterItemProvider sweepParameterItemProvider;
+
+				/**
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.SweepParameter}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createSweepParameterAdapter() {
+		if (sweepParameterItemProvider == null) {
+			sweepParameterItemProvider = new SweepParameterItemProvider(this);
+		}
+
+		return sweepParameterItemProvider;
+	}
+
+				/**
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.parameters.aPar.SweepLink} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SweepLinkItemProvider sweepLinkItemProvider;
+
+				/**
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.parameters.aPar.SweepLink}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createSweepLinkAdapter() {
+		if (sweepLinkItemProvider == null) {
+			sweepLinkItemProvider = new SweepLinkItemProvider(this);
+		}
+
+		return sweepLinkItemProvider;
+	}
+
+				/**
+	 * 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 (modelItemProvider != null) modelItemProvider.dispose();
-        if (importItemProvider != null) importItemProvider.dispose();
-        if (incorporatesItemProvider != null) incorporatesItemProvider.dispose();
-        if (parameterItemProvider != null) parameterItemProvider.dispose();
-    }
+		if (modelItemProvider != null) modelItemProvider.dispose();
+		if (importItemProvider != null) importItemProvider.dispose();
+		if (incorporatesItemProvider != null) incorporatesItemProvider.dispose();
+		if (parameterItemProvider != null) parameterItemProvider.dispose();
+		if (singleParameterItemProvider != null) singleParameterItemProvider.dispose();
+		if (sweepParameterItemProvider != null) sweepParameterItemProvider.dispose();
+		if (sweepLinkItemProvider != null) sweepLinkItemProvider.dispose();
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ImportItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ImportItemProvider.java
index b0ed2b9..ce16fd7 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ImportItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ImportItemProvider.java
@@ -41,118 +41,118 @@
         IItemLabelProvider,
         IItemPropertySource {
     /**
-     * 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 ImportItemProvider(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);
 
-            addImportURIPropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addImportURIPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This adds a property descriptor for the Import URI feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Import URI feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addImportURIPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_Import_importURI_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_Import_importURI_feature", "_UI_Import_type"),
-                 AParPackage.Literals.IMPORT__IMPORT_URI,
-                 true,
-                 false,
-                 false,
-                 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Import_importURI_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Import_importURI_feature", "_UI_Import_type"),
+				 AParPackage.Literals.IMPORT__IMPORT_URI,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This returns Import.gif.
-     * <!-- begin-user-doc -->
+	 * This returns Import.gif.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/Import"));
-    }
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Import"));
+	}
 
     /**
-     * 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) {
-        String label = ((Import)object).getImportURI();
-        return label == null || label.length() == 0 ?
-            getString("_UI_Import_type") :
-            getString("_UI_Import_type") + " " + label;
-    }
+		String label = ((Import)object).getImportURI();
+		return label == null || label.length() == 0 ?
+			getString("_UI_Import_type") :
+			getString("_UI_Import_type") + " " + label;
+	}
 
     /**
-     * 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(Import.class)) {
-            case AParPackage.IMPORT__IMPORT_URI:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(Import.class)) {
+			case AParPackage.IMPORT__IMPORT_URI:
+				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 AParEditPlugin.INSTANCE;
-    }
+		return AParEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/IncorporatesItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/IncorporatesItemProvider.java
index 6696ce1..3d7a933 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/IncorporatesItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/IncorporatesItemProvider.java
@@ -41,118 +41,118 @@
         IItemLabelProvider,
         IItemPropertySource {
     /**
-     * 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 IncorporatesItemProvider(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);
 
-            addImportURIPropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addImportURIPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This adds a property descriptor for the Import URI feature.
-     * <!-- begin-user-doc -->
+	 * This adds a property descriptor for the Import URI feature.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void addImportURIPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_Incorporates_importURI_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_Incorporates_importURI_feature", "_UI_Incorporates_type"),
-                 AParPackage.Literals.INCORPORATES__IMPORT_URI,
-                 true,
-                 false,
-                 false,
-                 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Incorporates_importURI_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Incorporates_importURI_feature", "_UI_Incorporates_type"),
+				 AParPackage.Literals.INCORPORATES__IMPORT_URI,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This returns Incorporates.gif.
-     * <!-- begin-user-doc -->
+	 * This returns Incorporates.gif.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/Incorporates"));
-    }
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Incorporates"));
+	}
 
     /**
-     * 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) {
-        String label = ((Incorporates)object).getImportURI();
-        return label == null || label.length() == 0 ?
-            getString("_UI_Incorporates_type") :
-            getString("_UI_Incorporates_type") + " " + label;
-    }
+		String label = ((Incorporates)object).getImportURI();
+		return label == null || label.length() == 0 ?
+			getString("_UI_Incorporates_type") :
+			getString("_UI_Incorporates_type") + " " + label;
+	}
 
     /**
-     * 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(Incorporates.class)) {
-            case AParPackage.INCORPORATES__IMPORT_URI:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(Incorporates.class)) {
+			case AParPackage.INCORPORATES__IMPORT_URI:
+				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 AParEditPlugin.INSTANCE;
-    }
+		return AParEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ModelItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ModelItemProvider.java
index c4df8c5..56fc215 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ModelItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ModelItemProvider.java
@@ -36,90 +36,90 @@
 public class ModelItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider,
 IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
     /**
-     * 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 ModelItemProvider(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);
 
-            addNamePropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addNamePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * 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_Model_name_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_Model_name_feature", "_UI_Model_type"),
-                 AParPackage.Literals.MODEL__NAME,
-                 true,
-                 false,
-                 false,
-                 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Model_name_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Model_name_feature", "_UI_Model_type"),
+				 AParPackage.Literals.MODEL__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(AParPackage.Literals.MODEL__MODEL);
-            childrenFeatures.add(AParPackage.Literals.MODEL__INCORPORATES);
-            childrenFeatures.add(AParPackage.Literals.MODEL__PARAMETERS);
-        }
-        return childrenFeatures;
-    }
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(AParPackage.Literals.MODEL__MODEL);
+			childrenFeatures.add(AParPackage.Literals.MODEL__INCORPORATES);
+			childrenFeatures.add(AParPackage.Literals.MODEL__PARAMETERS);
+		}
+		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);
+	}
 
     /**
-     * This returns Model.gif.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This returns Model.gif.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     @Override
     public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/Model"));
-    }
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Model"));
+	}
 
     /**
      * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -144,55 +144,70 @@
      */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(Model.class)) {
-            case AParPackage.MODEL__NAME:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-                return;
-            case AParPackage.MODEL__MODEL:
-            case AParPackage.MODEL__INCORPORATES:
-            case AParPackage.MODEL__PARAMETERS:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(Model.class)) {
+			case AParPackage.MODEL__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case AParPackage.MODEL__MODEL:
+			case AParPackage.MODEL__INCORPORATES:
+			case AParPackage.MODEL__PARAMETERS:
+				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 --> <!-- 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);
 
-        newChildDescriptors.add
-            (createChildParameter
-                (AParPackage.Literals.MODEL__MODEL,
-                 AParFactory.eINSTANCE.createImport()));
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.MODEL__MODEL,
+				 AParFactory.eINSTANCE.createImport()));
 
-        newChildDescriptors.add
-            (createChildParameter
-                (AParPackage.Literals.MODEL__INCORPORATES,
-                 AParFactory.eINSTANCE.createIncorporates()));
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.MODEL__INCORPORATES,
+				 AParFactory.eINSTANCE.createIncorporates()));
 
-        newChildDescriptors.add
-            (createChildParameter
-                (AParPackage.Literals.MODEL__PARAMETERS,
-                 AParFactory.eINSTANCE.createParameter()));
-    }
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.MODEL__PARAMETERS,
+				 AParFactory.eINSTANCE.createParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.MODEL__PARAMETERS,
+				 AParFactory.eINSTANCE.createSingleParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.MODEL__PARAMETERS,
+				 AParFactory.eINSTANCE.createSweepParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.MODEL__PARAMETERS,
+				 AParFactory.eINSTANCE.createSweepLink()));
+	}
 
     /**
-     * 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 AParEditPlugin.INSTANCE;
-    }
+		return AParEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ParameterItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ParameterItemProvider.java
index 2425a6f..69d8bd1 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ParameterItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/ParameterItemProvider.java
@@ -2,7 +2,7 @@
  * <copyright>
  * </copyright>
  *
- * $Id: ParameterItemProvider.java,v 1.8 2010/08/04 01:54:50 mparker Exp $
+ * $Id$
  */
 package org.eclipse.amp.amf.parameters.aPar.provider;
 
@@ -10,15 +10,11 @@
 import java.util.Collection;
 import java.util.List;
 
-import org.eclipse.amp.amf.abase.aBase.ABaseFactory;
-import org.eclipse.amp.amf.parameters.aPar.AParFactory;
-import org.eclipse.amp.amf.parameters.aPar.AParPackage;
-import org.eclipse.amp.amf.parameters.aPar.Parameter;
 import org.eclipse.emf.common.notify.AdapterFactory;
 import org.eclipse.emf.common.notify.Notification;
+
 import org.eclipse.emf.common.util.ResourceLocator;
-import org.eclipse.emf.ecore.EStructuralFeature;
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+
 import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
 import org.eclipse.emf.edit.provider.IItemLabelProvider;
 import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
@@ -26,7 +22,6 @@
 import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
 import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
 import org.eclipse.emf.edit.provider.ItemProviderAdapter;
-import org.eclipse.emf.edit.provider.ViewerNotification;
 
 /**
  * This is the item provider adapter for a {@link org.eclipse.amp.amf.parameters.aPar.Parameter} object.
@@ -35,178 +30,94 @@
  * @generated
  */
 public class ParameterItemProvider
-extends ItemProviderAdapter
-implements
-IEditingDomainItemProvider,
-IStructuredItemContentProvider,
-ITreeItemContentProvider,
-IItemLabelProvider,
-IItemPropertySource {
-    /**
-     * This constructs an instance from a factory and a notifier.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    public ParameterItemProvider(AdapterFactory adapterFactory) {
-        super(adapterFactory);
-    }
+	extends ItemProviderAdapter
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ParameterItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
 
-    /**
-     * 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);
+	/**
+	 * 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);
 
-            addAttributePropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+		}
+		return itemPropertyDescriptors;
+	}
 
-    /**
-     * This adds a property descriptor for the Attribute feature.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @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"),
-                 AParPackage.Literals.PARAMETER__ATTRIBUTE,
-                 true,
-                 false,
-                 true,
-                 null,
-                 null,
-                 null));
-    }
+	/**
+	 * This returns Parameter.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Parameter"));
+	}
 
-    /**
-     * 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
-     */
-    @Override
-    public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
-        if (childrenFeatures == null) {
-            super.getChildrenFeatures(object);
-            childrenFeatures.add(AParPackage.Literals.PARAMETER__VALUE);
-        }
-        return childrenFeatures;
-    }
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_Parameter_type");
+	}
 
-    /**
-     * <!-- 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.
+	/**
+	 * 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
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+		super.notifyChanged(notification);
+	}
 
-        return super.getChildFeature(object, child);
-    }
+	/**
+	 * 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);
+	}
 
-    /**
-     * This returns Parameter.gif.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public Object getImage(Object object) {
-        return overlayImage(object, getResourceLocator().getImage("full/obj16/Parameter"));
-    }
-
-    /**
-     * This returns the label text for the adapted class. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated NOT
-     */
-    @Override
-    public String getText(Object object) {
-        Parameter param = (Parameter) object;
-        return param.getAttribute().getLabel() + "=" + param.getValue();
-    }
-
-    /**
-     * 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
-     */
-    @Override
-    public void notifyChanged(Notification notification) {
-        updateChildren(notification);
-
-        switch (notification.getFeatureID(Parameter.class)) {
-            case AParPackage.PARAMETER__VALUE:
-                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 -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
-        super.collectNewChildDescriptors(newChildDescriptors, object);
-
-        newChildDescriptors.add
-            (createChildParameter
-                (AParPackage.Literals.PARAMETER__VALUE,
-                 ABaseFactory.eINSTANCE.createValue()));
-
-        newChildDescriptors.add
-            (createChildParameter
-                (AParPackage.Literals.PARAMETER__VALUE,
-                 ABaseFactory.eINSTANCE.createIntValue()));
-
-        newChildDescriptors.add
-            (createChildParameter
-                (AParPackage.Literals.PARAMETER__VALUE,
-                 ABaseFactory.eINSTANCE.createRealValue()));
-
-        newChildDescriptors.add
-            (createChildParameter
-                (AParPackage.Literals.PARAMETER__VALUE,
-                 ABaseFactory.eINSTANCE.createStringValue()));
-
-        newChildDescriptors.add
-            (createChildParameter
-                (AParPackage.Literals.PARAMETER__VALUE,
-                 ABaseFactory.eINSTANCE.createBooleanValue()));
-    }
-
-    /**
-     * Return the resource locator for this item provider's resources.
-     * <!-- begin-user-doc -->
-     * <!-- end-user-doc -->
-     * @generated
-     */
-    @Override
-    public ResourceLocator getResourceLocator() {
-        return AParEditPlugin.INSTANCE;
-    }
+	/**
+	 * Return the resource locator for this item provider's resources.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public ResourceLocator getResourceLocator() {
+		return AParEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/SingleParameterItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/SingleParameterItemProvider.java
new file mode 100644
index 0000000..22393c6
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/SingleParameterItemProvider.java
@@ -0,0 +1,213 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.amp.amf.parameters.aPar.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.amp.amf.abase.aBase.ABaseFactory;
+import org.eclipse.amp.amf.parameters.AParRuntimeModule;
+import org.eclipse.amp.amf.parameters.aPar.AParPackage;
+import org.eclipse.amp.amf.parameters.aPar.SingleParameter;
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.jface.viewers.ILabelProvider;
+
+import com.google.inject.Guice;
+import com.google.inject.Injector;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.amp.amf.parameters.aPar.SingleParameter} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SingleParameterItemProvider
+	extends ParameterItemProvider
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SingleParameterItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * 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);
+
+			addAttributePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Attribute feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAttributePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_SingleParameter_attribute_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_SingleParameter_attribute_feature", "_UI_SingleParameter_type"),
+				 AParPackage.Literals.SINGLE_PARAMETER__ATTRIBUTE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 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 -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(AParPackage.Literals.SINGLE_PARAMETER__VALUE);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- 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.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns SingleParameter.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/SingleParameter"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated NOT
+	 */
+	@Override
+	public String getText(Object object) {
+		String text = "";
+		SingleParameter sp = (SingleParameter) object;
+		if (sp.getAttribute() != null) {
+			text += sp.getAttribute().getLabel();
+		} else {
+			text += "?";
+		}
+		if (sp.getValue() != null) {
+			text += "=" + sp.getValue();
+		}
+		return text;
+	}
+
+	/**
+	 * 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
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(SingleParameter.class)) {
+			case AParPackage.SINGLE_PARAMETER__VALUE:
+				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 -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SINGLE_PARAMETER__VALUE,
+				 ABaseFactory.eINSTANCE.createValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SINGLE_PARAMETER__VALUE,
+				 ABaseFactory.eINSTANCE.createIntValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SINGLE_PARAMETER__VALUE,
+				 ABaseFactory.eINSTANCE.createRealValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SINGLE_PARAMETER__VALUE,
+				 ABaseFactory.eINSTANCE.createStringValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SINGLE_PARAMETER__VALUE,
+				 ABaseFactory.eINSTANCE.createBooleanValue()));
+	}
+
+}
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/SweepLinkItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/SweepLinkItemProvider.java
new file mode 100644
index 0000000..cc86b40
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/SweepLinkItemProvider.java
@@ -0,0 +1,172 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.amp.amf.parameters.aPar.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.amp.amf.parameters.aPar.AParFactory;
+import org.eclipse.amp.amf.parameters.aPar.AParPackage;
+import org.eclipse.amp.amf.parameters.aPar.SweepLink;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.amp.amf.parameters.aPar.SweepLink} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SweepLinkItemProvider
+	extends ParameterItemProvider
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SweepLinkItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * 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);
+
+		}
+		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 -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(AParPackage.Literals.SWEEP_LINK__PARAMETERS);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- 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.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns SweepLink.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/SweepLink"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_SweepLink_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 -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(SweepLink.class)) {
+			case AParPackage.SWEEP_LINK__PARAMETERS:
+				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 -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_LINK__PARAMETERS,
+				 AParFactory.eINSTANCE.createParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_LINK__PARAMETERS,
+				 AParFactory.eINSTANCE.createSingleParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_LINK__PARAMETERS,
+				 AParFactory.eINSTANCE.createSweepParameter()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_LINK__PARAMETERS,
+				 AParFactory.eINSTANCE.createSweepLink()));
+	}
+
+}
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/SweepParameterItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/SweepParameterItemProvider.java
new file mode 100644
index 0000000..f349263
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.edit/src/org/eclipse/amp/amf/parameters/aPar/provider/SweepParameterItemProvider.java
@@ -0,0 +1,280 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.amp.amf.parameters.aPar.provider;
+
+
+import java.util.Collection;
+import java.util.List;
+
+import org.eclipse.amp.amf.abase.aBase.ABaseFactory;
+
+import org.eclipse.amp.amf.parameters.aPar.AParPackage;
+import org.eclipse.amp.amf.parameters.aPar.SweepParameter;
+
+import org.eclipse.emf.common.notify.AdapterFactory;
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
+import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
+import org.eclipse.emf.edit.provider.IItemLabelProvider;
+import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.IItemPropertySource;
+import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
+import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.amp.amf.parameters.aPar.SweepParameter} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class SweepParameterItemProvider
+	extends ParameterItemProvider
+	implements
+		IEditingDomainItemProvider,
+		IStructuredItemContentProvider,
+		ITreeItemContentProvider,
+		IItemLabelProvider,
+		IItemPropertySource {
+	/**
+	 * This constructs an instance from a factory and a notifier.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SweepParameterItemProvider(AdapterFactory adapterFactory) {
+		super(adapterFactory);
+	}
+
+	/**
+	 * 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);
+
+			addAttributePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
+
+	/**
+	 * This adds a property descriptor for the Attribute feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAttributePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_SweepParameter_attribute_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_SweepParameter_attribute_feature", "_UI_SweepParameter_type"),
+				 AParPackage.Literals.SWEEP_PARAMETER__ATTRIBUTE,
+				 true,
+				 false,
+				 true,
+				 null,
+				 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 -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(AParPackage.Literals.SWEEP_PARAMETER__START_VALUE);
+			childrenFeatures.add(AParPackage.Literals.SWEEP_PARAMETER__END_VALUE);
+			childrenFeatures.add(AParPackage.Literals.SWEEP_PARAMETER__INCREMENT);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- 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.
+
+		return super.getChildFeature(object, child);
+	}
+
+	/**
+	 * This returns SweepParameter.gif.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object getImage(Object object) {
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/SweepParameter"));
+	}
+
+	/**
+	 * This returns the label text for the adapted class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getText(Object object) {
+		return getString("_UI_SweepParameter_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 -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void notifyChanged(Notification notification) {
+		updateChildren(notification);
+
+		switch (notification.getFeatureID(SweepParameter.class)) {
+			case AParPackage.SWEEP_PARAMETER__START_VALUE:
+			case AParPackage.SWEEP_PARAMETER__END_VALUE:
+			case AParPackage.SWEEP_PARAMETER__INCREMENT:
+				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 -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
+		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__START_VALUE,
+				 ABaseFactory.eINSTANCE.createValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__START_VALUE,
+				 ABaseFactory.eINSTANCE.createIntValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__START_VALUE,
+				 ABaseFactory.eINSTANCE.createRealValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__START_VALUE,
+				 ABaseFactory.eINSTANCE.createStringValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__START_VALUE,
+				 ABaseFactory.eINSTANCE.createBooleanValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__END_VALUE,
+				 ABaseFactory.eINSTANCE.createValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__END_VALUE,
+				 ABaseFactory.eINSTANCE.createIntValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__END_VALUE,
+				 ABaseFactory.eINSTANCE.createRealValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__END_VALUE,
+				 ABaseFactory.eINSTANCE.createStringValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__END_VALUE,
+				 ABaseFactory.eINSTANCE.createBooleanValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__INCREMENT,
+				 ABaseFactory.eINSTANCE.createValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__INCREMENT,
+				 ABaseFactory.eINSTANCE.createIntValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__INCREMENT,
+				 ABaseFactory.eINSTANCE.createRealValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__INCREMENT,
+				 ABaseFactory.eINSTANCE.createStringValue()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(AParPackage.Literals.SWEEP_PARAMETER__INCREMENT,
+				 ABaseFactory.eINSTANCE.createBooleanValue()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature, Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify =
+			childFeature == AParPackage.Literals.SWEEP_PARAMETER__START_VALUE ||
+			childFeature == AParPackage.Literals.SWEEP_PARAMETER__END_VALUE ||
+			childFeature == AParPackage.Literals.SWEEP_PARAMETER__INCREMENT;
+
+		if (qualify) {
+			return getString
+				("_UI_CreateChild_text2",
+				 new Object[] { getTypeText(childObject), getFeatureText(childFeature), getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
+	}
+
+}
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/META-INF/MANIFEST.MF b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/META-INF/MANIFEST.MF
index adb7ea4..bfe52dc 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/META-INF/MANIFEST.MF
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/META-INF/MANIFEST.MF
@@ -29,3 +29,4 @@
  org.eclipse.amp.amf.parameters.ui.quickfix

 Bundle-ActivationPolicy: lazy

 Bundle-Localization: plugin

+Import-Package: org.apache.log4j

diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/AbstractAParProposalProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/AbstractAParProposalProvider.java
index 172ac3e..f627970 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/AbstractAParProposalProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/AbstractAParProposalProvider.java
@@ -35,10 +35,25 @@
 	public void completeIncorporates_ImportURI(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
-	public void completeParameter_Attribute(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+	public void completeSingleParameter_Attribute(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
 	}
-	public void completeParameter_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+	public void completeSingleParameter_Value(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+	}
+	public void completeSweepParameter_Attribute(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		lookupCrossReference(((CrossReference)assignment.getTerminal()), context, acceptor);
+	}
+	public void completeSweepParameter_StartValue(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+	}
+	public void completeSweepParameter_EndValue(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+	}
+	public void completeSweepParameter_Increment(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
+	}
+	public void completeSweepLink_Parameters(EObject model, Assignment assignment, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		completeRuleCall(((RuleCall)assignment.getTerminal()), context, acceptor);
 	}
     
@@ -54,4 +69,13 @@
 	public void complete_Parameter(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
 		// subclasses may override
 	}
+	public void complete_SingleParameter(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		// subclasses may override
+	}
+	public void complete_SweepParameter(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		// subclasses may override
+	}
+	public void complete_SweepLink(EObject model, RuleCall ruleCall, ContentAssistContext context, ICompletionProposalAcceptor acceptor) {
+		// subclasses may override
+	}
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/AParParser.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/AParParser.java
index 50debfd..9912f15 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/AParParser.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/AParParser.java
@@ -37,19 +37,27 @@
 			nameMappings = new HashMap<AbstractElement, String>() {
 				private static final long serialVersionUID = 1L;
 				{
+					put(grammarAccess.getParameterAccess().getAlternatives(), "rule__Parameter__Alternatives");
 					put(grammarAccess.getValueAccess().getAlternatives(), "rule__Value__Alternatives");
 					put(grammarAccess.getBOOLEANAccess().getAlternatives(), "rule__BOOLEAN__Alternatives");
 					put(grammarAccess.getModelAccess().getGroup(), "rule__Model__Group__0");
 					put(grammarAccess.getModelAccess().getGroup_3(), "rule__Model__Group_3__0");
-					put(grammarAccess.getParameterAccess().getGroup(), "rule__Parameter__Group__0");
+					put(grammarAccess.getSingleParameterAccess().getGroup(), "rule__SingleParameter__Group__0");
+					put(grammarAccess.getSweepParameterAccess().getGroup(), "rule__SweepParameter__Group__0");
+					put(grammarAccess.getSweepLinkAccess().getGroup(), "rule__SweepLink__Group__0");
 					put(grammarAccess.getModelAccess().getNameAssignment_0(), "rule__Model__NameAssignment_0");
 					put(grammarAccess.getModelAccess().getModelAssignment_2(), "rule__Model__ModelAssignment_2");
 					put(grammarAccess.getModelAccess().getIncorporatesAssignment_3_1(), "rule__Model__IncorporatesAssignment_3_1");
 					put(grammarAccess.getModelAccess().getParametersAssignment_4(), "rule__Model__ParametersAssignment_4");
 					put(grammarAccess.getImportAccess().getImportURIAssignment(), "rule__Import__ImportURIAssignment");
 					put(grammarAccess.getIncorporatesAccess().getImportURIAssignment(), "rule__Incorporates__ImportURIAssignment");
-					put(grammarAccess.getParameterAccess().getAttributeAssignment_0(), "rule__Parameter__AttributeAssignment_0");
-					put(grammarAccess.getParameterAccess().getValueAssignment_2(), "rule__Parameter__ValueAssignment_2");
+					put(grammarAccess.getSingleParameterAccess().getAttributeAssignment_0(), "rule__SingleParameter__AttributeAssignment_0");
+					put(grammarAccess.getSingleParameterAccess().getValueAssignment_2(), "rule__SingleParameter__ValueAssignment_2");
+					put(grammarAccess.getSweepParameterAccess().getAttributeAssignment_0(), "rule__SweepParameter__AttributeAssignment_0");
+					put(grammarAccess.getSweepParameterAccess().getStartValueAssignment_2(), "rule__SweepParameter__StartValueAssignment_2");
+					put(grammarAccess.getSweepParameterAccess().getEndValueAssignment_4(), "rule__SweepParameter__EndValueAssignment_4");
+					put(grammarAccess.getSweepParameterAccess().getIncrementAssignment_6(), "rule__SweepParameter__IncrementAssignment_6");
+					put(grammarAccess.getSweepLinkAccess().getParametersAssignment_1(), "rule__SweepLink__ParametersAssignment_1");
 					put(grammarAccess.getIntValueAccess().getValueAssignment(), "rule__IntValue__ValueAssignment");
 					put(grammarAccess.getRealValueAccess().getValueAssignment(), "rule__RealValue__ValueAssignment");
 					put(grammarAccess.getStringValueAccess().getValueAssignment(), "rule__StringValue__ValueAssignment");
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g
index a68335e..2937230 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g
@@ -157,9 +157,93 @@
     }
 	:
 (
-{ before(grammarAccess.getParameterAccess().getGroup()); }
-(rule__Parameter__Group__0)
-{ after(grammarAccess.getParameterAccess().getGroup()); }
+{ before(grammarAccess.getParameterAccess().getAlternatives()); }
+(rule__Parameter__Alternatives)
+{ after(grammarAccess.getParameterAccess().getAlternatives()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSingleParameter
+entryRuleSingleParameter 
+:
+{ before(grammarAccess.getSingleParameterRule()); }
+	 ruleSingleParameter
+{ after(grammarAccess.getSingleParameterRule()); } 
+	 EOF 
+;
+
+// Rule SingleParameter
+ruleSingleParameter
+    @init {
+		int stackSize = keepStackSize();
+    }
+	:
+(
+{ before(grammarAccess.getSingleParameterAccess().getGroup()); }
+(rule__SingleParameter__Group__0)
+{ after(grammarAccess.getSingleParameterAccess().getGroup()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSweepParameter
+entryRuleSweepParameter 
+:
+{ before(grammarAccess.getSweepParameterRule()); }
+	 ruleSweepParameter
+{ after(grammarAccess.getSweepParameterRule()); } 
+	 EOF 
+;
+
+// Rule SweepParameter
+ruleSweepParameter
+    @init {
+		int stackSize = keepStackSize();
+    }
+	:
+(
+{ before(grammarAccess.getSweepParameterAccess().getGroup()); }
+(rule__SweepParameter__Group__0)
+{ after(grammarAccess.getSweepParameterAccess().getGroup()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+// Entry rule entryRuleSweepLink
+entryRuleSweepLink 
+:
+{ before(grammarAccess.getSweepLinkRule()); }
+	 ruleSweepLink
+{ after(grammarAccess.getSweepLinkRule()); } 
+	 EOF 
+;
+
+// Rule SweepLink
+ruleSweepLink
+    @init {
+		int stackSize = keepStackSize();
+    }
+	:
+(
+{ before(grammarAccess.getSweepLinkAccess().getGroup()); }
+(rule__SweepLink__Group__0)
+{ after(grammarAccess.getSweepLinkAccess().getGroup()); }
 )
 
 ;
@@ -329,6 +413,34 @@
 
 
 
+rule__Parameter__Alternatives
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getParameterAccess().getSingleParameterParserRuleCall_0()); }
+	ruleSingleParameter
+{ after(grammarAccess.getParameterAccess().getSingleParameterParserRuleCall_0()); }
+)
+
+    |(
+{ before(grammarAccess.getParameterAccess().getSweepParameterParserRuleCall_1()); }
+	ruleSweepParameter
+{ after(grammarAccess.getParameterAccess().getSweepParameterParserRuleCall_1()); }
+)
+
+    |(
+{ before(grammarAccess.getParameterAccess().getSweepLinkParserRuleCall_2()); }
+	ruleSweepLink
+{ after(grammarAccess.getParameterAccess().getSweepLinkParserRuleCall_2()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
 rule__Value__Alternatives
     @init {
 		int stackSize = keepStackSize();
@@ -608,27 +720,27 @@
 
 
 
-rule__Parameter__Group__0
+rule__SingleParameter__Group__0
     @init {
 		int stackSize = keepStackSize();
     }
 :
-	rule__Parameter__Group__0__Impl
-	rule__Parameter__Group__1
+	rule__SingleParameter__Group__0__Impl
+	rule__SingleParameter__Group__1
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Parameter__Group__0__Impl
+rule__SingleParameter__Group__0__Impl
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getParameterAccess().getAttributeAssignment_0()); }
-(rule__Parameter__AttributeAssignment_0)
-{ after(grammarAccess.getParameterAccess().getAttributeAssignment_0()); }
+{ before(grammarAccess.getSingleParameterAccess().getAttributeAssignment_0()); }
+(rule__SingleParameter__AttributeAssignment_0)
+{ after(grammarAccess.getSingleParameterAccess().getAttributeAssignment_0()); }
 )
 
 ;
@@ -637,29 +749,29 @@
 }
 
 
-rule__Parameter__Group__1
+rule__SingleParameter__Group__1
     @init {
 		int stackSize = keepStackSize();
     }
 :
-	rule__Parameter__Group__1__Impl
-	rule__Parameter__Group__2
+	rule__SingleParameter__Group__1__Impl
+	rule__SingleParameter__Group__2
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Parameter__Group__1__Impl
+rule__SingleParameter__Group__1__Impl
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getParameterAccess().getEqualsSignKeyword_1()); }
+{ before(grammarAccess.getSingleParameterAccess().getEqualsSignKeyword_1()); }
 
 	'=' 
 
-{ after(grammarAccess.getParameterAccess().getEqualsSignKeyword_1()); }
+{ after(grammarAccess.getSingleParameterAccess().getEqualsSignKeyword_1()); }
 )
 
 ;
@@ -668,26 +780,377 @@
 }
 
 
-rule__Parameter__Group__2
+rule__SingleParameter__Group__2
     @init {
 		int stackSize = keepStackSize();
     }
 :
-	rule__Parameter__Group__2__Impl
+	rule__SingleParameter__Group__2__Impl
 ;
 finally {
 	restoreStackSize(stackSize);
 }
 
-rule__Parameter__Group__2__Impl
+rule__SingleParameter__Group__2__Impl
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getParameterAccess().getValueAssignment_2()); }
-(rule__Parameter__ValueAssignment_2)
-{ after(grammarAccess.getParameterAccess().getValueAssignment_2()); }
+{ before(grammarAccess.getSingleParameterAccess().getValueAssignment_2()); }
+(rule__SingleParameter__ValueAssignment_2)
+{ after(grammarAccess.getSingleParameterAccess().getValueAssignment_2()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+rule__SweepParameter__Group__0
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepParameter__Group__0__Impl
+	rule__SweepParameter__Group__1
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__Group__0__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getAttributeAssignment_0()); }
+(rule__SweepParameter__AttributeAssignment_0)
+{ after(grammarAccess.getSweepParameterAccess().getAttributeAssignment_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__SweepParameter__Group__1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepParameter__Group__1__Impl
+	rule__SweepParameter__Group__2
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__Group__1__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getLeftSquareBracketKeyword_1()); }
+
+	'[' 
+
+{ after(grammarAccess.getSweepParameterAccess().getLeftSquareBracketKeyword_1()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__SweepParameter__Group__2
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepParameter__Group__2__Impl
+	rule__SweepParameter__Group__3
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__Group__2__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getStartValueAssignment_2()); }
+(rule__SweepParameter__StartValueAssignment_2)
+{ after(grammarAccess.getSweepParameterAccess().getStartValueAssignment_2()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__SweepParameter__Group__3
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepParameter__Group__3__Impl
+	rule__SweepParameter__Group__4
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__Group__3__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getCommaKeyword_3()); }
+
+	',' 
+
+{ after(grammarAccess.getSweepParameterAccess().getCommaKeyword_3()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__SweepParameter__Group__4
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepParameter__Group__4__Impl
+	rule__SweepParameter__Group__5
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__Group__4__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getEndValueAssignment_4()); }
+(rule__SweepParameter__EndValueAssignment_4)
+{ after(grammarAccess.getSweepParameterAccess().getEndValueAssignment_4()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__SweepParameter__Group__5
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepParameter__Group__5__Impl
+	rule__SweepParameter__Group__6
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__Group__5__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getCommaKeyword_5()); }
+
+	',' 
+
+{ after(grammarAccess.getSweepParameterAccess().getCommaKeyword_5()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__SweepParameter__Group__6
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepParameter__Group__6__Impl
+	rule__SweepParameter__Group__7
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__Group__6__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getIncrementAssignment_6()); }
+(rule__SweepParameter__IncrementAssignment_6)
+{ after(grammarAccess.getSweepParameterAccess().getIncrementAssignment_6()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__SweepParameter__Group__7
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepParameter__Group__7__Impl
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__Group__7__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getRightSquareBracketKeyword_7()); }
+
+	']' 
+
+{ after(grammarAccess.getSweepParameterAccess().getRightSquareBracketKeyword_7()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+rule__SweepLink__Group__0
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepLink__Group__0__Impl
+	rule__SweepLink__Group__1
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepLink__Group__0__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepLinkAccess().getLeftSquareBracketKeyword_0()); }
+
+	'[' 
+
+{ after(grammarAccess.getSweepLinkAccess().getLeftSquareBracketKeyword_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__SweepLink__Group__1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepLink__Group__1__Impl
+	rule__SweepLink__Group__2
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepLink__Group__1__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepLinkAccess().getParametersAssignment_1()); }
+(rule__SweepLink__ParametersAssignment_1)*
+{ after(grammarAccess.getSweepLinkAccess().getParametersAssignment_1()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+
+rule__SweepLink__Group__2
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+	rule__SweepLink__Group__2__Impl
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepLink__Group__2__Impl
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepLinkAccess().getRightSquareBracketKeyword_2()); }
+
+	']' 
+
+{ after(grammarAccess.getSweepLinkAccess().getRightSquareBracketKeyword_2()); }
 )
 
 ;
@@ -793,18 +1256,18 @@
 	restoreStackSize(stackSize);
 }
 
-rule__Parameter__AttributeAssignment_0
+rule__SingleParameter__AttributeAssignment_0
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getParameterAccess().getAttributeSAttributeCrossReference_0_0()); }
+{ before(grammarAccess.getSingleParameterAccess().getAttributeSAttributeCrossReference_0_0()); }
 (
-{ before(grammarAccess.getParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); }
-	RULE_ID{ after(grammarAccess.getParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); }
+{ before(grammarAccess.getSingleParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); }
+	RULE_ID{ after(grammarAccess.getSingleParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); }
 )
-{ after(grammarAccess.getParameterAccess().getAttributeSAttributeCrossReference_0_0()); }
+{ after(grammarAccess.getSingleParameterAccess().getAttributeSAttributeCrossReference_0_0()); }
 )
 
 ;
@@ -812,14 +1275,93 @@
 	restoreStackSize(stackSize);
 }
 
-rule__Parameter__ValueAssignment_2
+rule__SingleParameter__ValueAssignment_2
     @init {
 		int stackSize = keepStackSize();
     }
 :
 (
-{ before(grammarAccess.getParameterAccess().getValueValueParserRuleCall_2_0()); }
-	ruleValue{ after(grammarAccess.getParameterAccess().getValueValueParserRuleCall_2_0()); }
+{ before(grammarAccess.getSingleParameterAccess().getValueValueParserRuleCall_2_0()); }
+	ruleValue{ after(grammarAccess.getSingleParameterAccess().getValueValueParserRuleCall_2_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__AttributeAssignment_0
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getAttributeSAttributeCrossReference_0_0()); }
+(
+{ before(grammarAccess.getSweepParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); }
+	RULE_ID{ after(grammarAccess.getSweepParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); }
+)
+{ after(grammarAccess.getSweepParameterAccess().getAttributeSAttributeCrossReference_0_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__StartValueAssignment_2
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getStartValueValueParserRuleCall_2_0()); }
+	ruleValue{ after(grammarAccess.getSweepParameterAccess().getStartValueValueParserRuleCall_2_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__EndValueAssignment_4
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getEndValueValueParserRuleCall_4_0()); }
+	ruleValue{ after(grammarAccess.getSweepParameterAccess().getEndValueValueParserRuleCall_4_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepParameter__IncrementAssignment_6
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepParameterAccess().getIncrementValueParserRuleCall_6_0()); }
+	ruleValue{ after(grammarAccess.getSweepParameterAccess().getIncrementValueParserRuleCall_6_0()); }
+)
+
+;
+finally {
+	restoreStackSize(stackSize);
+}
+
+rule__SweepLink__ParametersAssignment_1
+    @init {
+		int stackSize = keepStackSize();
+    }
+:
+(
+{ before(grammarAccess.getSweepLinkAccess().getParametersParameterParserRuleCall_1_0()); }
+	ruleParameter{ after(grammarAccess.getSweepLinkAccess().getParametersParameterParserRuleCall_1_0()); }
 )
 
 ;
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.tokens b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.tokens
index 1c2adf2..0c92e3b 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.tokens
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.tokens
@@ -12,4 +12,7 @@
 '='=18
 'false'=15
 'model'=16
+'['=19
+','=20
 'incorporates'=17
+']'=21
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAParLexer.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAParLexer.java
index 915e5a2..340d231 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAParLexer.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAParLexer.java
@@ -14,9 +14,11 @@
 public class InternalAParLexer extends Lexer {
     public static final int RULE_ID=5;
     public static final int RULE_ANY_OTHER=13;
+    public static final int Tokens=22;
     public static final int EOF=-1;
     public static final int RULE_SL_COMMENT=11;
-    public static final int Tokens=19;
+    public static final int T21=21;
+    public static final int T20=20;
     public static final int RULE_ML_COMMENT=10;
     public static final int RULE_STRING=4;
     public static final int RULE_INT=9;
@@ -28,6 +30,7 @@
     public static final int T16=16;
     public static final int T17=17;
     public static final int T18=18;
+    public static final int T19=19;
     public static final int RULE_INTEGER=6;
     public InternalAParLexer() {;} 
     public InternalAParLexer(CharStream input) {
@@ -129,14 +132,68 @@
     }
     // $ANTLR end T18
 
+    // $ANTLR start T19
+    public final void mT19() throws RecognitionException {
+        try {
+            int _type = T19;
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:15:5: ( '[' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:15:7: '['
+            {
+            match('['); 
+
+            }
+
+            this.type = _type;
+        }
+        finally {
+        }
+    }
+    // $ANTLR end T19
+
+    // $ANTLR start T20
+    public final void mT20() throws RecognitionException {
+        try {
+            int _type = T20;
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:16:5: ( ',' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:16:7: ','
+            {
+            match(','); 
+
+            }
+
+            this.type = _type;
+        }
+        finally {
+        }
+    }
+    // $ANTLR end T20
+
+    // $ANTLR start T21
+    public final void mT21() throws RecognitionException {
+        try {
+            int _type = T21;
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:17:5: ( ']' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:17:7: ']'
+            {
+            match(']'); 
+
+            }
+
+            this.type = _type;
+        }
+        finally {
+        }
+    }
+    // $ANTLR end T21
+
     // $ANTLR start RULE_INTEGER
     public final void mRULE_INTEGER() throws RecognitionException {
         try {
             int _type = RULE_INTEGER;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:891:14: ( ( '-' )? ( '0' .. '9' )+ )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:891:16: ( '-' )? ( '0' .. '9' )+
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1433:14: ( ( '-' )? ( '0' .. '9' )+ )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1433:16: ( '-' )? ( '0' .. '9' )+
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:891:16: ( '-' )?
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1433:16: ( '-' )?
             int alt1=2;
             int LA1_0 = input.LA(1);
 
@@ -145,7 +202,7 @@
             }
             switch (alt1) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:891:16: '-'
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1433:16: '-'
                     {
                     match('-'); 
 
@@ -154,7 +211,7 @@
 
             }
 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:891:21: ( '0' .. '9' )+
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1433:21: ( '0' .. '9' )+
             int cnt2=0;
             loop2:
             do {
@@ -168,7 +225,7 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:891:22: '0' .. '9'
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1433:22: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -198,10 +255,10 @@
     public final void mRULE_REAL() throws RecognitionException {
         try {
             int _type = RULE_REAL;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:893:11: ( ( '-' )? ( '0' .. '9' )* '.' ( '0' .. '9' )* )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:893:13: ( '-' )? ( '0' .. '9' )* '.' ( '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1435:11: ( ( '-' )? ( '0' .. '9' )* '.' ( '0' .. '9' )* )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1435:13: ( '-' )? ( '0' .. '9' )* '.' ( '0' .. '9' )*
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:893:13: ( '-' )?
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1435:13: ( '-' )?
             int alt3=2;
             int LA3_0 = input.LA(1);
 
@@ -210,7 +267,7 @@
             }
             switch (alt3) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:893:13: '-'
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1435:13: '-'
                     {
                     match('-'); 
 
@@ -219,7 +276,7 @@
 
             }
 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:893:18: ( '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1435:18: ( '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -232,7 +289,7 @@
 
                 switch (alt4) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:893:19: '0' .. '9'
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1435:19: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -245,7 +302,7 @@
             } while (true);
 
             match('.'); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:893:34: ( '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1435:34: ( '0' .. '9' )*
             loop5:
             do {
                 int alt5=2;
@@ -258,7 +315,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:893:35: '0' .. '9'
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1435:35: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -284,11 +341,11 @@
     public final void mRULE_DESC_STRING() throws RecognitionException {
         try {
             int _type = RULE_DESC_STRING;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:895:18: ( '\\u00AB' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )* '\\u00BB' )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:895:20: '\\u00AB' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )* '\\u00BB'
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1437:18: ( '\\u00AB' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )* '\\u00BB' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1437:20: '\\u00AB' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )* '\\u00BB'
             {
             match('\u00AB'); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:895:29: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1437:29: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )*
             loop6:
             do {
                 int alt6=3;
@@ -304,7 +361,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:895:30: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' )
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1437:30: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' )
             	    {
             	    match('\\'); 
             	    if ( input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t'||input.LA(1)=='\u00AB'||input.LA(1)=='\u00BB' ) {
@@ -321,7 +378,7 @@
             	    }
             	    break;
             	case 2 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:895:80: ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) )
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1437:80: ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\u00AA')||(input.LA(1)>='\u00AC' && input.LA(1)<='\u00BA')||(input.LA(1)>='\u00BC' && input.LA(1)<='\uFFFE') ) {
             	        input.consume();
@@ -357,10 +414,10 @@
     public final void mRULE_ID() throws RecognitionException {
         try {
             int _type = RULE_ID;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:897:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:897:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1439:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1439:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:897:11: ( '^' )?
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1439:11: ( '^' )?
             int alt7=2;
             int LA7_0 = input.LA(1);
 
@@ -369,7 +426,7 @@
             }
             switch (alt7) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:897:11: '^'
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1439:11: '^'
                     {
                     match('^'); 
 
@@ -388,7 +445,7 @@
                 recover(mse);    throw mse;
             }
 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:897:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1439:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             loop8:
             do {
                 int alt8=2;
@@ -436,10 +493,10 @@
     public final void mRULE_INT() throws RecognitionException {
         try {
             int _type = RULE_INT;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:899:10: ( ( '0' .. '9' )+ )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:899:12: ( '0' .. '9' )+
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1441:10: ( ( '0' .. '9' )+ )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1441:12: ( '0' .. '9' )+
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:899:12: ( '0' .. '9' )+
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1441:12: ( '0' .. '9' )+
             int cnt9=0;
             loop9:
             do {
@@ -453,7 +510,7 @@
 
                 switch (alt9) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:899:13: '0' .. '9'
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1441:13: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -483,10 +540,10 @@
     public final void mRULE_STRING() throws RecognitionException {
         try {
             int _type = RULE_STRING;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             int alt12=2;
             int LA12_0 = input.LA(1);
 
@@ -498,16 +555,16 @@
             }
             else {
                 NoViableAltException nvae =
-                    new NoViableAltException("901:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )", 12, 0, input);
+                    new NoViableAltException("1443:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )", 12, 0, input);
 
                 throw nvae;
             }
             switch (alt12) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
                     {
                     match('\"'); 
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
                     loop10:
                     do {
                         int alt10=3;
@@ -523,7 +580,7 @@
 
                         switch (alt10) {
                     	case 1 :
-                    	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t' ) {
@@ -540,7 +597,7 @@
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:62: ~ ( ( '\\\\' | '\"' ) )
+                    	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:62: ~ ( ( '\\\\' | '\"' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
                     	        input.consume();
@@ -566,10 +623,10 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:82: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:82: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
                     {
                     match('\''); 
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:87: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:87: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
                     loop11:
                     do {
                         int alt11=3;
@@ -585,7 +642,7 @@
 
                         switch (alt11) {
                     	case 1 :
-                    	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:88: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:88: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t' ) {
@@ -602,7 +659,7 @@
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:901:129: ~ ( ( '\\\\' | '\\'' ) )
+                    	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1443:129: ~ ( ( '\\\\' | '\\'' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
                     	        input.consume();
@@ -644,12 +701,12 @@
     public final void mRULE_ML_COMMENT() throws RecognitionException {
         try {
             int _type = RULE_ML_COMMENT;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:903:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:903:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1445:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1445:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*"); 
 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:903:24: ( options {greedy=false; } : . )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1445:24: ( options {greedy=false; } : . )*
             loop13:
             do {
                 int alt13=2;
@@ -674,7 +731,7 @@
 
                 switch (alt13) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:903:52: .
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1445:52: .
             	    {
             	    matchAny(); 
 
@@ -702,12 +759,12 @@
     public final void mRULE_SL_COMMENT() throws RecognitionException {
         try {
             int _type = RULE_SL_COMMENT;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:905:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:905:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1447:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1447:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("//"); 
 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:905:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1447:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop14:
             do {
                 int alt14=2;
@@ -720,7 +777,7 @@
 
                 switch (alt14) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:905:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1447:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFE') ) {
             	        input.consume();
@@ -741,7 +798,7 @@
                 }
             } while (true);
 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:905:40: ( ( '\\r' )? '\\n' )?
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1447:40: ( ( '\\r' )? '\\n' )?
             int alt16=2;
             int LA16_0 = input.LA(1);
 
@@ -750,9 +807,9 @@
             }
             switch (alt16) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:905:41: ( '\\r' )? '\\n'
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1447:41: ( '\\r' )? '\\n'
                     {
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:905:41: ( '\\r' )?
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1447:41: ( '\\r' )?
                     int alt15=2;
                     int LA15_0 = input.LA(1);
 
@@ -761,7 +818,7 @@
                     }
                     switch (alt15) {
                         case 1 :
-                            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:905:41: '\\r'
+                            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1447:41: '\\r'
                             {
                             match('\r'); 
 
@@ -791,10 +848,10 @@
     public final void mRULE_WS() throws RecognitionException {
         try {
             int _type = RULE_WS;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:907:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:907:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1449:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1449:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:907:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1449:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt17=0;
             loop17:
             do {
@@ -847,8 +904,8 @@
     public final void mRULE_ANY_OTHER() throws RecognitionException {
         try {
             int _type = RULE_ANY_OTHER;
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:909:16: ( . )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:909:18: .
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1451:16: ( . )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1451:18: .
             {
             matchAny(); 
 
@@ -862,8 +919,8 @@
     // $ANTLR end RULE_ANY_OTHER
 
     public void mTokens() throws RecognitionException {
-        // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:8: ( T14 | T15 | T16 | T17 | T18 | RULE_INTEGER | RULE_REAL | RULE_DESC_STRING | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
-        int alt18=15;
+        // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:8: ( T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | RULE_INTEGER | RULE_REAL | RULE_DESC_STRING | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+        int alt18=18;
         alt18 = dfa18.predict(input);
         switch (alt18) {
             case 1 :
@@ -902,70 +959,91 @@
                 }
                 break;
             case 6 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:30: RULE_INTEGER
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:30: T19
+                {
+                mT19(); 
+
+                }
+                break;
+            case 7 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:34: T20
+                {
+                mT20(); 
+
+                }
+                break;
+            case 8 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:38: T21
+                {
+                mT21(); 
+
+                }
+                break;
+            case 9 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:42: RULE_INTEGER
                 {
                 mRULE_INTEGER(); 
 
                 }
                 break;
-            case 7 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:43: RULE_REAL
+            case 10 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:55: RULE_REAL
                 {
                 mRULE_REAL(); 
 
                 }
                 break;
-            case 8 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:53: RULE_DESC_STRING
+            case 11 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:65: RULE_DESC_STRING
                 {
                 mRULE_DESC_STRING(); 
 
                 }
                 break;
-            case 9 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:70: RULE_ID
+            case 12 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:82: RULE_ID
                 {
                 mRULE_ID(); 
 
                 }
                 break;
-            case 10 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:78: RULE_INT
+            case 13 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:90: RULE_INT
                 {
                 mRULE_INT(); 
 
                 }
                 break;
-            case 11 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:87: RULE_STRING
+            case 14 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:99: RULE_STRING
                 {
                 mRULE_STRING(); 
 
                 }
                 break;
-            case 12 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:99: RULE_ML_COMMENT
+            case 15 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:111: RULE_ML_COMMENT
                 {
                 mRULE_ML_COMMENT(); 
 
                 }
                 break;
-            case 13 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:115: RULE_SL_COMMENT
+            case 16 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:127: RULE_SL_COMMENT
                 {
                 mRULE_SL_COMMENT(); 
 
                 }
                 break;
-            case 14 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:131: RULE_WS
+            case 17 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:143: RULE_WS
                 {
                 mRULE_WS(); 
 
                 }
                 break;
-            case 15 :
-                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:139: RULE_ANY_OTHER
+            case 18 :
+                // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1:151: RULE_ANY_OTHER
                 {
                 mRULE_ANY_OTHER(); 
 
@@ -979,85 +1057,93 @@
 
     protected DFA18 dfa18 = new DFA18(this);
     static final String DFA18_eotS =
-        "\1\uffff\4\22\1\uffff\1\20\1\31\1\uffff\2\20\1\uffff\3\20\2\uffff"+
-        "\1\22\1\uffff\3\22\1\uffff\1\31\2\uffff\1\31\5\uffff\4\22\1\50\3"+
-        "\22\1\uffff\1\54\1\55\1\22\2\uffff\6\22\1\65\1\uffff";
+        "\1\uffff\4\25\4\uffff\1\23\1\40\1\uffff\2\23\1\uffff\3\23\2\uffff"+
+        "\1\25\1\uffff\3\25\4\uffff\1\40\1\uffff\1\40\6\uffff\4\25\1\56\3"+
+        "\25\1\uffff\1\62\1\63\1\25\2\uffff\6\25\1\73\1\uffff";
     static final String DFA18_eofS =
-        "\66\uffff";
+        "\74\uffff";
     static final String DFA18_minS =
-        "\1\0\1\162\1\141\1\157\1\156\1\uffff\2\56\1\uffff\1\0\1\101\1\uffff"+
-        "\2\0\1\52\2\uffff\1\165\1\uffff\1\154\1\144\1\143\1\uffff\1\56\2"+
-        "\uffff\1\56\5\uffff\1\145\1\163\1\145\1\157\1\60\1\145\1\154\1\162"+
+        "\1\0\1\162\1\141\1\157\1\156\4\uffff\2\56\1\uffff\1\0\1\101\1\uffff"+
+        "\2\0\1\52\2\uffff\1\165\1\uffff\1\154\1\144\1\143\4\uffff\1\56\1"+
+        "\uffff\1\56\6\uffff\1\145\1\163\1\145\1\157\1\60\1\145\1\154\1\162"+
         "\1\uffff\2\60\1\160\2\uffff\1\157\1\162\1\141\1\164\1\145\1\163"+
         "\1\60\1\uffff";
     static final String DFA18_maxS =
-        "\1\ufffe\1\162\1\141\1\157\1\156\1\uffff\2\71\1\uffff\1\ufffe\1"+
+        "\1\ufffe\1\162\1\141\1\157\1\156\4\uffff\2\71\1\uffff\1\ufffe\1"+
         "\172\1\uffff\2\ufffe\1\57\2\uffff\1\165\1\uffff\1\154\1\144\1\143"+
-        "\1\uffff\1\71\2\uffff\1\71\5\uffff\1\145\1\163\1\145\1\157\1\172"+
+        "\4\uffff\1\71\1\uffff\1\71\6\uffff\1\145\1\163\1\145\1\157\1\172"+
         "\1\145\1\154\1\162\1\uffff\2\172\1\160\2\uffff\1\157\1\162\1\141"+
         "\1\164\1\145\1\163\1\172\1\uffff";
     static final String DFA18_acceptS =
-        "\5\uffff\1\5\2\uffff\1\7\2\uffff\1\11\3\uffff\1\16\1\17\1\uffff"+
-        "\1\11\3\uffff\1\5\1\uffff\1\7\1\6\1\uffff\1\10\1\13\1\15\1\14\1"+
-        "\16\10\uffff\1\1\3\uffff\1\2\1\3\7\uffff\1\4";
+        "\5\uffff\1\5\1\6\1\7\1\10\2\uffff\1\12\2\uffff\1\14\3\uffff\1\21"+
+        "\1\22\1\uffff\1\14\3\uffff\1\5\1\6\1\7\1\10\1\uffff\1\12\1\uffff"+
+        "\1\11\1\13\1\16\1\20\1\17\1\21\10\uffff\1\1\3\uffff\1\2\1\3\7\uffff"+
+        "\1\4";
     static final String DFA18_specialS =
-        "\66\uffff}>";
+        "\74\uffff}>";
     static final String[] DFA18_transitionS = {
-            "\11\20\2\17\2\20\1\17\22\20\1\17\1\20\1\14\4\20\1\15\5\20\1"+
-            "\6\1\10\1\16\12\7\3\20\1\5\3\20\32\13\3\20\1\12\1\13\1\20\5"+
-            "\13\1\2\2\13\1\4\3\13\1\3\6\13\1\1\6\13\60\20\1\11\uff53\20",
-            "\1\21",
-            "\1\23",
+            "\11\23\2\22\2\23\1\22\22\23\1\22\1\23\1\17\4\23\1\20\4\23\1"+
+            "\7\1\11\1\13\1\21\12\12\3\23\1\5\3\23\32\16\1\6\1\23\1\10\1"+
+            "\15\1\16\1\23\5\16\1\2\2\16\1\4\3\16\1\3\6\16\1\1\6\16\60\23"+
+            "\1\14\uff53\23",
             "\1\24",
-            "\1\25",
-            "",
-            "\1\30\1\uffff\12\27",
-            "\1\30\1\uffff\12\32",
-            "",
-            "\u00ab\33\1\uffff\uff53\33",
-            "\32\22\4\uffff\1\22\1\uffff\32\22",
-            "",
-            "\uffff\34",
-            "\uffff\34",
-            "\1\36\4\uffff\1\35",
-            "",
-            "",
-            "\1\40",
-            "",
-            "\1\41",
-            "\1\42",
-            "\1\43",
-            "",
-            "\1\30\1\uffff\12\27",
-            "",
-            "",
-            "\1\30\1\uffff\12\32",
+            "\1\26",
+            "\1\27",
+            "\1\30",
             "",
             "",
             "",
             "",
+            "\1\36\1\uffff\12\35",
+            "\1\36\1\uffff\12\37",
             "",
-            "\1\44",
-            "\1\45",
+            "\u00ab\41\1\uffff\uff53\41",
+            "\32\25\4\uffff\1\25\1\uffff\32\25",
+            "",
+            "\uffff\42",
+            "\uffff\42",
+            "\1\44\4\uffff\1\43",
+            "",
+            "",
             "\1\46",
+            "",
             "\1\47",
-            "\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
+            "\1\50",
             "\1\51",
+            "",
+            "",
+            "",
+            "",
+            "\1\36\1\uffff\12\35",
+            "",
+            "\1\36\1\uffff\12\37",
+            "",
+            "",
+            "",
+            "",
+            "",
+            "",
             "\1\52",
             "\1\53",
-            "",
-            "\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
-            "\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
-            "\1\56",
-            "",
-            "",
+            "\1\54",
+            "\1\55",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\57",
             "\1\60",
             "\1\61",
-            "\1\62",
-            "\1\63",
+            "",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\64",
-            "\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
+            "",
+            "",
+            "\1\65",
+            "\1\66",
+            "\1\67",
+            "\1\70",
+            "\1\71",
+            "\1\72",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             ""
     };
 
@@ -1091,7 +1177,7 @@
             this.transition = DFA18_transition;
         }
         public String getDescription() {
-            return "1:1: Tokens : ( T14 | T15 | T16 | T17 | T18 | RULE_INTEGER | RULE_REAL | RULE_DESC_STRING | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
+            return "1:1: Tokens : ( T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | RULE_INTEGER | RULE_REAL | RULE_DESC_STRING | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
         }
     }
  
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAParParser.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAParParser.java
index 70629b4..7224c22 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAParParser.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAParParser.java
@@ -23,7 +23,7 @@
 @SuppressWarnings("all")
 public class InternalAParParser extends AbstractInternalContentAssistParser {
     public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INTEGER", "RULE_REAL", "RULE_DESC_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'true'", "'false'", "'model'", "'incorporates'", "'='"
+        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INTEGER", "RULE_REAL", "RULE_DESC_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'true'", "'false'", "'model'", "'incorporates'", "'='", "'['", "','", "']'"
     };
     public static final int RULE_ID=5;
     public static final int RULE_STRING=4;
@@ -321,30 +321,30 @@
 
 
     // $ANTLR start ruleParameter
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:154:1: ruleParameter : ( ( rule__Parameter__Group__0 ) ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:154:1: ruleParameter : ( ( rule__Parameter__Alternatives ) ) ;
     public final void ruleParameter() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:158:2: ( ( ( rule__Parameter__Group__0 ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:159:1: ( ( rule__Parameter__Group__0 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:158:2: ( ( ( rule__Parameter__Alternatives ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:159:1: ( ( rule__Parameter__Alternatives ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:159:1: ( ( rule__Parameter__Group__0 ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:160:1: ( rule__Parameter__Group__0 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:159:1: ( ( rule__Parameter__Alternatives ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:160:1: ( rule__Parameter__Alternatives )
             {
-             before(grammarAccess.getParameterAccess().getGroup()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:161:1: ( rule__Parameter__Group__0 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:161:2: rule__Parameter__Group__0
+             before(grammarAccess.getParameterAccess().getAlternatives()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:161:1: ( rule__Parameter__Alternatives )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:161:2: rule__Parameter__Alternatives
             {
-            pushFollow(FOLLOW_rule__Parameter__Group__0_in_ruleParameter274);
-            rule__Parameter__Group__0();
+            pushFollow(FOLLOW_rule__Parameter__Alternatives_in_ruleParameter274);
+            rule__Parameter__Alternatives();
             _fsp--;
 
 
             }
 
-             after(grammarAccess.getParameterAccess().getGroup()); 
+             after(grammarAccess.getParameterAccess().getAlternatives()); 
 
             }
 
@@ -366,20 +366,245 @@
     // $ANTLR end ruleParameter
 
 
+    // $ANTLR start entryRuleSingleParameter
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:173:1: entryRuleSingleParameter : ruleSingleParameter EOF ;
+    public final void entryRuleSingleParameter() throws RecognitionException {
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:174:1: ( ruleSingleParameter EOF )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:175:1: ruleSingleParameter EOF
+            {
+             before(grammarAccess.getSingleParameterRule()); 
+            pushFollow(FOLLOW_ruleSingleParameter_in_entryRuleSingleParameter301);
+            ruleSingleParameter();
+            _fsp--;
+
+             after(grammarAccess.getSingleParameterRule()); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleSingleParameter308); 
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+        }
+        return ;
+    }
+    // $ANTLR end entryRuleSingleParameter
+
+
+    // $ANTLR start ruleSingleParameter
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:182:1: ruleSingleParameter : ( ( rule__SingleParameter__Group__0 ) ) ;
+    public final void ruleSingleParameter() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:186:2: ( ( ( rule__SingleParameter__Group__0 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:187:1: ( ( rule__SingleParameter__Group__0 ) )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:187:1: ( ( rule__SingleParameter__Group__0 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:188:1: ( rule__SingleParameter__Group__0 )
+            {
+             before(grammarAccess.getSingleParameterAccess().getGroup()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:189:1: ( rule__SingleParameter__Group__0 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:189:2: rule__SingleParameter__Group__0
+            {
+            pushFollow(FOLLOW_rule__SingleParameter__Group__0_in_ruleSingleParameter334);
+            rule__SingleParameter__Group__0();
+            _fsp--;
+
+
+            }
+
+             after(grammarAccess.getSingleParameterAccess().getGroup()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end ruleSingleParameter
+
+
+    // $ANTLR start entryRuleSweepParameter
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:201:1: entryRuleSweepParameter : ruleSweepParameter EOF ;
+    public final void entryRuleSweepParameter() throws RecognitionException {
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:202:1: ( ruleSweepParameter EOF )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:203:1: ruleSweepParameter EOF
+            {
+             before(grammarAccess.getSweepParameterRule()); 
+            pushFollow(FOLLOW_ruleSweepParameter_in_entryRuleSweepParameter361);
+            ruleSweepParameter();
+            _fsp--;
+
+             after(grammarAccess.getSweepParameterRule()); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleSweepParameter368); 
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+        }
+        return ;
+    }
+    // $ANTLR end entryRuleSweepParameter
+
+
+    // $ANTLR start ruleSweepParameter
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:210:1: ruleSweepParameter : ( ( rule__SweepParameter__Group__0 ) ) ;
+    public final void ruleSweepParameter() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:214:2: ( ( ( rule__SweepParameter__Group__0 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:215:1: ( ( rule__SweepParameter__Group__0 ) )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:215:1: ( ( rule__SweepParameter__Group__0 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:216:1: ( rule__SweepParameter__Group__0 )
+            {
+             before(grammarAccess.getSweepParameterAccess().getGroup()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:217:1: ( rule__SweepParameter__Group__0 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:217:2: rule__SweepParameter__Group__0
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__Group__0_in_ruleSweepParameter394);
+            rule__SweepParameter__Group__0();
+            _fsp--;
+
+
+            }
+
+             after(grammarAccess.getSweepParameterAccess().getGroup()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end ruleSweepParameter
+
+
+    // $ANTLR start entryRuleSweepLink
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:229:1: entryRuleSweepLink : ruleSweepLink EOF ;
+    public final void entryRuleSweepLink() throws RecognitionException {
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:230:1: ( ruleSweepLink EOF )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:231:1: ruleSweepLink EOF
+            {
+             before(grammarAccess.getSweepLinkRule()); 
+            pushFollow(FOLLOW_ruleSweepLink_in_entryRuleSweepLink421);
+            ruleSweepLink();
+            _fsp--;
+
+             after(grammarAccess.getSweepLinkRule()); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleSweepLink428); 
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+        }
+        return ;
+    }
+    // $ANTLR end entryRuleSweepLink
+
+
+    // $ANTLR start ruleSweepLink
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:238:1: ruleSweepLink : ( ( rule__SweepLink__Group__0 ) ) ;
+    public final void ruleSweepLink() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:242:2: ( ( ( rule__SweepLink__Group__0 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:243:1: ( ( rule__SweepLink__Group__0 ) )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:243:1: ( ( rule__SweepLink__Group__0 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:244:1: ( rule__SweepLink__Group__0 )
+            {
+             before(grammarAccess.getSweepLinkAccess().getGroup()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:245:1: ( rule__SweepLink__Group__0 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:245:2: rule__SweepLink__Group__0
+            {
+            pushFollow(FOLLOW_rule__SweepLink__Group__0_in_ruleSweepLink454);
+            rule__SweepLink__Group__0();
+            _fsp--;
+
+
+            }
+
+             after(grammarAccess.getSweepLinkAccess().getGroup()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end ruleSweepLink
+
+
     // $ANTLR start entryRuleValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:173:1: entryRuleValue : ruleValue EOF ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:257:1: entryRuleValue : ruleValue EOF ;
     public final void entryRuleValue() throws RecognitionException {
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:174:1: ( ruleValue EOF )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:175:1: ruleValue EOF
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:258:1: ( ruleValue EOF )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:259:1: ruleValue EOF
             {
              before(grammarAccess.getValueRule()); 
-            pushFollow(FOLLOW_ruleValue_in_entryRuleValue301);
+            pushFollow(FOLLOW_ruleValue_in_entryRuleValue481);
             ruleValue();
             _fsp--;
 
              after(grammarAccess.getValueRule()); 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleValue308); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleValue488); 
 
             }
 
@@ -396,23 +621,23 @@
 
 
     // $ANTLR start ruleValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:182:1: ruleValue : ( ( rule__Value__Alternatives ) ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:266:1: ruleValue : ( ( rule__Value__Alternatives ) ) ;
     public final void ruleValue() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:186:2: ( ( ( rule__Value__Alternatives ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:187:1: ( ( rule__Value__Alternatives ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:270:2: ( ( ( rule__Value__Alternatives ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:271:1: ( ( rule__Value__Alternatives ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:187:1: ( ( rule__Value__Alternatives ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:188:1: ( rule__Value__Alternatives )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:271:1: ( ( rule__Value__Alternatives ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:272:1: ( rule__Value__Alternatives )
             {
              before(grammarAccess.getValueAccess().getAlternatives()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:189:1: ( rule__Value__Alternatives )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:189:2: rule__Value__Alternatives
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:273:1: ( rule__Value__Alternatives )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:273:2: rule__Value__Alternatives
             {
-            pushFollow(FOLLOW_rule__Value__Alternatives_in_ruleValue334);
+            pushFollow(FOLLOW_rule__Value__Alternatives_in_ruleValue514);
             rule__Value__Alternatives();
             _fsp--;
 
@@ -442,19 +667,19 @@
 
 
     // $ANTLR start entryRuleIntValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:201:1: entryRuleIntValue : ruleIntValue EOF ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:285:1: entryRuleIntValue : ruleIntValue EOF ;
     public final void entryRuleIntValue() throws RecognitionException {
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:202:1: ( ruleIntValue EOF )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:203:1: ruleIntValue EOF
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:286:1: ( ruleIntValue EOF )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:287:1: ruleIntValue EOF
             {
              before(grammarAccess.getIntValueRule()); 
-            pushFollow(FOLLOW_ruleIntValue_in_entryRuleIntValue361);
+            pushFollow(FOLLOW_ruleIntValue_in_entryRuleIntValue541);
             ruleIntValue();
             _fsp--;
 
              after(grammarAccess.getIntValueRule()); 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleIntValue368); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleIntValue548); 
 
             }
 
@@ -471,23 +696,23 @@
 
 
     // $ANTLR start ruleIntValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:210:1: ruleIntValue : ( ( rule__IntValue__ValueAssignment ) ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:294:1: ruleIntValue : ( ( rule__IntValue__ValueAssignment ) ) ;
     public final void ruleIntValue() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:214:2: ( ( ( rule__IntValue__ValueAssignment ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:215:1: ( ( rule__IntValue__ValueAssignment ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:298:2: ( ( ( rule__IntValue__ValueAssignment ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:299:1: ( ( rule__IntValue__ValueAssignment ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:215:1: ( ( rule__IntValue__ValueAssignment ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:216:1: ( rule__IntValue__ValueAssignment )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:299:1: ( ( rule__IntValue__ValueAssignment ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:300:1: ( rule__IntValue__ValueAssignment )
             {
              before(grammarAccess.getIntValueAccess().getValueAssignment()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:217:1: ( rule__IntValue__ValueAssignment )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:217:2: rule__IntValue__ValueAssignment
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:301:1: ( rule__IntValue__ValueAssignment )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:301:2: rule__IntValue__ValueAssignment
             {
-            pushFollow(FOLLOW_rule__IntValue__ValueAssignment_in_ruleIntValue394);
+            pushFollow(FOLLOW_rule__IntValue__ValueAssignment_in_ruleIntValue574);
             rule__IntValue__ValueAssignment();
             _fsp--;
 
@@ -517,19 +742,19 @@
 
 
     // $ANTLR start entryRuleRealValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:229:1: entryRuleRealValue : ruleRealValue EOF ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:313:1: entryRuleRealValue : ruleRealValue EOF ;
     public final void entryRuleRealValue() throws RecognitionException {
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:230:1: ( ruleRealValue EOF )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:231:1: ruleRealValue EOF
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:314:1: ( ruleRealValue EOF )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:315:1: ruleRealValue EOF
             {
              before(grammarAccess.getRealValueRule()); 
-            pushFollow(FOLLOW_ruleRealValue_in_entryRuleRealValue421);
+            pushFollow(FOLLOW_ruleRealValue_in_entryRuleRealValue601);
             ruleRealValue();
             _fsp--;
 
              after(grammarAccess.getRealValueRule()); 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleRealValue428); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleRealValue608); 
 
             }
 
@@ -546,23 +771,23 @@
 
 
     // $ANTLR start ruleRealValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:238:1: ruleRealValue : ( ( rule__RealValue__ValueAssignment ) ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:322:1: ruleRealValue : ( ( rule__RealValue__ValueAssignment ) ) ;
     public final void ruleRealValue() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:242:2: ( ( ( rule__RealValue__ValueAssignment ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:243:1: ( ( rule__RealValue__ValueAssignment ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:326:2: ( ( ( rule__RealValue__ValueAssignment ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:327:1: ( ( rule__RealValue__ValueAssignment ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:243:1: ( ( rule__RealValue__ValueAssignment ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:244:1: ( rule__RealValue__ValueAssignment )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:327:1: ( ( rule__RealValue__ValueAssignment ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:328:1: ( rule__RealValue__ValueAssignment )
             {
              before(grammarAccess.getRealValueAccess().getValueAssignment()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:245:1: ( rule__RealValue__ValueAssignment )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:245:2: rule__RealValue__ValueAssignment
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:329:1: ( rule__RealValue__ValueAssignment )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:329:2: rule__RealValue__ValueAssignment
             {
-            pushFollow(FOLLOW_rule__RealValue__ValueAssignment_in_ruleRealValue454);
+            pushFollow(FOLLOW_rule__RealValue__ValueAssignment_in_ruleRealValue634);
             rule__RealValue__ValueAssignment();
             _fsp--;
 
@@ -592,19 +817,19 @@
 
 
     // $ANTLR start entryRuleStringValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:257:1: entryRuleStringValue : ruleStringValue EOF ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:341:1: entryRuleStringValue : ruleStringValue EOF ;
     public final void entryRuleStringValue() throws RecognitionException {
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:258:1: ( ruleStringValue EOF )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:259:1: ruleStringValue EOF
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:342:1: ( ruleStringValue EOF )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:343:1: ruleStringValue EOF
             {
              before(grammarAccess.getStringValueRule()); 
-            pushFollow(FOLLOW_ruleStringValue_in_entryRuleStringValue481);
+            pushFollow(FOLLOW_ruleStringValue_in_entryRuleStringValue661);
             ruleStringValue();
             _fsp--;
 
              after(grammarAccess.getStringValueRule()); 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleStringValue488); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleStringValue668); 
 
             }
 
@@ -621,23 +846,23 @@
 
 
     // $ANTLR start ruleStringValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:266:1: ruleStringValue : ( ( rule__StringValue__ValueAssignment ) ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:350:1: ruleStringValue : ( ( rule__StringValue__ValueAssignment ) ) ;
     public final void ruleStringValue() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:270:2: ( ( ( rule__StringValue__ValueAssignment ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:271:1: ( ( rule__StringValue__ValueAssignment ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:354:2: ( ( ( rule__StringValue__ValueAssignment ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:355:1: ( ( rule__StringValue__ValueAssignment ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:271:1: ( ( rule__StringValue__ValueAssignment ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:272:1: ( rule__StringValue__ValueAssignment )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:355:1: ( ( rule__StringValue__ValueAssignment ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:356:1: ( rule__StringValue__ValueAssignment )
             {
              before(grammarAccess.getStringValueAccess().getValueAssignment()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:273:1: ( rule__StringValue__ValueAssignment )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:273:2: rule__StringValue__ValueAssignment
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:357:1: ( rule__StringValue__ValueAssignment )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:357:2: rule__StringValue__ValueAssignment
             {
-            pushFollow(FOLLOW_rule__StringValue__ValueAssignment_in_ruleStringValue514);
+            pushFollow(FOLLOW_rule__StringValue__ValueAssignment_in_ruleStringValue694);
             rule__StringValue__ValueAssignment();
             _fsp--;
 
@@ -667,19 +892,19 @@
 
 
     // $ANTLR start entryRuleBooleanValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:285:1: entryRuleBooleanValue : ruleBooleanValue EOF ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:369:1: entryRuleBooleanValue : ruleBooleanValue EOF ;
     public final void entryRuleBooleanValue() throws RecognitionException {
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:286:1: ( ruleBooleanValue EOF )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:287:1: ruleBooleanValue EOF
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:370:1: ( ruleBooleanValue EOF )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:371:1: ruleBooleanValue EOF
             {
              before(grammarAccess.getBooleanValueRule()); 
-            pushFollow(FOLLOW_ruleBooleanValue_in_entryRuleBooleanValue541);
+            pushFollow(FOLLOW_ruleBooleanValue_in_entryRuleBooleanValue721);
             ruleBooleanValue();
             _fsp--;
 
              after(grammarAccess.getBooleanValueRule()); 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleBooleanValue548); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleBooleanValue728); 
 
             }
 
@@ -696,23 +921,23 @@
 
 
     // $ANTLR start ruleBooleanValue
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:294:1: ruleBooleanValue : ( ( rule__BooleanValue__ValueAssignment ) ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:378:1: ruleBooleanValue : ( ( rule__BooleanValue__ValueAssignment ) ) ;
     public final void ruleBooleanValue() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:298:2: ( ( ( rule__BooleanValue__ValueAssignment ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:299:1: ( ( rule__BooleanValue__ValueAssignment ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:382:2: ( ( ( rule__BooleanValue__ValueAssignment ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:383:1: ( ( rule__BooleanValue__ValueAssignment ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:299:1: ( ( rule__BooleanValue__ValueAssignment ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:300:1: ( rule__BooleanValue__ValueAssignment )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:383:1: ( ( rule__BooleanValue__ValueAssignment ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:384:1: ( rule__BooleanValue__ValueAssignment )
             {
              before(grammarAccess.getBooleanValueAccess().getValueAssignment()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:301:1: ( rule__BooleanValue__ValueAssignment )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:301:2: rule__BooleanValue__ValueAssignment
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:385:1: ( rule__BooleanValue__ValueAssignment )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:385:2: rule__BooleanValue__ValueAssignment
             {
-            pushFollow(FOLLOW_rule__BooleanValue__ValueAssignment_in_ruleBooleanValue574);
+            pushFollow(FOLLOW_rule__BooleanValue__ValueAssignment_in_ruleBooleanValue754);
             rule__BooleanValue__ValueAssignment();
             _fsp--;
 
@@ -742,23 +967,23 @@
 
 
     // $ANTLR start ruleBOOLEAN
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:314:1: ruleBOOLEAN : ( ( rule__BOOLEAN__Alternatives ) ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:398:1: ruleBOOLEAN : ( ( rule__BOOLEAN__Alternatives ) ) ;
     public final void ruleBOOLEAN() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:318:1: ( ( ( rule__BOOLEAN__Alternatives ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:319:1: ( ( rule__BOOLEAN__Alternatives ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:402:1: ( ( ( rule__BOOLEAN__Alternatives ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:403:1: ( ( rule__BOOLEAN__Alternatives ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:319:1: ( ( rule__BOOLEAN__Alternatives ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:320:1: ( rule__BOOLEAN__Alternatives )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:403:1: ( ( rule__BOOLEAN__Alternatives ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:404:1: ( rule__BOOLEAN__Alternatives )
             {
              before(grammarAccess.getBOOLEANAccess().getAlternatives()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:321:1: ( rule__BOOLEAN__Alternatives )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:321:2: rule__BOOLEAN__Alternatives
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:405:1: ( rule__BOOLEAN__Alternatives )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:405:2: rule__BOOLEAN__Alternatives
             {
-            pushFollow(FOLLOW_rule__BOOLEAN__Alternatives_in_ruleBOOLEAN611);
+            pushFollow(FOLLOW_rule__BOOLEAN__Alternatives_in_ruleBOOLEAN791);
             rule__BOOLEAN__Alternatives();
             _fsp--;
 
@@ -787,53 +1012,161 @@
     // $ANTLR end ruleBOOLEAN
 
 
+    // $ANTLR start rule__Parameter__Alternatives
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:416:1: rule__Parameter__Alternatives : ( ( ruleSingleParameter ) | ( ruleSweepParameter ) | ( ruleSweepLink ) );
+    public final void rule__Parameter__Alternatives() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:420:1: ( ( ruleSingleParameter ) | ( ruleSweepParameter ) | ( ruleSweepLink ) )
+            int alt1=3;
+            int LA1_0 = input.LA(1);
+
+            if ( (LA1_0==RULE_ID) ) {
+                int LA1_1 = input.LA(2);
+
+                if ( (LA1_1==19) ) {
+                    alt1=2;
+                }
+                else if ( (LA1_1==18) ) {
+                    alt1=1;
+                }
+                else {
+                    NoViableAltException nvae =
+                        new NoViableAltException("416:1: rule__Parameter__Alternatives : ( ( ruleSingleParameter ) | ( ruleSweepParameter ) | ( ruleSweepLink ) );", 1, 1, input);
+
+                    throw nvae;
+                }
+            }
+            else if ( (LA1_0==19) ) {
+                alt1=3;
+            }
+            else {
+                NoViableAltException nvae =
+                    new NoViableAltException("416:1: rule__Parameter__Alternatives : ( ( ruleSingleParameter ) | ( ruleSweepParameter ) | ( ruleSweepLink ) );", 1, 0, input);
+
+                throw nvae;
+            }
+            switch (alt1) {
+                case 1 :
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:421:1: ( ruleSingleParameter )
+                    {
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:421:1: ( ruleSingleParameter )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:422:1: ruleSingleParameter
+                    {
+                     before(grammarAccess.getParameterAccess().getSingleParameterParserRuleCall_0()); 
+                    pushFollow(FOLLOW_ruleSingleParameter_in_rule__Parameter__Alternatives826);
+                    ruleSingleParameter();
+                    _fsp--;
+
+                     after(grammarAccess.getParameterAccess().getSingleParameterParserRuleCall_0()); 
+
+                    }
+
+
+                    }
+                    break;
+                case 2 :
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:427:6: ( ruleSweepParameter )
+                    {
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:427:6: ( ruleSweepParameter )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:428:1: ruleSweepParameter
+                    {
+                     before(grammarAccess.getParameterAccess().getSweepParameterParserRuleCall_1()); 
+                    pushFollow(FOLLOW_ruleSweepParameter_in_rule__Parameter__Alternatives843);
+                    ruleSweepParameter();
+                    _fsp--;
+
+                     after(grammarAccess.getParameterAccess().getSweepParameterParserRuleCall_1()); 
+
+                    }
+
+
+                    }
+                    break;
+                case 3 :
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:433:6: ( ruleSweepLink )
+                    {
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:433:6: ( ruleSweepLink )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:434:1: ruleSweepLink
+                    {
+                     before(grammarAccess.getParameterAccess().getSweepLinkParserRuleCall_2()); 
+                    pushFollow(FOLLOW_ruleSweepLink_in_rule__Parameter__Alternatives860);
+                    ruleSweepLink();
+                    _fsp--;
+
+                     after(grammarAccess.getParameterAccess().getSweepLinkParserRuleCall_2()); 
+
+                    }
+
+
+                    }
+                    break;
+
+            }
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__Parameter__Alternatives
+
+
     // $ANTLR start rule__Value__Alternatives
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:332:1: rule__Value__Alternatives : ( ( ruleIntValue ) | ( ruleStringValue ) | ( ruleRealValue ) | ( ruleBooleanValue ) );
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:444:1: rule__Value__Alternatives : ( ( ruleIntValue ) | ( ruleStringValue ) | ( ruleRealValue ) | ( ruleBooleanValue ) );
     public final void rule__Value__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:336:1: ( ( ruleIntValue ) | ( ruleStringValue ) | ( ruleRealValue ) | ( ruleBooleanValue ) )
-            int alt1=4;
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:448:1: ( ( ruleIntValue ) | ( ruleStringValue ) | ( ruleRealValue ) | ( ruleBooleanValue ) )
+            int alt2=4;
             switch ( input.LA(1) ) {
             case RULE_INTEGER:
                 {
-                alt1=1;
+                alt2=1;
                 }
                 break;
             case RULE_STRING:
                 {
-                alt1=2;
+                alt2=2;
                 }
                 break;
             case RULE_REAL:
                 {
-                alt1=3;
+                alt2=3;
                 }
                 break;
             case 14:
             case 15:
                 {
-                alt1=4;
+                alt2=4;
                 }
                 break;
             default:
                 NoViableAltException nvae =
-                    new NoViableAltException("332:1: rule__Value__Alternatives : ( ( ruleIntValue ) | ( ruleStringValue ) | ( ruleRealValue ) | ( ruleBooleanValue ) );", 1, 0, input);
+                    new NoViableAltException("444:1: rule__Value__Alternatives : ( ( ruleIntValue ) | ( ruleStringValue ) | ( ruleRealValue ) | ( ruleBooleanValue ) );", 2, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt1) {
+            switch (alt2) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:337:1: ( ruleIntValue )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:449:1: ( ruleIntValue )
                     {
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:337:1: ( ruleIntValue )
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:338:1: ruleIntValue
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:449:1: ( ruleIntValue )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:450:1: ruleIntValue
                     {
                      before(grammarAccess.getValueAccess().getIntValueParserRuleCall_0()); 
-                    pushFollow(FOLLOW_ruleIntValue_in_rule__Value__Alternatives646);
+                    pushFollow(FOLLOW_ruleIntValue_in_rule__Value__Alternatives892);
                     ruleIntValue();
                     _fsp--;
 
@@ -845,13 +1178,13 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:343:6: ( ruleStringValue )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:455:6: ( ruleStringValue )
                     {
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:343:6: ( ruleStringValue )
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:344:1: ruleStringValue
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:455:6: ( ruleStringValue )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:456:1: ruleStringValue
                     {
                      before(grammarAccess.getValueAccess().getStringValueParserRuleCall_1()); 
-                    pushFollow(FOLLOW_ruleStringValue_in_rule__Value__Alternatives663);
+                    pushFollow(FOLLOW_ruleStringValue_in_rule__Value__Alternatives909);
                     ruleStringValue();
                     _fsp--;
 
@@ -863,13 +1196,13 @@
                     }
                     break;
                 case 3 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:349:6: ( ruleRealValue )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:461:6: ( ruleRealValue )
                     {
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:349:6: ( ruleRealValue )
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:350:1: ruleRealValue
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:461:6: ( ruleRealValue )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:462:1: ruleRealValue
                     {
                      before(grammarAccess.getValueAccess().getRealValueParserRuleCall_2()); 
-                    pushFollow(FOLLOW_ruleRealValue_in_rule__Value__Alternatives680);
+                    pushFollow(FOLLOW_ruleRealValue_in_rule__Value__Alternatives926);
                     ruleRealValue();
                     _fsp--;
 
@@ -881,13 +1214,13 @@
                     }
                     break;
                 case 4 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:355:6: ( ruleBooleanValue )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:467:6: ( ruleBooleanValue )
                     {
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:355:6: ( ruleBooleanValue )
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:356:1: ruleBooleanValue
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:467:6: ( ruleBooleanValue )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:468:1: ruleBooleanValue
                     {
                      before(grammarAccess.getValueAccess().getBooleanValueParserRuleCall_3()); 
-                    pushFollow(FOLLOW_ruleBooleanValue_in_rule__Value__Alternatives697);
+                    pushFollow(FOLLOW_ruleBooleanValue_in_rule__Value__Alternatives943);
                     ruleBooleanValue();
                     _fsp--;
 
@@ -916,40 +1249,40 @@
 
 
     // $ANTLR start rule__BOOLEAN__Alternatives
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:366:1: rule__BOOLEAN__Alternatives : ( ( ( 'true' ) ) | ( ( 'false' ) ) );
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:478:1: rule__BOOLEAN__Alternatives : ( ( ( 'true' ) ) | ( ( 'false' ) ) );
     public final void rule__BOOLEAN__Alternatives() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:370:1: ( ( ( 'true' ) ) | ( ( 'false' ) ) )
-            int alt2=2;
-            int LA2_0 = input.LA(1);
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:482:1: ( ( ( 'true' ) ) | ( ( 'false' ) ) )
+            int alt3=2;
+            int LA3_0 = input.LA(1);
 
-            if ( (LA2_0==14) ) {
-                alt2=1;
+            if ( (LA3_0==14) ) {
+                alt3=1;
             }
-            else if ( (LA2_0==15) ) {
-                alt2=2;
+            else if ( (LA3_0==15) ) {
+                alt3=2;
             }
             else {
                 NoViableAltException nvae =
-                    new NoViableAltException("366:1: rule__BOOLEAN__Alternatives : ( ( ( 'true' ) ) | ( ( 'false' ) ) );", 2, 0, input);
+                    new NoViableAltException("478:1: rule__BOOLEAN__Alternatives : ( ( ( 'true' ) ) | ( ( 'false' ) ) );", 3, 0, input);
 
                 throw nvae;
             }
-            switch (alt2) {
+            switch (alt3) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:371:1: ( ( 'true' ) )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:483:1: ( ( 'true' ) )
                     {
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:371:1: ( ( 'true' ) )
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:372:1: ( 'true' )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:483:1: ( ( 'true' ) )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:484:1: ( 'true' )
                     {
                      before(grammarAccess.getBOOLEANAccess().getTRUEEnumLiteralDeclaration_0()); 
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:373:1: ( 'true' )
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:373:3: 'true'
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:485:1: ( 'true' )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:485:3: 'true'
                     {
-                    match(input,14,FOLLOW_14_in_rule__BOOLEAN__Alternatives730); 
+                    match(input,14,FOLLOW_14_in_rule__BOOLEAN__Alternatives976); 
 
                     }
 
@@ -961,16 +1294,16 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:378:6: ( ( 'false' ) )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:490:6: ( ( 'false' ) )
                     {
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:378:6: ( ( 'false' ) )
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:379:1: ( 'false' )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:490:6: ( ( 'false' ) )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:491:1: ( 'false' )
                     {
                      before(grammarAccess.getBOOLEANAccess().getFALSEEnumLiteralDeclaration_1()); 
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:380:1: ( 'false' )
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:380:3: 'false'
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:492:1: ( 'false' )
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:492:3: 'false'
                     {
-                    match(input,15,FOLLOW_15_in_rule__BOOLEAN__Alternatives751); 
+                    match(input,15,FOLLOW_15_in_rule__BOOLEAN__Alternatives997); 
 
                     }
 
@@ -999,20 +1332,20 @@
 
 
     // $ANTLR start rule__Model__Group__0
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:392:1: rule__Model__Group__0 : rule__Model__Group__0__Impl rule__Model__Group__1 ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:504:1: rule__Model__Group__0 : rule__Model__Group__0__Impl rule__Model__Group__1 ;
     public final void rule__Model__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:396:1: ( rule__Model__Group__0__Impl rule__Model__Group__1 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:397:2: rule__Model__Group__0__Impl rule__Model__Group__1
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:508:1: ( rule__Model__Group__0__Impl rule__Model__Group__1 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:509:2: rule__Model__Group__0__Impl rule__Model__Group__1
             {
-            pushFollow(FOLLOW_rule__Model__Group__0__Impl_in_rule__Model__Group__0784);
+            pushFollow(FOLLOW_rule__Model__Group__0__Impl_in_rule__Model__Group__01030);
             rule__Model__Group__0__Impl();
             _fsp--;
 
-            pushFollow(FOLLOW_rule__Model__Group__1_in_rule__Model__Group__0787);
+            pushFollow(FOLLOW_rule__Model__Group__1_in_rule__Model__Group__01033);
             rule__Model__Group__1();
             _fsp--;
 
@@ -1035,31 +1368,31 @@
 
 
     // $ANTLR start rule__Model__Group__0__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:404:1: rule__Model__Group__0__Impl : ( ( rule__Model__NameAssignment_0 )? ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:516:1: rule__Model__Group__0__Impl : ( ( rule__Model__NameAssignment_0 )? ) ;
     public final void rule__Model__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:408:1: ( ( ( rule__Model__NameAssignment_0 )? ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:409:1: ( ( rule__Model__NameAssignment_0 )? )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:520:1: ( ( ( rule__Model__NameAssignment_0 )? ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:521:1: ( ( rule__Model__NameAssignment_0 )? )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:409:1: ( ( rule__Model__NameAssignment_0 )? )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:410:1: ( rule__Model__NameAssignment_0 )?
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:521:1: ( ( rule__Model__NameAssignment_0 )? )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:522:1: ( rule__Model__NameAssignment_0 )?
             {
              before(grammarAccess.getModelAccess().getNameAssignment_0()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:411:1: ( rule__Model__NameAssignment_0 )?
-            int alt3=2;
-            int LA3_0 = input.LA(1);
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:523:1: ( rule__Model__NameAssignment_0 )?
+            int alt4=2;
+            int LA4_0 = input.LA(1);
 
-            if ( (LA3_0==RULE_STRING) ) {
-                alt3=1;
+            if ( (LA4_0==RULE_STRING) ) {
+                alt4=1;
             }
-            switch (alt3) {
+            switch (alt4) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:411:2: rule__Model__NameAssignment_0
+                    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:523:2: rule__Model__NameAssignment_0
                     {
-                    pushFollow(FOLLOW_rule__Model__NameAssignment_0_in_rule__Model__Group__0__Impl814);
+                    pushFollow(FOLLOW_rule__Model__NameAssignment_0_in_rule__Model__Group__0__Impl1060);
                     rule__Model__NameAssignment_0();
                     _fsp--;
 
@@ -1092,20 +1425,20 @@
 
 
     // $ANTLR start rule__Model__Group__1
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:421:1: rule__Model__Group__1 : rule__Model__Group__1__Impl rule__Model__Group__2 ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:533:1: rule__Model__Group__1 : rule__Model__Group__1__Impl rule__Model__Group__2 ;
     public final void rule__Model__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:425:1: ( rule__Model__Group__1__Impl rule__Model__Group__2 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:426:2: rule__Model__Group__1__Impl rule__Model__Group__2
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:537:1: ( rule__Model__Group__1__Impl rule__Model__Group__2 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:538:2: rule__Model__Group__1__Impl rule__Model__Group__2
             {
-            pushFollow(FOLLOW_rule__Model__Group__1__Impl_in_rule__Model__Group__1845);
+            pushFollow(FOLLOW_rule__Model__Group__1__Impl_in_rule__Model__Group__11091);
             rule__Model__Group__1__Impl();
             _fsp--;
 
-            pushFollow(FOLLOW_rule__Model__Group__2_in_rule__Model__Group__1848);
+            pushFollow(FOLLOW_rule__Model__Group__2_in_rule__Model__Group__11094);
             rule__Model__Group__2();
             _fsp--;
 
@@ -1128,20 +1461,20 @@
 
 
     // $ANTLR start rule__Model__Group__1__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:433:1: rule__Model__Group__1__Impl : ( 'model' ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:545:1: rule__Model__Group__1__Impl : ( 'model' ) ;
     public final void rule__Model__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:437:1: ( ( 'model' ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:438:1: ( 'model' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:549:1: ( ( 'model' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:550:1: ( 'model' )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:438:1: ( 'model' )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:439:1: 'model'
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:550:1: ( 'model' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:551:1: 'model'
             {
              before(grammarAccess.getModelAccess().getModelKeyword_1()); 
-            match(input,16,FOLLOW_16_in_rule__Model__Group__1__Impl876); 
+            match(input,16,FOLLOW_16_in_rule__Model__Group__1__Impl1122); 
              after(grammarAccess.getModelAccess().getModelKeyword_1()); 
 
             }
@@ -1165,20 +1498,20 @@
 
 
     // $ANTLR start rule__Model__Group__2
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:452:1: rule__Model__Group__2 : rule__Model__Group__2__Impl rule__Model__Group__3 ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:564:1: rule__Model__Group__2 : rule__Model__Group__2__Impl rule__Model__Group__3 ;
     public final void rule__Model__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:456:1: ( rule__Model__Group__2__Impl rule__Model__Group__3 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:457:2: rule__Model__Group__2__Impl rule__Model__Group__3
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:568:1: ( rule__Model__Group__2__Impl rule__Model__Group__3 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:569:2: rule__Model__Group__2__Impl rule__Model__Group__3
             {
-            pushFollow(FOLLOW_rule__Model__Group__2__Impl_in_rule__Model__Group__2907);
+            pushFollow(FOLLOW_rule__Model__Group__2__Impl_in_rule__Model__Group__21153);
             rule__Model__Group__2__Impl();
             _fsp--;
 
-            pushFollow(FOLLOW_rule__Model__Group__3_in_rule__Model__Group__2910);
+            pushFollow(FOLLOW_rule__Model__Group__3_in_rule__Model__Group__21156);
             rule__Model__Group__3();
             _fsp--;
 
@@ -1201,23 +1534,23 @@
 
 
     // $ANTLR start rule__Model__Group__2__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:464:1: rule__Model__Group__2__Impl : ( ( rule__Model__ModelAssignment_2 ) ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:576:1: rule__Model__Group__2__Impl : ( ( rule__Model__ModelAssignment_2 ) ) ;
     public final void rule__Model__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:468:1: ( ( ( rule__Model__ModelAssignment_2 ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:469:1: ( ( rule__Model__ModelAssignment_2 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:580:1: ( ( ( rule__Model__ModelAssignment_2 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:581:1: ( ( rule__Model__ModelAssignment_2 ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:469:1: ( ( rule__Model__ModelAssignment_2 ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:470:1: ( rule__Model__ModelAssignment_2 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:581:1: ( ( rule__Model__ModelAssignment_2 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:582:1: ( rule__Model__ModelAssignment_2 )
             {
              before(grammarAccess.getModelAccess().getModelAssignment_2()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:471:1: ( rule__Model__ModelAssignment_2 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:471:2: rule__Model__ModelAssignment_2
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:583:1: ( rule__Model__ModelAssignment_2 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:583:2: rule__Model__ModelAssignment_2
             {
-            pushFollow(FOLLOW_rule__Model__ModelAssignment_2_in_rule__Model__Group__2__Impl937);
+            pushFollow(FOLLOW_rule__Model__ModelAssignment_2_in_rule__Model__Group__2__Impl1183);
             rule__Model__ModelAssignment_2();
             _fsp--;
 
@@ -1247,20 +1580,20 @@
 
 
     // $ANTLR start rule__Model__Group__3
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:481:1: rule__Model__Group__3 : rule__Model__Group__3__Impl rule__Model__Group__4 ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:593:1: rule__Model__Group__3 : rule__Model__Group__3__Impl rule__Model__Group__4 ;
     public final void rule__Model__Group__3() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:485:1: ( rule__Model__Group__3__Impl rule__Model__Group__4 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:486:2: rule__Model__Group__3__Impl rule__Model__Group__4
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:597:1: ( rule__Model__Group__3__Impl rule__Model__Group__4 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:598:2: rule__Model__Group__3__Impl rule__Model__Group__4
             {
-            pushFollow(FOLLOW_rule__Model__Group__3__Impl_in_rule__Model__Group__3967);
+            pushFollow(FOLLOW_rule__Model__Group__3__Impl_in_rule__Model__Group__31213);
             rule__Model__Group__3__Impl();
             _fsp--;
 
-            pushFollow(FOLLOW_rule__Model__Group__4_in_rule__Model__Group__3970);
+            pushFollow(FOLLOW_rule__Model__Group__4_in_rule__Model__Group__31216);
             rule__Model__Group__4();
             _fsp--;
 
@@ -1283,35 +1616,35 @@
 
 
     // $ANTLR start rule__Model__Group__3__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:493:1: rule__Model__Group__3__Impl : ( ( rule__Model__Group_3__0 )* ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:605:1: rule__Model__Group__3__Impl : ( ( rule__Model__Group_3__0 )* ) ;
     public final void rule__Model__Group__3__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:497:1: ( ( ( rule__Model__Group_3__0 )* ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:498:1: ( ( rule__Model__Group_3__0 )* )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:609:1: ( ( ( rule__Model__Group_3__0 )* ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:610:1: ( ( rule__Model__Group_3__0 )* )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:498:1: ( ( rule__Model__Group_3__0 )* )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:499:1: ( rule__Model__Group_3__0 )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:610:1: ( ( rule__Model__Group_3__0 )* )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:611:1: ( rule__Model__Group_3__0 )*
             {
              before(grammarAccess.getModelAccess().getGroup_3()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:500:1: ( rule__Model__Group_3__0 )*
-            loop4:
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:612:1: ( rule__Model__Group_3__0 )*
+            loop5:
             do {
-                int alt4=2;
-                int LA4_0 = input.LA(1);
+                int alt5=2;
+                int LA5_0 = input.LA(1);
 
-                if ( (LA4_0==17) ) {
-                    alt4=1;
+                if ( (LA5_0==17) ) {
+                    alt5=1;
                 }
 
 
-                switch (alt4) {
+                switch (alt5) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:500:2: rule__Model__Group_3__0
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:612:2: rule__Model__Group_3__0
             	    {
-            	    pushFollow(FOLLOW_rule__Model__Group_3__0_in_rule__Model__Group__3__Impl997);
+            	    pushFollow(FOLLOW_rule__Model__Group_3__0_in_rule__Model__Group__3__Impl1243);
             	    rule__Model__Group_3__0();
             	    _fsp--;
 
@@ -1320,7 +1653,7 @@
             	    break;
 
             	default :
-            	    break loop4;
+            	    break loop5;
                 }
             } while (true);
 
@@ -1347,16 +1680,16 @@
 
 
     // $ANTLR start rule__Model__Group__4
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:510:1: rule__Model__Group__4 : rule__Model__Group__4__Impl ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:622:1: rule__Model__Group__4 : rule__Model__Group__4__Impl ;
     public final void rule__Model__Group__4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:514:1: ( rule__Model__Group__4__Impl )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:515:2: rule__Model__Group__4__Impl
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:626:1: ( rule__Model__Group__4__Impl )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:627:2: rule__Model__Group__4__Impl
             {
-            pushFollow(FOLLOW_rule__Model__Group__4__Impl_in_rule__Model__Group__41028);
+            pushFollow(FOLLOW_rule__Model__Group__4__Impl_in_rule__Model__Group__41274);
             rule__Model__Group__4__Impl();
             _fsp--;
 
@@ -1379,35 +1712,35 @@
 
 
     // $ANTLR start rule__Model__Group__4__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:521:1: rule__Model__Group__4__Impl : ( ( rule__Model__ParametersAssignment_4 )* ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:633:1: rule__Model__Group__4__Impl : ( ( rule__Model__ParametersAssignment_4 )* ) ;
     public final void rule__Model__Group__4__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:525:1: ( ( ( rule__Model__ParametersAssignment_4 )* ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:526:1: ( ( rule__Model__ParametersAssignment_4 )* )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:637:1: ( ( ( rule__Model__ParametersAssignment_4 )* ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:638:1: ( ( rule__Model__ParametersAssignment_4 )* )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:526:1: ( ( rule__Model__ParametersAssignment_4 )* )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:527:1: ( rule__Model__ParametersAssignment_4 )*
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:638:1: ( ( rule__Model__ParametersAssignment_4 )* )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:639:1: ( rule__Model__ParametersAssignment_4 )*
             {
              before(grammarAccess.getModelAccess().getParametersAssignment_4()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:528:1: ( rule__Model__ParametersAssignment_4 )*
-            loop5:
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:640:1: ( rule__Model__ParametersAssignment_4 )*
+            loop6:
             do {
-                int alt5=2;
-                int LA5_0 = input.LA(1);
+                int alt6=2;
+                int LA6_0 = input.LA(1);
 
-                if ( (LA5_0==RULE_ID) ) {
-                    alt5=1;
+                if ( (LA6_0==RULE_ID||LA6_0==19) ) {
+                    alt6=1;
                 }
 
 
-                switch (alt5) {
+                switch (alt6) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:528:2: rule__Model__ParametersAssignment_4
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:640:2: rule__Model__ParametersAssignment_4
             	    {
-            	    pushFollow(FOLLOW_rule__Model__ParametersAssignment_4_in_rule__Model__Group__4__Impl1055);
+            	    pushFollow(FOLLOW_rule__Model__ParametersAssignment_4_in_rule__Model__Group__4__Impl1301);
             	    rule__Model__ParametersAssignment_4();
             	    _fsp--;
 
@@ -1416,7 +1749,7 @@
             	    break;
 
             	default :
-            	    break loop5;
+            	    break loop6;
                 }
             } while (true);
 
@@ -1443,20 +1776,20 @@
 
 
     // $ANTLR start rule__Model__Group_3__0
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:548:1: rule__Model__Group_3__0 : rule__Model__Group_3__0__Impl rule__Model__Group_3__1 ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:660:1: rule__Model__Group_3__0 : rule__Model__Group_3__0__Impl rule__Model__Group_3__1 ;
     public final void rule__Model__Group_3__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:552:1: ( rule__Model__Group_3__0__Impl rule__Model__Group_3__1 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:553:2: rule__Model__Group_3__0__Impl rule__Model__Group_3__1
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:664:1: ( rule__Model__Group_3__0__Impl rule__Model__Group_3__1 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:665:2: rule__Model__Group_3__0__Impl rule__Model__Group_3__1
             {
-            pushFollow(FOLLOW_rule__Model__Group_3__0__Impl_in_rule__Model__Group_3__01096);
+            pushFollow(FOLLOW_rule__Model__Group_3__0__Impl_in_rule__Model__Group_3__01342);
             rule__Model__Group_3__0__Impl();
             _fsp--;
 
-            pushFollow(FOLLOW_rule__Model__Group_3__1_in_rule__Model__Group_3__01099);
+            pushFollow(FOLLOW_rule__Model__Group_3__1_in_rule__Model__Group_3__01345);
             rule__Model__Group_3__1();
             _fsp--;
 
@@ -1479,20 +1812,20 @@
 
 
     // $ANTLR start rule__Model__Group_3__0__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:560:1: rule__Model__Group_3__0__Impl : ( 'incorporates' ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:672:1: rule__Model__Group_3__0__Impl : ( 'incorporates' ) ;
     public final void rule__Model__Group_3__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:564:1: ( ( 'incorporates' ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:565:1: ( 'incorporates' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:676:1: ( ( 'incorporates' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:677:1: ( 'incorporates' )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:565:1: ( 'incorporates' )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:566:1: 'incorporates'
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:677:1: ( 'incorporates' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:678:1: 'incorporates'
             {
              before(grammarAccess.getModelAccess().getIncorporatesKeyword_3_0()); 
-            match(input,17,FOLLOW_17_in_rule__Model__Group_3__0__Impl1127); 
+            match(input,17,FOLLOW_17_in_rule__Model__Group_3__0__Impl1373); 
              after(grammarAccess.getModelAccess().getIncorporatesKeyword_3_0()); 
 
             }
@@ -1516,16 +1849,16 @@
 
 
     // $ANTLR start rule__Model__Group_3__1
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:579:1: rule__Model__Group_3__1 : rule__Model__Group_3__1__Impl ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:691:1: rule__Model__Group_3__1 : rule__Model__Group_3__1__Impl ;
     public final void rule__Model__Group_3__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:583:1: ( rule__Model__Group_3__1__Impl )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:584:2: rule__Model__Group_3__1__Impl
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:695:1: ( rule__Model__Group_3__1__Impl )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:696:2: rule__Model__Group_3__1__Impl
             {
-            pushFollow(FOLLOW_rule__Model__Group_3__1__Impl_in_rule__Model__Group_3__11158);
+            pushFollow(FOLLOW_rule__Model__Group_3__1__Impl_in_rule__Model__Group_3__11404);
             rule__Model__Group_3__1__Impl();
             _fsp--;
 
@@ -1548,23 +1881,23 @@
 
 
     // $ANTLR start rule__Model__Group_3__1__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:590:1: rule__Model__Group_3__1__Impl : ( ( rule__Model__IncorporatesAssignment_3_1 ) ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:702:1: rule__Model__Group_3__1__Impl : ( ( rule__Model__IncorporatesAssignment_3_1 ) ) ;
     public final void rule__Model__Group_3__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:594:1: ( ( ( rule__Model__IncorporatesAssignment_3_1 ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:595:1: ( ( rule__Model__IncorporatesAssignment_3_1 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:706:1: ( ( ( rule__Model__IncorporatesAssignment_3_1 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:707:1: ( ( rule__Model__IncorporatesAssignment_3_1 ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:595:1: ( ( rule__Model__IncorporatesAssignment_3_1 ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:596:1: ( rule__Model__IncorporatesAssignment_3_1 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:707:1: ( ( rule__Model__IncorporatesAssignment_3_1 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:708:1: ( rule__Model__IncorporatesAssignment_3_1 )
             {
              before(grammarAccess.getModelAccess().getIncorporatesAssignment_3_1()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:597:1: ( rule__Model__IncorporatesAssignment_3_1 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:597:2: rule__Model__IncorporatesAssignment_3_1
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:709:1: ( rule__Model__IncorporatesAssignment_3_1 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:709:2: rule__Model__IncorporatesAssignment_3_1
             {
-            pushFollow(FOLLOW_rule__Model__IncorporatesAssignment_3_1_in_rule__Model__Group_3__1__Impl1185);
+            pushFollow(FOLLOW_rule__Model__IncorporatesAssignment_3_1_in_rule__Model__Group_3__1__Impl1431);
             rule__Model__IncorporatesAssignment_3_1();
             _fsp--;
 
@@ -1593,22 +1926,22 @@
     // $ANTLR end rule__Model__Group_3__1__Impl
 
 
-    // $ANTLR start rule__Parameter__Group__0
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:611:1: rule__Parameter__Group__0 : rule__Parameter__Group__0__Impl rule__Parameter__Group__1 ;
-    public final void rule__Parameter__Group__0() throws RecognitionException {
+    // $ANTLR start rule__SingleParameter__Group__0
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:723:1: rule__SingleParameter__Group__0 : rule__SingleParameter__Group__0__Impl rule__SingleParameter__Group__1 ;
+    public final void rule__SingleParameter__Group__0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:615:1: ( rule__Parameter__Group__0__Impl rule__Parameter__Group__1 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:616:2: rule__Parameter__Group__0__Impl rule__Parameter__Group__1
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:727:1: ( rule__SingleParameter__Group__0__Impl rule__SingleParameter__Group__1 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:728:2: rule__SingleParameter__Group__0__Impl rule__SingleParameter__Group__1
             {
-            pushFollow(FOLLOW_rule__Parameter__Group__0__Impl_in_rule__Parameter__Group__01219);
-            rule__Parameter__Group__0__Impl();
+            pushFollow(FOLLOW_rule__SingleParameter__Group__0__Impl_in_rule__SingleParameter__Group__01465);
+            rule__SingleParameter__Group__0__Impl();
             _fsp--;
 
-            pushFollow(FOLLOW_rule__Parameter__Group__1_in_rule__Parameter__Group__01222);
-            rule__Parameter__Group__1();
+            pushFollow(FOLLOW_rule__SingleParameter__Group__1_in_rule__SingleParameter__Group__01468);
+            rule__SingleParameter__Group__1();
             _fsp--;
 
 
@@ -1626,34 +1959,34 @@
         }
         return ;
     }
-    // $ANTLR end rule__Parameter__Group__0
+    // $ANTLR end rule__SingleParameter__Group__0
 
 
-    // $ANTLR start rule__Parameter__Group__0__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:623:1: rule__Parameter__Group__0__Impl : ( ( rule__Parameter__AttributeAssignment_0 ) ) ;
-    public final void rule__Parameter__Group__0__Impl() throws RecognitionException {
+    // $ANTLR start rule__SingleParameter__Group__0__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:735:1: rule__SingleParameter__Group__0__Impl : ( ( rule__SingleParameter__AttributeAssignment_0 ) ) ;
+    public final void rule__SingleParameter__Group__0__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:627:1: ( ( ( rule__Parameter__AttributeAssignment_0 ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:628:1: ( ( rule__Parameter__AttributeAssignment_0 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:739:1: ( ( ( rule__SingleParameter__AttributeAssignment_0 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:740:1: ( ( rule__SingleParameter__AttributeAssignment_0 ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:628:1: ( ( rule__Parameter__AttributeAssignment_0 ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:629:1: ( rule__Parameter__AttributeAssignment_0 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:740:1: ( ( rule__SingleParameter__AttributeAssignment_0 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:741:1: ( rule__SingleParameter__AttributeAssignment_0 )
             {
-             before(grammarAccess.getParameterAccess().getAttributeAssignment_0()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:630:1: ( rule__Parameter__AttributeAssignment_0 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:630:2: rule__Parameter__AttributeAssignment_0
+             before(grammarAccess.getSingleParameterAccess().getAttributeAssignment_0()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:742:1: ( rule__SingleParameter__AttributeAssignment_0 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:742:2: rule__SingleParameter__AttributeAssignment_0
             {
-            pushFollow(FOLLOW_rule__Parameter__AttributeAssignment_0_in_rule__Parameter__Group__0__Impl1249);
-            rule__Parameter__AttributeAssignment_0();
+            pushFollow(FOLLOW_rule__SingleParameter__AttributeAssignment_0_in_rule__SingleParameter__Group__0__Impl1495);
+            rule__SingleParameter__AttributeAssignment_0();
             _fsp--;
 
 
             }
 
-             after(grammarAccess.getParameterAccess().getAttributeAssignment_0()); 
+             after(grammarAccess.getSingleParameterAccess().getAttributeAssignment_0()); 
 
             }
 
@@ -1672,25 +2005,25 @@
         }
         return ;
     }
-    // $ANTLR end rule__Parameter__Group__0__Impl
+    // $ANTLR end rule__SingleParameter__Group__0__Impl
 
 
-    // $ANTLR start rule__Parameter__Group__1
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:640:1: rule__Parameter__Group__1 : rule__Parameter__Group__1__Impl rule__Parameter__Group__2 ;
-    public final void rule__Parameter__Group__1() throws RecognitionException {
+    // $ANTLR start rule__SingleParameter__Group__1
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:752:1: rule__SingleParameter__Group__1 : rule__SingleParameter__Group__1__Impl rule__SingleParameter__Group__2 ;
+    public final void rule__SingleParameter__Group__1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:644:1: ( rule__Parameter__Group__1__Impl rule__Parameter__Group__2 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:645:2: rule__Parameter__Group__1__Impl rule__Parameter__Group__2
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:756:1: ( rule__SingleParameter__Group__1__Impl rule__SingleParameter__Group__2 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:757:2: rule__SingleParameter__Group__1__Impl rule__SingleParameter__Group__2
             {
-            pushFollow(FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__11279);
-            rule__Parameter__Group__1__Impl();
+            pushFollow(FOLLOW_rule__SingleParameter__Group__1__Impl_in_rule__SingleParameter__Group__11525);
+            rule__SingleParameter__Group__1__Impl();
             _fsp--;
 
-            pushFollow(FOLLOW_rule__Parameter__Group__2_in_rule__Parameter__Group__11282);
-            rule__Parameter__Group__2();
+            pushFollow(FOLLOW_rule__SingleParameter__Group__2_in_rule__SingleParameter__Group__11528);
+            rule__SingleParameter__Group__2();
             _fsp--;
 
 
@@ -1708,25 +2041,25 @@
         }
         return ;
     }
-    // $ANTLR end rule__Parameter__Group__1
+    // $ANTLR end rule__SingleParameter__Group__1
 
 
-    // $ANTLR start rule__Parameter__Group__1__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:652:1: rule__Parameter__Group__1__Impl : ( '=' ) ;
-    public final void rule__Parameter__Group__1__Impl() throws RecognitionException {
+    // $ANTLR start rule__SingleParameter__Group__1__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:764:1: rule__SingleParameter__Group__1__Impl : ( '=' ) ;
+    public final void rule__SingleParameter__Group__1__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:656:1: ( ( '=' ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:657:1: ( '=' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:768:1: ( ( '=' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:769:1: ( '=' )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:657:1: ( '=' )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:658:1: '='
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:769:1: ( '=' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:770:1: '='
             {
-             before(grammarAccess.getParameterAccess().getEqualsSignKeyword_1()); 
-            match(input,18,FOLLOW_18_in_rule__Parameter__Group__1__Impl1310); 
-             after(grammarAccess.getParameterAccess().getEqualsSignKeyword_1()); 
+             before(grammarAccess.getSingleParameterAccess().getEqualsSignKeyword_1()); 
+            match(input,18,FOLLOW_18_in_rule__SingleParameter__Group__1__Impl1556); 
+             after(grammarAccess.getSingleParameterAccess().getEqualsSignKeyword_1()); 
 
             }
 
@@ -1745,21 +2078,21 @@
         }
         return ;
     }
-    // $ANTLR end rule__Parameter__Group__1__Impl
+    // $ANTLR end rule__SingleParameter__Group__1__Impl
 
 
-    // $ANTLR start rule__Parameter__Group__2
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:671:1: rule__Parameter__Group__2 : rule__Parameter__Group__2__Impl ;
-    public final void rule__Parameter__Group__2() throws RecognitionException {
+    // $ANTLR start rule__SingleParameter__Group__2
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:783:1: rule__SingleParameter__Group__2 : rule__SingleParameter__Group__2__Impl ;
+    public final void rule__SingleParameter__Group__2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:675:1: ( rule__Parameter__Group__2__Impl )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:676:2: rule__Parameter__Group__2__Impl
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:787:1: ( rule__SingleParameter__Group__2__Impl )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:788:2: rule__SingleParameter__Group__2__Impl
             {
-            pushFollow(FOLLOW_rule__Parameter__Group__2__Impl_in_rule__Parameter__Group__21341);
-            rule__Parameter__Group__2__Impl();
+            pushFollow(FOLLOW_rule__SingleParameter__Group__2__Impl_in_rule__SingleParameter__Group__21587);
+            rule__SingleParameter__Group__2__Impl();
             _fsp--;
 
 
@@ -1777,34 +2110,34 @@
         }
         return ;
     }
-    // $ANTLR end rule__Parameter__Group__2
+    // $ANTLR end rule__SingleParameter__Group__2
 
 
-    // $ANTLR start rule__Parameter__Group__2__Impl
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:682:1: rule__Parameter__Group__2__Impl : ( ( rule__Parameter__ValueAssignment_2 ) ) ;
-    public final void rule__Parameter__Group__2__Impl() throws RecognitionException {
+    // $ANTLR start rule__SingleParameter__Group__2__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:794:1: rule__SingleParameter__Group__2__Impl : ( ( rule__SingleParameter__ValueAssignment_2 ) ) ;
+    public final void rule__SingleParameter__Group__2__Impl() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:686:1: ( ( ( rule__Parameter__ValueAssignment_2 ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:687:1: ( ( rule__Parameter__ValueAssignment_2 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:798:1: ( ( ( rule__SingleParameter__ValueAssignment_2 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:799:1: ( ( rule__SingleParameter__ValueAssignment_2 ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:687:1: ( ( rule__Parameter__ValueAssignment_2 ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:688:1: ( rule__Parameter__ValueAssignment_2 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:799:1: ( ( rule__SingleParameter__ValueAssignment_2 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:800:1: ( rule__SingleParameter__ValueAssignment_2 )
             {
-             before(grammarAccess.getParameterAccess().getValueAssignment_2()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:689:1: ( rule__Parameter__ValueAssignment_2 )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:689:2: rule__Parameter__ValueAssignment_2
+             before(grammarAccess.getSingleParameterAccess().getValueAssignment_2()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:801:1: ( rule__SingleParameter__ValueAssignment_2 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:801:2: rule__SingleParameter__ValueAssignment_2
             {
-            pushFollow(FOLLOW_rule__Parameter__ValueAssignment_2_in_rule__Parameter__Group__2__Impl1368);
-            rule__Parameter__ValueAssignment_2();
+            pushFollow(FOLLOW_rule__SingleParameter__ValueAssignment_2_in_rule__SingleParameter__Group__2__Impl1614);
+            rule__SingleParameter__ValueAssignment_2();
             _fsp--;
 
 
             }
 
-             after(grammarAccess.getParameterAccess().getValueAssignment_2()); 
+             after(grammarAccess.getSingleParameterAccess().getValueAssignment_2()); 
 
             }
 
@@ -1823,24 +2156,882 @@
         }
         return ;
     }
-    // $ANTLR end rule__Parameter__Group__2__Impl
+    // $ANTLR end rule__SingleParameter__Group__2__Impl
+
+
+    // $ANTLR start rule__SweepParameter__Group__0
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:817:1: rule__SweepParameter__Group__0 : rule__SweepParameter__Group__0__Impl rule__SweepParameter__Group__1 ;
+    public final void rule__SweepParameter__Group__0() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:821:1: ( rule__SweepParameter__Group__0__Impl rule__SweepParameter__Group__1 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:822:2: rule__SweepParameter__Group__0__Impl rule__SweepParameter__Group__1
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__Group__0__Impl_in_rule__SweepParameter__Group__01650);
+            rule__SweepParameter__Group__0__Impl();
+            _fsp--;
+
+            pushFollow(FOLLOW_rule__SweepParameter__Group__1_in_rule__SweepParameter__Group__01653);
+            rule__SweepParameter__Group__1();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__0
+
+
+    // $ANTLR start rule__SweepParameter__Group__0__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:829:1: rule__SweepParameter__Group__0__Impl : ( ( rule__SweepParameter__AttributeAssignment_0 ) ) ;
+    public final void rule__SweepParameter__Group__0__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:833:1: ( ( ( rule__SweepParameter__AttributeAssignment_0 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:834:1: ( ( rule__SweepParameter__AttributeAssignment_0 ) )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:834:1: ( ( rule__SweepParameter__AttributeAssignment_0 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:835:1: ( rule__SweepParameter__AttributeAssignment_0 )
+            {
+             before(grammarAccess.getSweepParameterAccess().getAttributeAssignment_0()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:836:1: ( rule__SweepParameter__AttributeAssignment_0 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:836:2: rule__SweepParameter__AttributeAssignment_0
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__AttributeAssignment_0_in_rule__SweepParameter__Group__0__Impl1680);
+            rule__SweepParameter__AttributeAssignment_0();
+            _fsp--;
+
+
+            }
+
+             after(grammarAccess.getSweepParameterAccess().getAttributeAssignment_0()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__0__Impl
+
+
+    // $ANTLR start rule__SweepParameter__Group__1
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:846:1: rule__SweepParameter__Group__1 : rule__SweepParameter__Group__1__Impl rule__SweepParameter__Group__2 ;
+    public final void rule__SweepParameter__Group__1() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:850:1: ( rule__SweepParameter__Group__1__Impl rule__SweepParameter__Group__2 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:851:2: rule__SweepParameter__Group__1__Impl rule__SweepParameter__Group__2
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__Group__1__Impl_in_rule__SweepParameter__Group__11710);
+            rule__SweepParameter__Group__1__Impl();
+            _fsp--;
+
+            pushFollow(FOLLOW_rule__SweepParameter__Group__2_in_rule__SweepParameter__Group__11713);
+            rule__SweepParameter__Group__2();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__1
+
+
+    // $ANTLR start rule__SweepParameter__Group__1__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:858:1: rule__SweepParameter__Group__1__Impl : ( '[' ) ;
+    public final void rule__SweepParameter__Group__1__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:862:1: ( ( '[' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:863:1: ( '[' )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:863:1: ( '[' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:864:1: '['
+            {
+             before(grammarAccess.getSweepParameterAccess().getLeftSquareBracketKeyword_1()); 
+            match(input,19,FOLLOW_19_in_rule__SweepParameter__Group__1__Impl1741); 
+             after(grammarAccess.getSweepParameterAccess().getLeftSquareBracketKeyword_1()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__1__Impl
+
+
+    // $ANTLR start rule__SweepParameter__Group__2
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:877:1: rule__SweepParameter__Group__2 : rule__SweepParameter__Group__2__Impl rule__SweepParameter__Group__3 ;
+    public final void rule__SweepParameter__Group__2() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:881:1: ( rule__SweepParameter__Group__2__Impl rule__SweepParameter__Group__3 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:882:2: rule__SweepParameter__Group__2__Impl rule__SweepParameter__Group__3
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__Group__2__Impl_in_rule__SweepParameter__Group__21772);
+            rule__SweepParameter__Group__2__Impl();
+            _fsp--;
+
+            pushFollow(FOLLOW_rule__SweepParameter__Group__3_in_rule__SweepParameter__Group__21775);
+            rule__SweepParameter__Group__3();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__2
+
+
+    // $ANTLR start rule__SweepParameter__Group__2__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:889:1: rule__SweepParameter__Group__2__Impl : ( ( rule__SweepParameter__StartValueAssignment_2 ) ) ;
+    public final void rule__SweepParameter__Group__2__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:893:1: ( ( ( rule__SweepParameter__StartValueAssignment_2 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:894:1: ( ( rule__SweepParameter__StartValueAssignment_2 ) )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:894:1: ( ( rule__SweepParameter__StartValueAssignment_2 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:895:1: ( rule__SweepParameter__StartValueAssignment_2 )
+            {
+             before(grammarAccess.getSweepParameterAccess().getStartValueAssignment_2()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:896:1: ( rule__SweepParameter__StartValueAssignment_2 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:896:2: rule__SweepParameter__StartValueAssignment_2
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__StartValueAssignment_2_in_rule__SweepParameter__Group__2__Impl1802);
+            rule__SweepParameter__StartValueAssignment_2();
+            _fsp--;
+
+
+            }
+
+             after(grammarAccess.getSweepParameterAccess().getStartValueAssignment_2()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__2__Impl
+
+
+    // $ANTLR start rule__SweepParameter__Group__3
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:906:1: rule__SweepParameter__Group__3 : rule__SweepParameter__Group__3__Impl rule__SweepParameter__Group__4 ;
+    public final void rule__SweepParameter__Group__3() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:910:1: ( rule__SweepParameter__Group__3__Impl rule__SweepParameter__Group__4 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:911:2: rule__SweepParameter__Group__3__Impl rule__SweepParameter__Group__4
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__Group__3__Impl_in_rule__SweepParameter__Group__31832);
+            rule__SweepParameter__Group__3__Impl();
+            _fsp--;
+
+            pushFollow(FOLLOW_rule__SweepParameter__Group__4_in_rule__SweepParameter__Group__31835);
+            rule__SweepParameter__Group__4();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__3
+
+
+    // $ANTLR start rule__SweepParameter__Group__3__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:918:1: rule__SweepParameter__Group__3__Impl : ( ',' ) ;
+    public final void rule__SweepParameter__Group__3__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:922:1: ( ( ',' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:923:1: ( ',' )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:923:1: ( ',' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:924:1: ','
+            {
+             before(grammarAccess.getSweepParameterAccess().getCommaKeyword_3()); 
+            match(input,20,FOLLOW_20_in_rule__SweepParameter__Group__3__Impl1863); 
+             after(grammarAccess.getSweepParameterAccess().getCommaKeyword_3()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__3__Impl
+
+
+    // $ANTLR start rule__SweepParameter__Group__4
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:937:1: rule__SweepParameter__Group__4 : rule__SweepParameter__Group__4__Impl rule__SweepParameter__Group__5 ;
+    public final void rule__SweepParameter__Group__4() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:941:1: ( rule__SweepParameter__Group__4__Impl rule__SweepParameter__Group__5 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:942:2: rule__SweepParameter__Group__4__Impl rule__SweepParameter__Group__5
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__Group__4__Impl_in_rule__SweepParameter__Group__41894);
+            rule__SweepParameter__Group__4__Impl();
+            _fsp--;
+
+            pushFollow(FOLLOW_rule__SweepParameter__Group__5_in_rule__SweepParameter__Group__41897);
+            rule__SweepParameter__Group__5();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__4
+
+
+    // $ANTLR start rule__SweepParameter__Group__4__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:949:1: rule__SweepParameter__Group__4__Impl : ( ( rule__SweepParameter__EndValueAssignment_4 ) ) ;
+    public final void rule__SweepParameter__Group__4__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:953:1: ( ( ( rule__SweepParameter__EndValueAssignment_4 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:954:1: ( ( rule__SweepParameter__EndValueAssignment_4 ) )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:954:1: ( ( rule__SweepParameter__EndValueAssignment_4 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:955:1: ( rule__SweepParameter__EndValueAssignment_4 )
+            {
+             before(grammarAccess.getSweepParameterAccess().getEndValueAssignment_4()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:956:1: ( rule__SweepParameter__EndValueAssignment_4 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:956:2: rule__SweepParameter__EndValueAssignment_4
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__EndValueAssignment_4_in_rule__SweepParameter__Group__4__Impl1924);
+            rule__SweepParameter__EndValueAssignment_4();
+            _fsp--;
+
+
+            }
+
+             after(grammarAccess.getSweepParameterAccess().getEndValueAssignment_4()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__4__Impl
+
+
+    // $ANTLR start rule__SweepParameter__Group__5
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:966:1: rule__SweepParameter__Group__5 : rule__SweepParameter__Group__5__Impl rule__SweepParameter__Group__6 ;
+    public final void rule__SweepParameter__Group__5() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:970:1: ( rule__SweepParameter__Group__5__Impl rule__SweepParameter__Group__6 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:971:2: rule__SweepParameter__Group__5__Impl rule__SweepParameter__Group__6
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__Group__5__Impl_in_rule__SweepParameter__Group__51954);
+            rule__SweepParameter__Group__5__Impl();
+            _fsp--;
+
+            pushFollow(FOLLOW_rule__SweepParameter__Group__6_in_rule__SweepParameter__Group__51957);
+            rule__SweepParameter__Group__6();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__5
+
+
+    // $ANTLR start rule__SweepParameter__Group__5__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:978:1: rule__SweepParameter__Group__5__Impl : ( ',' ) ;
+    public final void rule__SweepParameter__Group__5__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:982:1: ( ( ',' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:983:1: ( ',' )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:983:1: ( ',' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:984:1: ','
+            {
+             before(grammarAccess.getSweepParameterAccess().getCommaKeyword_5()); 
+            match(input,20,FOLLOW_20_in_rule__SweepParameter__Group__5__Impl1985); 
+             after(grammarAccess.getSweepParameterAccess().getCommaKeyword_5()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__5__Impl
+
+
+    // $ANTLR start rule__SweepParameter__Group__6
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:997:1: rule__SweepParameter__Group__6 : rule__SweepParameter__Group__6__Impl rule__SweepParameter__Group__7 ;
+    public final void rule__SweepParameter__Group__6() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1001:1: ( rule__SweepParameter__Group__6__Impl rule__SweepParameter__Group__7 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1002:2: rule__SweepParameter__Group__6__Impl rule__SweepParameter__Group__7
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__Group__6__Impl_in_rule__SweepParameter__Group__62016);
+            rule__SweepParameter__Group__6__Impl();
+            _fsp--;
+
+            pushFollow(FOLLOW_rule__SweepParameter__Group__7_in_rule__SweepParameter__Group__62019);
+            rule__SweepParameter__Group__7();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__6
+
+
+    // $ANTLR start rule__SweepParameter__Group__6__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1009:1: rule__SweepParameter__Group__6__Impl : ( ( rule__SweepParameter__IncrementAssignment_6 ) ) ;
+    public final void rule__SweepParameter__Group__6__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1013:1: ( ( ( rule__SweepParameter__IncrementAssignment_6 ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1014:1: ( ( rule__SweepParameter__IncrementAssignment_6 ) )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1014:1: ( ( rule__SweepParameter__IncrementAssignment_6 ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1015:1: ( rule__SweepParameter__IncrementAssignment_6 )
+            {
+             before(grammarAccess.getSweepParameterAccess().getIncrementAssignment_6()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1016:1: ( rule__SweepParameter__IncrementAssignment_6 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1016:2: rule__SweepParameter__IncrementAssignment_6
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__IncrementAssignment_6_in_rule__SweepParameter__Group__6__Impl2046);
+            rule__SweepParameter__IncrementAssignment_6();
+            _fsp--;
+
+
+            }
+
+             after(grammarAccess.getSweepParameterAccess().getIncrementAssignment_6()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__6__Impl
+
+
+    // $ANTLR start rule__SweepParameter__Group__7
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1026:1: rule__SweepParameter__Group__7 : rule__SweepParameter__Group__7__Impl ;
+    public final void rule__SweepParameter__Group__7() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1030:1: ( rule__SweepParameter__Group__7__Impl )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1031:2: rule__SweepParameter__Group__7__Impl
+            {
+            pushFollow(FOLLOW_rule__SweepParameter__Group__7__Impl_in_rule__SweepParameter__Group__72076);
+            rule__SweepParameter__Group__7__Impl();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__7
+
+
+    // $ANTLR start rule__SweepParameter__Group__7__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1037:1: rule__SweepParameter__Group__7__Impl : ( ']' ) ;
+    public final void rule__SweepParameter__Group__7__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1041:1: ( ( ']' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1042:1: ( ']' )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1042:1: ( ']' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1043:1: ']'
+            {
+             before(grammarAccess.getSweepParameterAccess().getRightSquareBracketKeyword_7()); 
+            match(input,21,FOLLOW_21_in_rule__SweepParameter__Group__7__Impl2104); 
+             after(grammarAccess.getSweepParameterAccess().getRightSquareBracketKeyword_7()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__Group__7__Impl
+
+
+    // $ANTLR start rule__SweepLink__Group__0
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1072:1: rule__SweepLink__Group__0 : rule__SweepLink__Group__0__Impl rule__SweepLink__Group__1 ;
+    public final void rule__SweepLink__Group__0() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1076:1: ( rule__SweepLink__Group__0__Impl rule__SweepLink__Group__1 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1077:2: rule__SweepLink__Group__0__Impl rule__SweepLink__Group__1
+            {
+            pushFollow(FOLLOW_rule__SweepLink__Group__0__Impl_in_rule__SweepLink__Group__02151);
+            rule__SweepLink__Group__0__Impl();
+            _fsp--;
+
+            pushFollow(FOLLOW_rule__SweepLink__Group__1_in_rule__SweepLink__Group__02154);
+            rule__SweepLink__Group__1();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepLink__Group__0
+
+
+    // $ANTLR start rule__SweepLink__Group__0__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1084:1: rule__SweepLink__Group__0__Impl : ( '[' ) ;
+    public final void rule__SweepLink__Group__0__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1088:1: ( ( '[' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1089:1: ( '[' )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1089:1: ( '[' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1090:1: '['
+            {
+             before(grammarAccess.getSweepLinkAccess().getLeftSquareBracketKeyword_0()); 
+            match(input,19,FOLLOW_19_in_rule__SweepLink__Group__0__Impl2182); 
+             after(grammarAccess.getSweepLinkAccess().getLeftSquareBracketKeyword_0()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepLink__Group__0__Impl
+
+
+    // $ANTLR start rule__SweepLink__Group__1
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1103:1: rule__SweepLink__Group__1 : rule__SweepLink__Group__1__Impl rule__SweepLink__Group__2 ;
+    public final void rule__SweepLink__Group__1() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1107:1: ( rule__SweepLink__Group__1__Impl rule__SweepLink__Group__2 )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1108:2: rule__SweepLink__Group__1__Impl rule__SweepLink__Group__2
+            {
+            pushFollow(FOLLOW_rule__SweepLink__Group__1__Impl_in_rule__SweepLink__Group__12213);
+            rule__SweepLink__Group__1__Impl();
+            _fsp--;
+
+            pushFollow(FOLLOW_rule__SweepLink__Group__2_in_rule__SweepLink__Group__12216);
+            rule__SweepLink__Group__2();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepLink__Group__1
+
+
+    // $ANTLR start rule__SweepLink__Group__1__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1115:1: rule__SweepLink__Group__1__Impl : ( ( rule__SweepLink__ParametersAssignment_1 )* ) ;
+    public final void rule__SweepLink__Group__1__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1119:1: ( ( ( rule__SweepLink__ParametersAssignment_1 )* ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1120:1: ( ( rule__SweepLink__ParametersAssignment_1 )* )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1120:1: ( ( rule__SweepLink__ParametersAssignment_1 )* )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1121:1: ( rule__SweepLink__ParametersAssignment_1 )*
+            {
+             before(grammarAccess.getSweepLinkAccess().getParametersAssignment_1()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1122:1: ( rule__SweepLink__ParametersAssignment_1 )*
+            loop7:
+            do {
+                int alt7=2;
+                int LA7_0 = input.LA(1);
+
+                if ( (LA7_0==RULE_ID||LA7_0==19) ) {
+                    alt7=1;
+                }
+
+
+                switch (alt7) {
+            	case 1 :
+            	    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1122:2: rule__SweepLink__ParametersAssignment_1
+            	    {
+            	    pushFollow(FOLLOW_rule__SweepLink__ParametersAssignment_1_in_rule__SweepLink__Group__1__Impl2243);
+            	    rule__SweepLink__ParametersAssignment_1();
+            	    _fsp--;
+
+
+            	    }
+            	    break;
+
+            	default :
+            	    break loop7;
+                }
+            } while (true);
+
+             after(grammarAccess.getSweepLinkAccess().getParametersAssignment_1()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepLink__Group__1__Impl
+
+
+    // $ANTLR start rule__SweepLink__Group__2
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1132:1: rule__SweepLink__Group__2 : rule__SweepLink__Group__2__Impl ;
+    public final void rule__SweepLink__Group__2() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1136:1: ( rule__SweepLink__Group__2__Impl )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1137:2: rule__SweepLink__Group__2__Impl
+            {
+            pushFollow(FOLLOW_rule__SweepLink__Group__2__Impl_in_rule__SweepLink__Group__22274);
+            rule__SweepLink__Group__2__Impl();
+            _fsp--;
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepLink__Group__2
+
+
+    // $ANTLR start rule__SweepLink__Group__2__Impl
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1143:1: rule__SweepLink__Group__2__Impl : ( ']' ) ;
+    public final void rule__SweepLink__Group__2__Impl() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1147:1: ( ( ']' ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1148:1: ( ']' )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1148:1: ( ']' )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1149:1: ']'
+            {
+             before(grammarAccess.getSweepLinkAccess().getRightSquareBracketKeyword_2()); 
+            match(input,21,FOLLOW_21_in_rule__SweepLink__Group__2__Impl2302); 
+             after(grammarAccess.getSweepLinkAccess().getRightSquareBracketKeyword_2()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepLink__Group__2__Impl
 
 
     // $ANTLR start rule__Model__NameAssignment_0
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:706:1: rule__Model__NameAssignment_0 : ( RULE_STRING ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1169:1: rule__Model__NameAssignment_0 : ( RULE_STRING ) ;
     public final void rule__Model__NameAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:710:1: ( ( RULE_STRING ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:711:1: ( RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1173:1: ( ( RULE_STRING ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1174:1: ( RULE_STRING )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:711:1: ( RULE_STRING )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:712:1: RULE_STRING
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1174:1: ( RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1175:1: RULE_STRING
             {
              before(grammarAccess.getModelAccess().getNameSTRINGTerminalRuleCall_0_0()); 
-            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Model__NameAssignment_01409); 
+            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Model__NameAssignment_02344); 
              after(grammarAccess.getModelAccess().getNameSTRINGTerminalRuleCall_0_0()); 
 
             }
@@ -1864,20 +3055,20 @@
 
 
     // $ANTLR start rule__Model__ModelAssignment_2
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:721:1: rule__Model__ModelAssignment_2 : ( ruleImport ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1184:1: rule__Model__ModelAssignment_2 : ( ruleImport ) ;
     public final void rule__Model__ModelAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:725:1: ( ( ruleImport ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:726:1: ( ruleImport )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1188:1: ( ( ruleImport ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1189:1: ( ruleImport )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:726:1: ( ruleImport )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:727:1: ruleImport
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1189:1: ( ruleImport )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1190:1: ruleImport
             {
              before(grammarAccess.getModelAccess().getModelImportParserRuleCall_2_0()); 
-            pushFollow(FOLLOW_ruleImport_in_rule__Model__ModelAssignment_21440);
+            pushFollow(FOLLOW_ruleImport_in_rule__Model__ModelAssignment_22375);
             ruleImport();
             _fsp--;
 
@@ -1904,20 +3095,20 @@
 
 
     // $ANTLR start rule__Model__IncorporatesAssignment_3_1
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:736:1: rule__Model__IncorporatesAssignment_3_1 : ( ruleIncorporates ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1199:1: rule__Model__IncorporatesAssignment_3_1 : ( ruleIncorporates ) ;
     public final void rule__Model__IncorporatesAssignment_3_1() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:740:1: ( ( ruleIncorporates ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:741:1: ( ruleIncorporates )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1203:1: ( ( ruleIncorporates ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1204:1: ( ruleIncorporates )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:741:1: ( ruleIncorporates )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:742:1: ruleIncorporates
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1204:1: ( ruleIncorporates )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1205:1: ruleIncorporates
             {
              before(grammarAccess.getModelAccess().getIncorporatesIncorporatesParserRuleCall_3_1_0()); 
-            pushFollow(FOLLOW_ruleIncorporates_in_rule__Model__IncorporatesAssignment_3_11471);
+            pushFollow(FOLLOW_ruleIncorporates_in_rule__Model__IncorporatesAssignment_3_12406);
             ruleIncorporates();
             _fsp--;
 
@@ -1944,20 +3135,20 @@
 
 
     // $ANTLR start rule__Model__ParametersAssignment_4
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:751:1: rule__Model__ParametersAssignment_4 : ( ruleParameter ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1214:1: rule__Model__ParametersAssignment_4 : ( ruleParameter ) ;
     public final void rule__Model__ParametersAssignment_4() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:755:1: ( ( ruleParameter ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:756:1: ( ruleParameter )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1218:1: ( ( ruleParameter ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1219:1: ( ruleParameter )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:756:1: ( ruleParameter )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:757:1: ruleParameter
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1219:1: ( ruleParameter )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1220:1: ruleParameter
             {
              before(grammarAccess.getModelAccess().getParametersParameterParserRuleCall_4_0()); 
-            pushFollow(FOLLOW_ruleParameter_in_rule__Model__ParametersAssignment_41502);
+            pushFollow(FOLLOW_ruleParameter_in_rule__Model__ParametersAssignment_42437);
             ruleParameter();
             _fsp--;
 
@@ -1984,20 +3175,20 @@
 
 
     // $ANTLR start rule__Import__ImportURIAssignment
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:766:1: rule__Import__ImportURIAssignment : ( RULE_STRING ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1229:1: rule__Import__ImportURIAssignment : ( RULE_STRING ) ;
     public final void rule__Import__ImportURIAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:770:1: ( ( RULE_STRING ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:771:1: ( RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1233:1: ( ( RULE_STRING ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1234:1: ( RULE_STRING )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:771:1: ( RULE_STRING )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:772:1: RULE_STRING
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1234:1: ( RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1235:1: RULE_STRING
             {
              before(grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_0()); 
-            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment1533); 
+            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment2468); 
              after(grammarAccess.getImportAccess().getImportURISTRINGTerminalRuleCall_0()); 
 
             }
@@ -2021,20 +3212,20 @@
 
 
     // $ANTLR start rule__Incorporates__ImportURIAssignment
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:781:1: rule__Incorporates__ImportURIAssignment : ( RULE_STRING ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1244:1: rule__Incorporates__ImportURIAssignment : ( RULE_STRING ) ;
     public final void rule__Incorporates__ImportURIAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:785:1: ( ( RULE_STRING ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:786:1: ( RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1248:1: ( ( RULE_STRING ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1249:1: ( RULE_STRING )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:786:1: ( RULE_STRING )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:787:1: RULE_STRING
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1249:1: ( RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1250:1: RULE_STRING
             {
              before(grammarAccess.getIncorporatesAccess().getImportURISTRINGTerminalRuleCall_0()); 
-            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Incorporates__ImportURIAssignment1564); 
+            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__Incorporates__ImportURIAssignment2499); 
              after(grammarAccess.getIncorporatesAccess().getImportURISTRINGTerminalRuleCall_0()); 
 
             }
@@ -2057,30 +3248,30 @@
     // $ANTLR end rule__Incorporates__ImportURIAssignment
 
 
-    // $ANTLR start rule__Parameter__AttributeAssignment_0
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:796:1: rule__Parameter__AttributeAssignment_0 : ( ( RULE_ID ) ) ;
-    public final void rule__Parameter__AttributeAssignment_0() throws RecognitionException {
+    // $ANTLR start rule__SingleParameter__AttributeAssignment_0
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1259:1: rule__SingleParameter__AttributeAssignment_0 : ( ( RULE_ID ) ) ;
+    public final void rule__SingleParameter__AttributeAssignment_0() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:800:1: ( ( ( RULE_ID ) ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:801:1: ( ( RULE_ID ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1263:1: ( ( ( RULE_ID ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1264:1: ( ( RULE_ID ) )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:801:1: ( ( RULE_ID ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:802:1: ( RULE_ID )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1264:1: ( ( RULE_ID ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1265:1: ( RULE_ID )
             {
-             before(grammarAccess.getParameterAccess().getAttributeSAttributeCrossReference_0_0()); 
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:803:1: ( RULE_ID )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:804:1: RULE_ID
+             before(grammarAccess.getSingleParameterAccess().getAttributeSAttributeCrossReference_0_0()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1266:1: ( RULE_ID )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1267:1: RULE_ID
             {
-             before(grammarAccess.getParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); 
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__Parameter__AttributeAssignment_01599); 
-             after(grammarAccess.getParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); 
+             before(grammarAccess.getSingleParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__SingleParameter__AttributeAssignment_02534); 
+             after(grammarAccess.getSingleParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); 
 
             }
 
-             after(grammarAccess.getParameterAccess().getAttributeSAttributeCrossReference_0_0()); 
+             after(grammarAccess.getSingleParameterAccess().getAttributeSAttributeCrossReference_0_0()); 
 
             }
 
@@ -2099,28 +3290,28 @@
         }
         return ;
     }
-    // $ANTLR end rule__Parameter__AttributeAssignment_0
+    // $ANTLR end rule__SingleParameter__AttributeAssignment_0
 
 
-    // $ANTLR start rule__Parameter__ValueAssignment_2
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:815:1: rule__Parameter__ValueAssignment_2 : ( ruleValue ) ;
-    public final void rule__Parameter__ValueAssignment_2() throws RecognitionException {
+    // $ANTLR start rule__SingleParameter__ValueAssignment_2
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1278:1: rule__SingleParameter__ValueAssignment_2 : ( ruleValue ) ;
+    public final void rule__SingleParameter__ValueAssignment_2() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:819:1: ( ( ruleValue ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:820:1: ( ruleValue )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1282:1: ( ( ruleValue ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1283:1: ( ruleValue )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:820:1: ( ruleValue )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:821:1: ruleValue
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1283:1: ( ruleValue )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1284:1: ruleValue
             {
-             before(grammarAccess.getParameterAccess().getValueValueParserRuleCall_2_0()); 
-            pushFollow(FOLLOW_ruleValue_in_rule__Parameter__ValueAssignment_21634);
+             before(grammarAccess.getSingleParameterAccess().getValueValueParserRuleCall_2_0()); 
+            pushFollow(FOLLOW_ruleValue_in_rule__SingleParameter__ValueAssignment_22569);
             ruleValue();
             _fsp--;
 
-             after(grammarAccess.getParameterAccess().getValueValueParserRuleCall_2_0()); 
+             after(grammarAccess.getSingleParameterAccess().getValueValueParserRuleCall_2_0()); 
 
             }
 
@@ -2139,24 +3330,229 @@
         }
         return ;
     }
-    // $ANTLR end rule__Parameter__ValueAssignment_2
+    // $ANTLR end rule__SingleParameter__ValueAssignment_2
+
+
+    // $ANTLR start rule__SweepParameter__AttributeAssignment_0
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1293:1: rule__SweepParameter__AttributeAssignment_0 : ( ( RULE_ID ) ) ;
+    public final void rule__SweepParameter__AttributeAssignment_0() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1297:1: ( ( ( RULE_ID ) ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1298:1: ( ( RULE_ID ) )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1298:1: ( ( RULE_ID ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1299:1: ( RULE_ID )
+            {
+             before(grammarAccess.getSweepParameterAccess().getAttributeSAttributeCrossReference_0_0()); 
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1300:1: ( RULE_ID )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1301:1: RULE_ID
+            {
+             before(grammarAccess.getSweepParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_rule__SweepParameter__AttributeAssignment_02604); 
+             after(grammarAccess.getSweepParameterAccess().getAttributeSAttributeIDTerminalRuleCall_0_0_1()); 
+
+            }
+
+             after(grammarAccess.getSweepParameterAccess().getAttributeSAttributeCrossReference_0_0()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__AttributeAssignment_0
+
+
+    // $ANTLR start rule__SweepParameter__StartValueAssignment_2
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1312:1: rule__SweepParameter__StartValueAssignment_2 : ( ruleValue ) ;
+    public final void rule__SweepParameter__StartValueAssignment_2() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1316:1: ( ( ruleValue ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1317:1: ( ruleValue )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1317:1: ( ruleValue )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1318:1: ruleValue
+            {
+             before(grammarAccess.getSweepParameterAccess().getStartValueValueParserRuleCall_2_0()); 
+            pushFollow(FOLLOW_ruleValue_in_rule__SweepParameter__StartValueAssignment_22639);
+            ruleValue();
+            _fsp--;
+
+             after(grammarAccess.getSweepParameterAccess().getStartValueValueParserRuleCall_2_0()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__StartValueAssignment_2
+
+
+    // $ANTLR start rule__SweepParameter__EndValueAssignment_4
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1327:1: rule__SweepParameter__EndValueAssignment_4 : ( ruleValue ) ;
+    public final void rule__SweepParameter__EndValueAssignment_4() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1331:1: ( ( ruleValue ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1332:1: ( ruleValue )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1332:1: ( ruleValue )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1333:1: ruleValue
+            {
+             before(grammarAccess.getSweepParameterAccess().getEndValueValueParserRuleCall_4_0()); 
+            pushFollow(FOLLOW_ruleValue_in_rule__SweepParameter__EndValueAssignment_42670);
+            ruleValue();
+            _fsp--;
+
+             after(grammarAccess.getSweepParameterAccess().getEndValueValueParserRuleCall_4_0()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__EndValueAssignment_4
+
+
+    // $ANTLR start rule__SweepParameter__IncrementAssignment_6
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1342:1: rule__SweepParameter__IncrementAssignment_6 : ( ruleValue ) ;
+    public final void rule__SweepParameter__IncrementAssignment_6() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1346:1: ( ( ruleValue ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1347:1: ( ruleValue )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1347:1: ( ruleValue )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1348:1: ruleValue
+            {
+             before(grammarAccess.getSweepParameterAccess().getIncrementValueParserRuleCall_6_0()); 
+            pushFollow(FOLLOW_ruleValue_in_rule__SweepParameter__IncrementAssignment_62701);
+            ruleValue();
+            _fsp--;
+
+             after(grammarAccess.getSweepParameterAccess().getIncrementValueParserRuleCall_6_0()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepParameter__IncrementAssignment_6
+
+
+    // $ANTLR start rule__SweepLink__ParametersAssignment_1
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1357:1: rule__SweepLink__ParametersAssignment_1 : ( ruleParameter ) ;
+    public final void rule__SweepLink__ParametersAssignment_1() throws RecognitionException {
+
+        		int stackSize = keepStackSize();
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1361:1: ( ( ruleParameter ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1362:1: ( ruleParameter )
+            {
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1362:1: ( ruleParameter )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1363:1: ruleParameter
+            {
+             before(grammarAccess.getSweepLinkAccess().getParametersParameterParserRuleCall_1_0()); 
+            pushFollow(FOLLOW_ruleParameter_in_rule__SweepLink__ParametersAssignment_12732);
+            ruleParameter();
+            _fsp--;
+
+             after(grammarAccess.getSweepLinkAccess().getParametersParameterParserRuleCall_1_0()); 
+
+            }
+
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+
+            	restoreStackSize(stackSize);
+
+        }
+        return ;
+    }
+    // $ANTLR end rule__SweepLink__ParametersAssignment_1
 
 
     // $ANTLR start rule__IntValue__ValueAssignment
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:830:1: rule__IntValue__ValueAssignment : ( RULE_INTEGER ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1372:1: rule__IntValue__ValueAssignment : ( RULE_INTEGER ) ;
     public final void rule__IntValue__ValueAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:834:1: ( ( RULE_INTEGER ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:835:1: ( RULE_INTEGER )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1376:1: ( ( RULE_INTEGER ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1377:1: ( RULE_INTEGER )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:835:1: ( RULE_INTEGER )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:836:1: RULE_INTEGER
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1377:1: ( RULE_INTEGER )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1378:1: RULE_INTEGER
             {
              before(grammarAccess.getIntValueAccess().getValueINTEGERTerminalRuleCall_0()); 
-            match(input,RULE_INTEGER,FOLLOW_RULE_INTEGER_in_rule__IntValue__ValueAssignment1665); 
+            match(input,RULE_INTEGER,FOLLOW_RULE_INTEGER_in_rule__IntValue__ValueAssignment2763); 
              after(grammarAccess.getIntValueAccess().getValueINTEGERTerminalRuleCall_0()); 
 
             }
@@ -2180,20 +3576,20 @@
 
 
     // $ANTLR start rule__RealValue__ValueAssignment
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:845:1: rule__RealValue__ValueAssignment : ( RULE_REAL ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1387:1: rule__RealValue__ValueAssignment : ( RULE_REAL ) ;
     public final void rule__RealValue__ValueAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:849:1: ( ( RULE_REAL ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:850:1: ( RULE_REAL )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1391:1: ( ( RULE_REAL ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1392:1: ( RULE_REAL )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:850:1: ( RULE_REAL )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:851:1: RULE_REAL
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1392:1: ( RULE_REAL )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1393:1: RULE_REAL
             {
              before(grammarAccess.getRealValueAccess().getValueREALTerminalRuleCall_0()); 
-            match(input,RULE_REAL,FOLLOW_RULE_REAL_in_rule__RealValue__ValueAssignment1696); 
+            match(input,RULE_REAL,FOLLOW_RULE_REAL_in_rule__RealValue__ValueAssignment2794); 
              after(grammarAccess.getRealValueAccess().getValueREALTerminalRuleCall_0()); 
 
             }
@@ -2217,20 +3613,20 @@
 
 
     // $ANTLR start rule__StringValue__ValueAssignment
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:860:1: rule__StringValue__ValueAssignment : ( RULE_STRING ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1402:1: rule__StringValue__ValueAssignment : ( RULE_STRING ) ;
     public final void rule__StringValue__ValueAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:864:1: ( ( RULE_STRING ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:865:1: ( RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1406:1: ( ( RULE_STRING ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1407:1: ( RULE_STRING )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:865:1: ( RULE_STRING )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:866:1: RULE_STRING
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1407:1: ( RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1408:1: RULE_STRING
             {
              before(grammarAccess.getStringValueAccess().getValueSTRINGTerminalRuleCall_0()); 
-            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__StringValue__ValueAssignment1727); 
+            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_rule__StringValue__ValueAssignment2825); 
              after(grammarAccess.getStringValueAccess().getValueSTRINGTerminalRuleCall_0()); 
 
             }
@@ -2254,20 +3650,20 @@
 
 
     // $ANTLR start rule__BooleanValue__ValueAssignment
-    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:875:1: rule__BooleanValue__ValueAssignment : ( ruleBOOLEAN ) ;
+    // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1417:1: rule__BooleanValue__ValueAssignment : ( ruleBOOLEAN ) ;
     public final void rule__BooleanValue__ValueAssignment() throws RecognitionException {
 
         		int stackSize = keepStackSize();
             
         try {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:879:1: ( ( ruleBOOLEAN ) )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:880:1: ( ruleBOOLEAN )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1421:1: ( ( ruleBOOLEAN ) )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1422:1: ( ruleBOOLEAN )
             {
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:880:1: ( ruleBOOLEAN )
-            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:881:1: ruleBOOLEAN
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1422:1: ( ruleBOOLEAN )
+            // ../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g:1423:1: ruleBOOLEAN
             {
              before(grammarAccess.getBooleanValueAccess().getValueBOOLEANEnumRuleCall_0()); 
-            pushFollow(FOLLOW_ruleBOOLEAN_in_rule__BooleanValue__ValueAssignment1758);
+            pushFollow(FOLLOW_ruleBOOLEAN_in_rule__BooleanValue__ValueAssignment2856);
             ruleBOOLEAN();
             _fsp--;
 
@@ -2306,67 +3702,115 @@
     public static final BitSet FOLLOW_rule__Incorporates__ImportURIAssignment_in_ruleIncorporates214 = new BitSet(new long[]{0x0000000000000002L});
     public static final BitSet FOLLOW_ruleParameter_in_entryRuleParameter241 = new BitSet(new long[]{0x0000000000000000L});
     public static final BitSet FOLLOW_EOF_in_entryRuleParameter248 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Parameter__Group__0_in_ruleParameter274 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleValue_in_entryRuleValue301 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleValue308 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Value__Alternatives_in_ruleValue334 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleIntValue_in_entryRuleIntValue361 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleIntValue368 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__IntValue__ValueAssignment_in_ruleIntValue394 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleRealValue_in_entryRuleRealValue421 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleRealValue428 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__RealValue__ValueAssignment_in_ruleRealValue454 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleStringValue_in_entryRuleStringValue481 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleStringValue488 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__StringValue__ValueAssignment_in_ruleStringValue514 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleBooleanValue_in_entryRuleBooleanValue541 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleBooleanValue548 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__BooleanValue__ValueAssignment_in_ruleBooleanValue574 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__BOOLEAN__Alternatives_in_ruleBOOLEAN611 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleIntValue_in_rule__Value__Alternatives646 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleStringValue_in_rule__Value__Alternatives663 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleRealValue_in_rule__Value__Alternatives680 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleBooleanValue_in_rule__Value__Alternatives697 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_14_in_rule__BOOLEAN__Alternatives730 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_15_in_rule__BOOLEAN__Alternatives751 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__Group__0__Impl_in_rule__Model__Group__0784 = new BitSet(new long[]{0x0000000000010000L});
-    public static final BitSet FOLLOW_rule__Model__Group__1_in_rule__Model__Group__0787 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__NameAssignment_0_in_rule__Model__Group__0__Impl814 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__Group__1__Impl_in_rule__Model__Group__1845 = new BitSet(new long[]{0x0000000000000010L});
-    public static final BitSet FOLLOW_rule__Model__Group__2_in_rule__Model__Group__1848 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_16_in_rule__Model__Group__1__Impl876 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__Group__2__Impl_in_rule__Model__Group__2907 = new BitSet(new long[]{0x0000000000020022L});
-    public static final BitSet FOLLOW_rule__Model__Group__3_in_rule__Model__Group__2910 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__ModelAssignment_2_in_rule__Model__Group__2__Impl937 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__Group__3__Impl_in_rule__Model__Group__3967 = new BitSet(new long[]{0x0000000000000022L});
-    public static final BitSet FOLLOW_rule__Model__Group__4_in_rule__Model__Group__3970 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__Group_3__0_in_rule__Model__Group__3__Impl997 = new BitSet(new long[]{0x0000000000020002L});
-    public static final BitSet FOLLOW_rule__Model__Group__4__Impl_in_rule__Model__Group__41028 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__ParametersAssignment_4_in_rule__Model__Group__4__Impl1055 = new BitSet(new long[]{0x0000000000000022L});
-    public static final BitSet FOLLOW_rule__Model__Group_3__0__Impl_in_rule__Model__Group_3__01096 = new BitSet(new long[]{0x0000000000000010L});
-    public static final BitSet FOLLOW_rule__Model__Group_3__1_in_rule__Model__Group_3__01099 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_17_in_rule__Model__Group_3__0__Impl1127 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__Group_3__1__Impl_in_rule__Model__Group_3__11158 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Model__IncorporatesAssignment_3_1_in_rule__Model__Group_3__1__Impl1185 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Parameter__Group__0__Impl_in_rule__Parameter__Group__01219 = new BitSet(new long[]{0x0000000000040000L});
-    public static final BitSet FOLLOW_rule__Parameter__Group__1_in_rule__Parameter__Group__01222 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Parameter__AttributeAssignment_0_in_rule__Parameter__Group__0__Impl1249 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Parameter__Group__1__Impl_in_rule__Parameter__Group__11279 = new BitSet(new long[]{0x000000000000C0D0L});
-    public static final BitSet FOLLOW_rule__Parameter__Group__2_in_rule__Parameter__Group__11282 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_18_in_rule__Parameter__Group__1__Impl1310 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Parameter__Group__2__Impl_in_rule__Parameter__Group__21341 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule__Parameter__ValueAssignment_2_in_rule__Parameter__Group__2__Impl1368 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_STRING_in_rule__Model__NameAssignment_01409 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleImport_in_rule__Model__ModelAssignment_21440 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleIncorporates_in_rule__Model__IncorporatesAssignment_3_11471 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleParameter_in_rule__Model__ParametersAssignment_41502 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment1533 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_STRING_in_rule__Incorporates__ImportURIAssignment1564 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_rule__Parameter__AttributeAssignment_01599 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleValue_in_rule__Parameter__ValueAssignment_21634 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_INTEGER_in_rule__IntValue__ValueAssignment1665 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_REAL_in_rule__RealValue__ValueAssignment1696 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_STRING_in_rule__StringValue__ValueAssignment1727 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleBOOLEAN_in_rule__BooleanValue__ValueAssignment1758 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Parameter__Alternatives_in_ruleParameter274 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSingleParameter_in_entryRuleSingleParameter301 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleSingleParameter308 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SingleParameter__Group__0_in_ruleSingleParameter334 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSweepParameter_in_entryRuleSweepParameter361 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleSweepParameter368 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__0_in_ruleSweepParameter394 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSweepLink_in_entryRuleSweepLink421 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleSweepLink428 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepLink__Group__0_in_ruleSweepLink454 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleValue_in_entryRuleValue481 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleValue488 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Value__Alternatives_in_ruleValue514 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleIntValue_in_entryRuleIntValue541 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleIntValue548 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__IntValue__ValueAssignment_in_ruleIntValue574 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleRealValue_in_entryRuleRealValue601 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleRealValue608 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__RealValue__ValueAssignment_in_ruleRealValue634 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleStringValue_in_entryRuleStringValue661 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleStringValue668 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__StringValue__ValueAssignment_in_ruleStringValue694 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleBooleanValue_in_entryRuleBooleanValue721 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleBooleanValue728 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__BooleanValue__ValueAssignment_in_ruleBooleanValue754 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__BOOLEAN__Alternatives_in_ruleBOOLEAN791 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSingleParameter_in_rule__Parameter__Alternatives826 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSweepParameter_in_rule__Parameter__Alternatives843 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSweepLink_in_rule__Parameter__Alternatives860 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleIntValue_in_rule__Value__Alternatives892 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleStringValue_in_rule__Value__Alternatives909 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleRealValue_in_rule__Value__Alternatives926 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleBooleanValue_in_rule__Value__Alternatives943 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_14_in_rule__BOOLEAN__Alternatives976 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_15_in_rule__BOOLEAN__Alternatives997 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__Group__0__Impl_in_rule__Model__Group__01030 = new BitSet(new long[]{0x0000000000010000L});
+    public static final BitSet FOLLOW_rule__Model__Group__1_in_rule__Model__Group__01033 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__NameAssignment_0_in_rule__Model__Group__0__Impl1060 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__Group__1__Impl_in_rule__Model__Group__11091 = new BitSet(new long[]{0x0000000000000010L});
+    public static final BitSet FOLLOW_rule__Model__Group__2_in_rule__Model__Group__11094 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_16_in_rule__Model__Group__1__Impl1122 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__Group__2__Impl_in_rule__Model__Group__21153 = new BitSet(new long[]{0x00000000000A0022L});
+    public static final BitSet FOLLOW_rule__Model__Group__3_in_rule__Model__Group__21156 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__ModelAssignment_2_in_rule__Model__Group__2__Impl1183 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__Group__3__Impl_in_rule__Model__Group__31213 = new BitSet(new long[]{0x0000000000080022L});
+    public static final BitSet FOLLOW_rule__Model__Group__4_in_rule__Model__Group__31216 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__Group_3__0_in_rule__Model__Group__3__Impl1243 = new BitSet(new long[]{0x0000000000020002L});
+    public static final BitSet FOLLOW_rule__Model__Group__4__Impl_in_rule__Model__Group__41274 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__ParametersAssignment_4_in_rule__Model__Group__4__Impl1301 = new BitSet(new long[]{0x0000000000080022L});
+    public static final BitSet FOLLOW_rule__Model__Group_3__0__Impl_in_rule__Model__Group_3__01342 = new BitSet(new long[]{0x0000000000000010L});
+    public static final BitSet FOLLOW_rule__Model__Group_3__1_in_rule__Model__Group_3__01345 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_17_in_rule__Model__Group_3__0__Impl1373 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__Group_3__1__Impl_in_rule__Model__Group_3__11404 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__Model__IncorporatesAssignment_3_1_in_rule__Model__Group_3__1__Impl1431 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SingleParameter__Group__0__Impl_in_rule__SingleParameter__Group__01465 = new BitSet(new long[]{0x0000000000040000L});
+    public static final BitSet FOLLOW_rule__SingleParameter__Group__1_in_rule__SingleParameter__Group__01468 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SingleParameter__AttributeAssignment_0_in_rule__SingleParameter__Group__0__Impl1495 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SingleParameter__Group__1__Impl_in_rule__SingleParameter__Group__11525 = new BitSet(new long[]{0x000000000000C0D0L});
+    public static final BitSet FOLLOW_rule__SingleParameter__Group__2_in_rule__SingleParameter__Group__11528 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_18_in_rule__SingleParameter__Group__1__Impl1556 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SingleParameter__Group__2__Impl_in_rule__SingleParameter__Group__21587 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SingleParameter__ValueAssignment_2_in_rule__SingleParameter__Group__2__Impl1614 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__0__Impl_in_rule__SweepParameter__Group__01650 = new BitSet(new long[]{0x0000000000080000L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__1_in_rule__SweepParameter__Group__01653 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__AttributeAssignment_0_in_rule__SweepParameter__Group__0__Impl1680 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__1__Impl_in_rule__SweepParameter__Group__11710 = new BitSet(new long[]{0x000000000000C0D0L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__2_in_rule__SweepParameter__Group__11713 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_19_in_rule__SweepParameter__Group__1__Impl1741 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__2__Impl_in_rule__SweepParameter__Group__21772 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__3_in_rule__SweepParameter__Group__21775 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__StartValueAssignment_2_in_rule__SweepParameter__Group__2__Impl1802 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__3__Impl_in_rule__SweepParameter__Group__31832 = new BitSet(new long[]{0x000000000000C0D0L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__4_in_rule__SweepParameter__Group__31835 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_20_in_rule__SweepParameter__Group__3__Impl1863 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__4__Impl_in_rule__SweepParameter__Group__41894 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__5_in_rule__SweepParameter__Group__41897 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__EndValueAssignment_4_in_rule__SweepParameter__Group__4__Impl1924 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__5__Impl_in_rule__SweepParameter__Group__51954 = new BitSet(new long[]{0x000000000000C0D0L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__6_in_rule__SweepParameter__Group__51957 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_20_in_rule__SweepParameter__Group__5__Impl1985 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__6__Impl_in_rule__SweepParameter__Group__62016 = new BitSet(new long[]{0x0000000000200000L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__7_in_rule__SweepParameter__Group__62019 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__IncrementAssignment_6_in_rule__SweepParameter__Group__6__Impl2046 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepParameter__Group__7__Impl_in_rule__SweepParameter__Group__72076 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_21_in_rule__SweepParameter__Group__7__Impl2104 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepLink__Group__0__Impl_in_rule__SweepLink__Group__02151 = new BitSet(new long[]{0x0000000000280020L});
+    public static final BitSet FOLLOW_rule__SweepLink__Group__1_in_rule__SweepLink__Group__02154 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_19_in_rule__SweepLink__Group__0__Impl2182 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepLink__Group__1__Impl_in_rule__SweepLink__Group__12213 = new BitSet(new long[]{0x0000000000200000L});
+    public static final BitSet FOLLOW_rule__SweepLink__Group__2_in_rule__SweepLink__Group__12216 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule__SweepLink__ParametersAssignment_1_in_rule__SweepLink__Group__1__Impl2243 = new BitSet(new long[]{0x0000000000080022L});
+    public static final BitSet FOLLOW_rule__SweepLink__Group__2__Impl_in_rule__SweepLink__Group__22274 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_21_in_rule__SweepLink__Group__2__Impl2302 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_STRING_in_rule__Model__NameAssignment_02344 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleImport_in_rule__Model__ModelAssignment_22375 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleIncorporates_in_rule__Model__IncorporatesAssignment_3_12406 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleParameter_in_rule__Model__ParametersAssignment_42437 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_STRING_in_rule__Import__ImportURIAssignment2468 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_STRING_in_rule__Incorporates__ImportURIAssignment2499 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_rule__SingleParameter__AttributeAssignment_02534 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleValue_in_rule__SingleParameter__ValueAssignment_22569 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_rule__SweepParameter__AttributeAssignment_02604 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleValue_in_rule__SweepParameter__StartValueAssignment_22639 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleValue_in_rule__SweepParameter__EndValueAssignment_42670 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleValue_in_rule__SweepParameter__IncrementAssignment_62701 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleParameter_in_rule__SweepLink__ParametersAssignment_12732 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_INTEGER_in_rule__IntValue__ValueAssignment2763 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_REAL_in_rule__RealValue__ValueAssignment2794 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_STRING_in_rule__StringValue__ValueAssignment2825 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleBOOLEAN_in_rule__BooleanValue__ValueAssignment2856 = new BitSet(new long[]{0x0000000000000002L});
 
 }
\ No newline at end of file
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar__.g b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar__.g
index 0200b70..7b229b5 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar__.g
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar__.g
@@ -12,35 +12,38 @@
 T16 : 'model' ;
 T17 : 'incorporates' ;
 T18 : '=' ;
+T19 : '[' ;
+T20 : ',' ;
+T21 : ']' ;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 891
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1433
 RULE_INTEGER : '-'? ('0'..'9')+;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 893
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1435
 RULE_REAL : '-'? ('0'..'9')* '.' ('0'..'9')*;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 895
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1437
 RULE_DESC_STRING : '\u00AB' ('\\' ('b'|'t'|'n'|'f'|'r'|'\u00AB'|'\u00BB'|'\\')|~(('\\'|'\u00AB'|'\u00BB')))* '\u00BB';
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 897
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1439
 RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 899
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1441
 RULE_INT : ('0'..'9')+;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 901
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1443
 RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'"'|'\''|'\\')|~(('\\'|'"')))* '"'|'\'' ('\\' ('b'|'t'|'n'|'f'|'r'|'"'|'\''|'\\')|~(('\\'|'\'')))* '\'');
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 903
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1445
 RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 905
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1447
 RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 907
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1449
 RULE_WS : (' '|'\t'|'\r'|'\n')+;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 909
+// $ANTLR src "../org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/contentassist/antlr/internal/InternalAPar.g" 1451
 RULE_ANY_OTHER : .;
 
 
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/internal/AParActivator.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/internal/AParActivator.java
index 5f01f4e..f83f803 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/internal/AParActivator.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src-gen/org/eclipse/amp/amf/parameters/ui/internal/AParActivator.java
@@ -4,8 +4,7 @@
  */
 package org.eclipse.amp.amf.parameters.ui.internal;
 
-import java.util.HashMap;
-import java.util.Map;
+import org.apache.log4j.Logger;
 
 import org.eclipse.ui.plugin.AbstractUIPlugin;
 import org.osgi.framework.BundleContext;
@@ -15,57 +14,60 @@
 import com.google.inject.Module;
 import com.google.inject.util.Modules;
 
+import java.util.Map;
+import java.util.HashMap;
+
 /**
  * Generated
  */
 public class AParActivator extends AbstractUIPlugin {
 
-    private Map<String,Injector> injectors = new HashMap<String,Injector>();
-    private static AParActivator INSTANCE;
+	private Map<String,Injector> injectors = new HashMap<String,Injector>();
+	private static AParActivator INSTANCE;
 
-    public Injector getInjector(String languageName) {
-        return injectors.get(languageName);
-    }
-
-    @Override
-    public void start(BundleContext context) throws Exception {
-        super.start(context);
-        INSTANCE = this;
-        try {
-
-            injectors.put("org.eclipse.amp.amf.parameters.APar", Guice.createInjector(
-                                                                                      Modules.override(Modules.override(getRuntimeModule("org.eclipse.amp.amf.parameters.APar")).with(getUiModule("org.eclipse.amp.amf.parameters.APar"))).with(getSharedStateModule())
-            ));
-
-        } catch (Exception e) {
-            // Logger.getLogger(getClass()).error(e.getMessage(), e);
-            throw e;
-        }
-    }
-
-    public static AParActivator getInstance() {
-        return INSTANCE;
-    }
-
-    protected Module getRuntimeModule(String grammar) {
-
-        if ("org.eclipse.amp.amf.parameters.APar".equals(grammar)) {
-            return new org.eclipse.amp.amf.parameters.AParRuntimeModule();
-        }
-
-        throw new IllegalArgumentException(grammar);
-    }
-    protected Module getUiModule(String grammar) {
-
-        if ("org.eclipse.amp.amf.parameters.APar".equals(grammar)) {
-            return new org.eclipse.amp.amf.parameters.ui.AParUiModule(this);
-        }
-
-        throw new IllegalArgumentException(grammar);
-    }
-
-    protected Module getSharedStateModule() {
-        return new org.eclipse.xtext.ui.shared.SharedStateModule();
-    }
-
+	public Injector getInjector(String languageName) {
+		return injectors.get(languageName);
+	}
+	
+	@Override
+	public void start(BundleContext context) throws Exception {
+		super.start(context);
+		INSTANCE = this;
+		try {
+			
+			injectors.put("org.eclipse.amp.amf.parameters.APar", Guice.createInjector(
+				Modules.override(Modules.override(getRuntimeModule("org.eclipse.amp.amf.parameters.APar")).with(getUiModule("org.eclipse.amp.amf.parameters.APar"))).with(getSharedStateModule())
+			));
+			
+		} catch (Exception e) {
+			Logger.getLogger(getClass()).error(e.getMessage(), e);
+			throw e;
+		}
+	}
+	
+	public static AParActivator getInstance() {
+		return INSTANCE;
+	}
+	
+	protected Module getRuntimeModule(String grammar) {
+		
+		if ("org.eclipse.amp.amf.parameters.APar".equals(grammar)) {
+		  return new org.eclipse.amp.amf.parameters.AParRuntimeModule();
+		}
+		
+		throw new IllegalArgumentException(grammar);
+	}
+	protected Module getUiModule(String grammar) {
+		
+		if ("org.eclipse.amp.amf.parameters.APar".equals(grammar)) {
+		  return new org.eclipse.amp.amf.parameters.ui.AParUiModule(this);
+		}
+		
+		throw new IllegalArgumentException(grammar);
+	}
+	
+	protected Module getSharedStateModule() {
+		return new org.eclipse.xtext.ui.shared.SharedStateModule();
+	}
+	
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src/org/eclipse/amp/amf/parameters/ui/labeling/AParLabelProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src/org/eclipse/amp/amf/parameters/ui/labeling/AParLabelProvider.java
index 77cab90..a4ff4c6 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src/org/eclipse/amp/amf/parameters/ui/labeling/AParLabelProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters.ui/src/org/eclipse/amp/amf/parameters/ui/labeling/AParLabelProvider.java
@@ -4,9 +4,12 @@
 package org.eclipse.amp.amf.parameters.ui.labeling;
 
 import org.eclipse.amp.amf.parameters.aPar.Parameter;
+import org.eclipse.amp.amf.parameters.aPar.SingleParameter;
+import org.eclipse.amp.amf.parameters.aPar.SweepLink;
+import org.eclipse.amp.amf.parameters.aPar.SweepParameter;
+import org.eclipse.emf.common.util.EList;
 import org.eclipse.emf.edit.ui.provider.AdapterFactoryLabelProvider;
 import org.eclipse.xtext.ui.label.DefaultEObjectLabelProvider;
-
 import org.metaabm.IID;
 
 import com.google.inject.Inject;
@@ -14,43 +17,77 @@
 /**
  * Provides labels for a EObjects.
  * 
- * see http://www.eclipse.org/Xtext/documentation/latest/xtext.html#labelProvider
+ * see
+ * http://www.eclipse.org/Xtext/documentation/latest/xtext.html#labelProvider
  */
 public class AParLabelProvider extends DefaultEObjectLabelProvider {
 
-    @Inject
-    public AParLabelProvider(AdapterFactoryLabelProvider delegate) {
-        super(delegate);
-    }
-
-    String text(Parameter parameter) {
-        String text = "";
-        if (parameter.getAttribute() != null) {
-            text += parameter.getAttribute().getLabel();
-        } else {
-            text += "?";
-        }
-        if (parameter.getValue() != null) {
-            text += "=" + text(parameter.getValue());
-        }
-        return text;
-    }
-
-    Object image(Parameter parameter) {
-        if (parameter.getAttribute() instanceof IID) {
-            return parameter.getAttribute().eClass().getName();
-        }
-        return super.image(parameter);
-    }
-    /*
-	//Labels and icons can be computed like this:
-
-	String text(MyModel ele) {
-	  return "my "+ele.getName();
+	@Inject
+	public AParLabelProvider(AdapterFactoryLabelProvider delegate) {
+		super(delegate);
 	}
 
-    String image(MyModel ele) {
-      return "MyModel.gif";
-    }
-     */
+	String text(Parameter param) {
+		String text = "";
+		if (param instanceof SingleParameter) {
+			SingleParameter sp = (SingleParameter) param;
+			if (sp.getAttribute() != null) {
+				text += sp.getAttribute().getLabel();
+			} else {
+				text += "?";
+			}
+			if (sp.getValue() != null) {
+				text += "=" + text(sp.getValue());
+			}
+		} else if (param instanceof SweepParameter) {
+			SweepParameter sp = (SweepParameter) param;
+			if (sp.getAttribute() != null) {
+				text += sp.getAttribute().getLabel();
+			} else {
+				text += "?";
+			}
+			text += " [";
+			if (sp.getStartValue() != null) {
+				text += text(sp.getStartValue());
+			} else {
+				text += "?";
+			}
+			if (sp.getEndValue() != null) {
+				text += text(sp.getEndValue());
+			} else {
+				text += "?";
+			}
+			text += "]";
+		} else if (param instanceof SweepLink) {
+			text += "[";
+			int i = 0;
+			EList<Parameter> params = ((SweepLink) param).getParameters();
+			for (Parameter subParam : params) {
+				text += text(subParam);
+				if (i < params.size() - 1) {
+					text += ", ";
+				}
+			}
+			text += "]";
+		}
+		return text;
+	}
+
+	Object image(Parameter param) {
+		if (param instanceof SingleParameter) {
+			SingleParameter sp = (SingleParameter) param;
+			return sp.getAttribute().eClass().getName();
+		} else if (param instanceof SweepParameter) {
+			SweepParameter sp = (SweepParameter) param;
+			return sp.getAttribute().eClass().getName();
+		}
+		return super.image(param);
+	}
+	/*
+	 * //Labels and icons can be computed like this:
+	 * 
+	 * String text(MyModel ele) { return "my "+ele.getName(); }
+	 * 
+	 * String image(MyModel ele) { return "MyModel.gif"; }
+	 */
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/META-INF/MANIFEST.MF b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/META-INF/MANIFEST.MF
index c66b8b1..170e16f 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/META-INF/MANIFEST.MF
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/META-INF/MANIFEST.MF
@@ -23,7 +23,8 @@
  org.eclipse.amp.amf.acore,

  org.eclipse.amp.amf.abase,

  org.eclipse.xtext.util,

- org.eclipse.emf.mwe2.launch;resolution:=optional

+ org.eclipse.emf.mwe2.launch;resolution:=optional,

+ org.apache.log4j;bundle-version="1.2.15";resolution:=optional

 Bundle-RequiredExecutionEnvironment: J2SE-1.5

 Bundle-ClassPath: .

 Export-Package: org.eclipse.amp.amf.parameters,

@@ -38,4 +39,5 @@
  org.eclipse.amp.amf.parameters.services,

  org.eclipse.amp.amf.parameters.validation

 Bundle-Localization: plugin

-Import-Package: org.apache.commons.lang

+Import-Package: org.apache.commons.lang,

+ org.apache.log4j

diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.ecore b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.ecore
index aa37ee4..bccc28c 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.ecore
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.ecore
@@ -18,9 +18,23 @@
   <eClassifiers xsi:type="ecore:EClass" name="Incorporates">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="importURI" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
   </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Parameter">
+  <eClassifiers xsi:type="ecore:EClass" name="Parameter"/>
+  <eClassifiers xsi:type="ecore:EClass" name="SingleParameter" eSuperTypes="#//Parameter">
     <eStructuralFeatures xsi:type="ecore:EReference" name="attribute" eType="ecore:EClass ../../../../../../../org.eclipse.amp.amf.acore/src/model/metaabm.ecore#//SAttribute"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="ecore:EClass ../../../../../../../org.eclipse.amp.amf.abase/src-gen/org/eclipse/amp/amf/abase/ABase.ecore#//Value"
         containment="true"/>
   </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SweepParameter" eSuperTypes="#//Parameter">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="attribute" eType="ecore:EClass ../../../../../../../org.eclipse.amp.amf.acore/src/model/metaabm.ecore#//SAttribute"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="startValue" eType="ecore:EClass ../../../../../../../org.eclipse.amp.amf.abase/src-gen/org/eclipse/amp/amf/abase/ABase.ecore#//Value"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="endValue" eType="ecore:EClass ../../../../../../../org.eclipse.amp.amf.abase/src-gen/org/eclipse/amp/amf/abase/ABase.ecore#//Value"
+        containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="increment" eType="ecore:EClass ../../../../../../../org.eclipse.amp.amf.abase/src-gen/org/eclipse/amp/amf/abase/ABase.ecore#//Value"
+        containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SweepLink" eSuperTypes="#//Parameter">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
+        eType="#//Parameter" containment="true"/>
+  </eClassifiers>
 </ecore:EPackage>
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.genmodel b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.genmodel
index e5b1d40..6b02800 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.genmodel
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.genmodel
@@ -21,9 +21,19 @@
     <genClasses ecoreClass="APar.ecore#//Incorporates">
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute APar.ecore#//Incorporates/importURI"/>
     </genClasses>
-    <genClasses ecoreClass="APar.ecore#//Parameter">
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference APar.ecore#//Parameter/attribute"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference APar.ecore#//Parameter/value"/>
+    <genClasses ecoreClass="APar.ecore#//Parameter"/>
+    <genClasses ecoreClass="APar.ecore#//SingleParameter">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference APar.ecore#//SingleParameter/attribute"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference APar.ecore#//SingleParameter/value"/>
+    </genClasses>
+    <genClasses ecoreClass="APar.ecore#//SweepParameter">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference APar.ecore#//SweepParameter/attribute"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference APar.ecore#//SweepParameter/startValue"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference APar.ecore#//SweepParameter/endValue"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference APar.ecore#//SweepParameter/increment"/>
+    </genClasses>
+    <genClasses ecoreClass="APar.ecore#//SweepLink">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference APar.ecore#//SweepLink/parameters"/>
     </genClasses>
   </genPackages>
 </genmodel:GenModel>
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.xmi b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.xmi
index 6e70e56..34e846e 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.xmi
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.xmi
@@ -56,6 +56,16 @@
       <type metamodel="/0/@metamodelDeclarations.0">
         <classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/amp/amf/parameters/APar#//Parameter"/>
       </type>
+      <alternatives xsi:type="xtext:Alternatives">
+        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.4"/>
+        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.5"/>
+        <elements xsi:type="xtext:RuleCall" rule="/0/@rules.6"/>
+      </alternatives>
+    </rules>
+    <rules xsi:type="xtext:ParserRule" name="SingleParameter">
+      <type metamodel="/0/@metamodelDeclarations.0">
+        <classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/amp/amf/parameters/APar#//SingleParameter"/>
+      </type>
       <alternatives xsi:type="xtext:Group">
         <elements xsi:type="xtext:Assignment" feature="attribute" operator="=">
           <terminal xsi:type="xtext:CrossReference">
@@ -71,6 +81,46 @@
         </elements>
       </alternatives>
     </rules>
+    <rules xsi:type="xtext:ParserRule" name="SweepParameter">
+      <type metamodel="/0/@metamodelDeclarations.0">
+        <classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/amp/amf/parameters/APar#//SweepParameter"/>
+      </type>
+      <alternatives xsi:type="xtext:Group">
+        <elements xsi:type="xtext:Assignment" feature="attribute" operator="=">
+          <terminal xsi:type="xtext:CrossReference">
+            <type metamodel="/0/@metamodelDeclarations.3">
+              <classifier xsi:type="ecore:EClass" href="http://metaabm.org/structure#//SAttribute"/>
+            </type>
+            <terminal xsi:type="xtext:RuleCall" rule="/2/@rules.0"/>
+          </terminal>
+        </elements>
+        <elements xsi:type="xtext:Keyword" value="["/>
+        <elements xsi:type="xtext:Assignment" feature="startValue" operator="=">
+          <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
+        </elements>
+        <elements xsi:type="xtext:Keyword" value=","/>
+        <elements xsi:type="xtext:Assignment" feature="endValue" operator="=">
+          <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
+        </elements>
+        <elements xsi:type="xtext:Keyword" value=","/>
+        <elements xsi:type="xtext:Assignment" feature="increment" operator="=">
+          <terminal xsi:type="xtext:RuleCall" rule="/1/@rules.0"/>
+        </elements>
+        <elements xsi:type="xtext:Keyword" value="]"/>
+      </alternatives>
+    </rules>
+    <rules xsi:type="xtext:ParserRule" name="SweepLink">
+      <type metamodel="/0/@metamodelDeclarations.0">
+        <classifier xsi:type="ecore:EClass" href="http://www.eclipse.org/amp/amf/parameters/APar#//SweepLink"/>
+      </type>
+      <alternatives xsi:type="xtext:Group">
+        <elements xsi:type="xtext:Keyword" value="["/>
+        <elements xsi:type="xtext:Assignment" cardinality="*" feature="parameters" operator="+=">
+          <terminal xsi:type="xtext:RuleCall" rule="/0/@rules.3"/>
+        </elements>
+        <elements xsi:type="xtext:Keyword" value="]"/>
+      </alternatives>
+    </rules>
   </xtext:Grammar>
   <xtext:Grammar name="org.eclipse.amp.amf.abase.ABase" usedGrammars="/2">
     <metamodelDeclarations xsi:type="xtext:GeneratedMetamodel" name="aBase">
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/AParFactory.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/AParFactory.java
index 7eee03a..bde6fc0 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/AParFactory.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/AParFactory.java
@@ -18,56 +18,83 @@
 public interface AParFactory 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
+	 */
   AParFactory eINSTANCE = org.eclipse.amp.amf.parameters.aPar.impl.AParFactoryImpl.init();
 
   /**
-   * Returns a new object of class '<em>Model</em>'.
-   * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Model</em>'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return a new object of class '<em>Model</em>'.
-   * @generated
-   */
+	 * @return a new object of class '<em>Model</em>'.
+	 * @generated
+	 */
   Model createModel();
 
   /**
-   * Returns a new object of class '<em>Import</em>'.
-   * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Import</em>'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return a new object of class '<em>Import</em>'.
-   * @generated
-   */
+	 * @return a new object of class '<em>Import</em>'.
+	 * @generated
+	 */
   Import createImport();
 
   /**
-   * Returns a new object of class '<em>Incorporates</em>'.
-   * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Incorporates</em>'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return a new object of class '<em>Incorporates</em>'.
-   * @generated
-   */
+	 * @return a new object of class '<em>Incorporates</em>'.
+	 * @generated
+	 */
   Incorporates createIncorporates();
 
   /**
-   * 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 the package supported by this factory.
-   * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Single Parameter</em>'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the package supported by this factory.
-   * @generated
-   */
+	 * @return a new object of class '<em>Single Parameter</em>'.
+	 * @generated
+	 */
+  SingleParameter createSingleParameter();
+
+  /**
+	 * Returns a new object of class '<em>Sweep Parameter</em>'.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Sweep Parameter</em>'.
+	 * @generated
+	 */
+  SweepParameter createSweepParameter();
+
+  /**
+	 * Returns a new object of class '<em>Sweep Link</em>'.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Sweep Link</em>'.
+	 * @generated
+	 */
+  SweepLink createSweepLink();
+
+  /**
+	 * Returns the package supported by this factory.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
   AParPackage getAParPackage();
 
 } //AParFactory
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/AParPackage.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/AParPackage.java
index 07a2d21..c80acd4 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/AParPackage.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/AParPackage.java
@@ -28,325 +28,512 @@
 public interface AParPackage extends EPackage
 {
   /**
-   * The package name.
-   * <!-- begin-user-doc -->
+	 * The package name.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   String eNAME = "aPar";
 
   /**
-   * The package namespace URI.
-   * <!-- begin-user-doc -->
+	 * The package namespace URI.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   String eNS_URI = "http://www.eclipse.org/amp/amf/parameters/APar";
 
   /**
-   * The package namespace name.
-   * <!-- begin-user-doc -->
+	 * The package namespace name.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   String eNS_PREFIX = "aPar";
 
   /**
-   * The singleton instance of the package.
-   * <!-- begin-user-doc -->
+	 * The singleton instance of the package.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   AParPackage eINSTANCE = org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl.init();
 
   /**
-   * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ModelImpl <em>Model</em>}' class.
-   * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ModelImpl <em>Model</em>}' class.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see org.eclipse.amp.amf.parameters.aPar.impl.ModelImpl
-   * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getModel()
-   * @generated
-   */
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.ModelImpl
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getModel()
+	 * @generated
+	 */
   int MODEL = 0;
 
   /**
-   * 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 MODEL__NAME = 0;
 
   /**
-   * The feature id for the '<em><b>Model</b></em>' containment reference.
-   * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Model</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
+	 * @generated
+	 * @ordered
+	 */
   int MODEL__MODEL = 1;
 
   /**
-   * The feature id for the '<em><b>Incorporates</b></em>' containment reference list.
-   * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Incorporates</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
+	 * @generated
+	 * @ordered
+	 */
   int MODEL__INCORPORATES = 2;
 
   /**
-   * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
-   * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
+	 * @generated
+	 * @ordered
+	 */
   int MODEL__PARAMETERS = 3;
 
   /**
-   * The number of structural features of the '<em>Model</em>' class.
-   * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Model</em>' class.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
+	 * @generated
+	 * @ordered
+	 */
   int MODEL_FEATURE_COUNT = 4;
 
   /**
-   * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ImportImpl <em>Import</em>}' class.
-   * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ImportImpl <em>Import</em>}' class.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see org.eclipse.amp.amf.parameters.aPar.impl.ImportImpl
-   * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getImport()
-   * @generated
-   */
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.ImportImpl
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getImport()
+	 * @generated
+	 */
   int IMPORT = 1;
 
   /**
-   * The feature id for the '<em><b>Import URI</b></em>' attribute.
-   * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Import URI</b></em>' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
+	 * @generated
+	 * @ordered
+	 */
   int IMPORT__IMPORT_URI = 0;
 
   /**
-   * The number of structural features of the '<em>Import</em>' class.
-   * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Import</em>' class.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
+	 * @generated
+	 * @ordered
+	 */
   int IMPORT_FEATURE_COUNT = 1;
 
   /**
-   * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.IncorporatesImpl <em>Incorporates</em>}' class.
-   * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.IncorporatesImpl <em>Incorporates</em>}' class.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see org.eclipse.amp.amf.parameters.aPar.impl.IncorporatesImpl
-   * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getIncorporates()
-   * @generated
-   */
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.IncorporatesImpl
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getIncorporates()
+	 * @generated
+	 */
   int INCORPORATES = 2;
 
   /**
-   * The feature id for the '<em><b>Import URI</b></em>' attribute.
-   * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Import URI</b></em>' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
+	 * @generated
+	 * @ordered
+	 */
   int INCORPORATES__IMPORT_URI = 0;
 
   /**
-   * The number of structural features of the '<em>Incorporates</em>' class.
-   * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Incorporates</em>' class.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
+	 * @generated
+	 * @ordered
+	 */
   int INCORPORATES_FEATURE_COUNT = 1;
 
   /**
-   * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl <em>Parameter</em>}' class.
-   * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl <em>Parameter</em>}' class.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl
-   * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getParameter()
-   * @generated
-   */
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getParameter()
+	 * @generated
+	 */
   int PARAMETER = 3;
 
   /**
-   * The feature id for the '<em><b>Attribute</b></em>' reference.
-   * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Parameter</em>' class.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
-  int PARAMETER__ATTRIBUTE = 0;
+	 * @generated
+	 * @ordered
+	 */
+  int PARAMETER_FEATURE_COUNT = 0;
 
   /**
-   * The feature id for the '<em><b>Value</b></em>' containment reference.
-   * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.SingleParameterImpl <em>Single Parameter</em>}' class.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
-  int PARAMETER__VALUE = 1;
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.SingleParameterImpl
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getSingleParameter()
+	 * @generated
+	 */
+  int SINGLE_PARAMETER = 4;
 
   /**
-   * The number of structural features of the '<em>Parameter</em>' class.
-   * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Attribute</b></em>' reference.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   * @ordered
-   */
-  int PARAMETER_FEATURE_COUNT = 2;
+	 * @generated
+	 * @ordered
+	 */
+  int SINGLE_PARAMETER__ATTRIBUTE = PARAMETER_FEATURE_COUNT + 0;
+
+  /**
+	 * The feature id for the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+  int SINGLE_PARAMETER__VALUE = PARAMETER_FEATURE_COUNT + 1;
+
+  /**
+	 * The number of structural features of the '<em>Single Parameter</em>' class.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+  int SINGLE_PARAMETER_FEATURE_COUNT = PARAMETER_FEATURE_COUNT + 2;
+
+  /**
+	 * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.SweepParameterImpl <em>Sweep Parameter</em>}' class.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.SweepParameterImpl
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getSweepParameter()
+	 * @generated
+	 */
+  int SWEEP_PARAMETER = 5;
+
+  /**
+	 * The feature id for the '<em><b>Attribute</b></em>' reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+  int SWEEP_PARAMETER__ATTRIBUTE = PARAMETER_FEATURE_COUNT + 0;
+
+  /**
+	 * The feature id for the '<em><b>Start Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+  int SWEEP_PARAMETER__START_VALUE = PARAMETER_FEATURE_COUNT + 1;
+
+  /**
+	 * The feature id for the '<em><b>End Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+  int SWEEP_PARAMETER__END_VALUE = PARAMETER_FEATURE_COUNT + 2;
+
+  /**
+	 * The feature id for the '<em><b>Increment</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+  int SWEEP_PARAMETER__INCREMENT = PARAMETER_FEATURE_COUNT + 3;
+
+  /**
+	 * The number of structural features of the '<em>Sweep Parameter</em>' class.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+  int SWEEP_PARAMETER_FEATURE_COUNT = PARAMETER_FEATURE_COUNT + 4;
+
+  /**
+	 * The meta object id for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.SweepLinkImpl <em>Sweep Link</em>}' class.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.SweepLinkImpl
+	 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getSweepLink()
+	 * @generated
+	 */
+  int SWEEP_LINK = 6;
+
+  /**
+	 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+  int SWEEP_LINK__PARAMETERS = PARAMETER_FEATURE_COUNT + 0;
+
+  /**
+	 * The number of structural features of the '<em>Sweep Link</em>' class.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+  int SWEEP_LINK_FEATURE_COUNT = PARAMETER_FEATURE_COUNT + 1;
 
 
   /**
-   * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.Model <em>Model</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.Model <em>Model</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for class '<em>Model</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Model
-   * @generated
-   */
+	 * @return the meta object for class '<em>Model</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Model
+	 * @generated
+	 */
   EClass getModel();
 
   /**
-   * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.parameters.aPar.Model#getName <em>Name</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.parameters.aPar.Model#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.parameters.aPar.Model#getName()
-   * @see #getModel()
-   * @generated
-   */
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Model#getName()
+	 * @see #getModel()
+	 * @generated
+	 */
   EAttribute getModel_Name();
 
   /**
-   * Returns the meta object for the containment reference '{@link org.eclipse.amp.amf.parameters.aPar.Model#getModel <em>Model</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference '{@link org.eclipse.amp.amf.parameters.aPar.Model#getModel <em>Model</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for the containment reference '<em>Model</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Model#getModel()
-   * @see #getModel()
-   * @generated
-   */
+	 * @return the meta object for the containment reference '<em>Model</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Model#getModel()
+	 * @see #getModel()
+	 * @generated
+	 */
   EReference getModel_Model();
 
   /**
-   * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.parameters.aPar.Model#getIncorporates <em>Incorporates</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.parameters.aPar.Model#getIncorporates <em>Incorporates</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for the containment reference list '<em>Incorporates</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Model#getIncorporates()
-   * @see #getModel()
-   * @generated
-   */
+	 * @return the meta object for the containment reference list '<em>Incorporates</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Model#getIncorporates()
+	 * @see #getModel()
+	 * @generated
+	 */
   EReference getModel_Incorporates();
 
   /**
-   * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.parameters.aPar.Model#getParameters <em>Parameters</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.parameters.aPar.Model#getParameters <em>Parameters</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for the containment reference list '<em>Parameters</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Model#getParameters()
-   * @see #getModel()
-   * @generated
-   */
+	 * @return the meta object for the containment reference list '<em>Parameters</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Model#getParameters()
+	 * @see #getModel()
+	 * @generated
+	 */
   EReference getModel_Parameters();
 
   /**
-   * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.Import <em>Import</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.Import <em>Import</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for class '<em>Import</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Import
-   * @generated
-   */
+	 * @return the meta object for class '<em>Import</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Import
+	 * @generated
+	 */
   EClass getImport();
 
   /**
-   * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.parameters.aPar.Import#getImportURI <em>Import URI</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.parameters.aPar.Import#getImportURI <em>Import URI</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for the attribute '<em>Import URI</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Import#getImportURI()
-   * @see #getImport()
-   * @generated
-   */
+	 * @return the meta object for the attribute '<em>Import URI</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Import#getImportURI()
+	 * @see #getImport()
+	 * @generated
+	 */
   EAttribute getImport_ImportURI();
 
   /**
-   * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.Incorporates <em>Incorporates</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.Incorporates <em>Incorporates</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for class '<em>Incorporates</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Incorporates
-   * @generated
-   */
+	 * @return the meta object for class '<em>Incorporates</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Incorporates
+	 * @generated
+	 */
   EClass getIncorporates();
 
   /**
-   * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.parameters.aPar.Incorporates#getImportURI <em>Import URI</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.parameters.aPar.Incorporates#getImportURI <em>Import URI</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for the attribute '<em>Import URI</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Incorporates#getImportURI()
-   * @see #getIncorporates()
-   * @generated
-   */
+	 * @return the meta object for the attribute '<em>Import URI</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Incorporates#getImportURI()
+	 * @see #getIncorporates()
+	 * @generated
+	 */
   EAttribute getIncorporates_ImportURI();
 
   /**
-   * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.Parameter <em>Parameter</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.Parameter <em>Parameter</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for class '<em>Parameter</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Parameter
-   * @generated
-   */
+	 * @return the meta object for class '<em>Parameter</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Parameter
+	 * @generated
+	 */
   EClass getParameter();
 
   /**
-   * Returns the meta object for the reference '{@link org.eclipse.amp.amf.parameters.aPar.Parameter#getAttribute <em>Attribute</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.SingleParameter <em>Single Parameter</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for the reference '<em>Attribute</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Parameter#getAttribute()
-   * @see #getParameter()
-   * @generated
-   */
-  EReference getParameter_Attribute();
+	 * @return the meta object for class '<em>Single Parameter</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.SingleParameter
+	 * @generated
+	 */
+  EClass getSingleParameter();
 
   /**
-   * Returns the meta object for the containment reference '{@link org.eclipse.amp.amf.parameters.aPar.Parameter#getValue <em>Value</em>}'.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for the reference '{@link org.eclipse.amp.amf.parameters.aPar.SingleParameter#getAttribute <em>Attribute</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the meta object for the containment reference '<em>Value</em>'.
-   * @see org.eclipse.amp.amf.parameters.aPar.Parameter#getValue()
-   * @see #getParameter()
-   * @generated
-   */
-  EReference getParameter_Value();
+	 * @return the meta object for the reference '<em>Attribute</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.SingleParameter#getAttribute()
+	 * @see #getSingleParameter()
+	 * @generated
+	 */
+  EReference getSingleParameter_Attribute();
 
   /**
-   * Returns the factory that creates the instances of the model.
-   * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference '{@link org.eclipse.amp.amf.parameters.aPar.SingleParameter#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @return the factory that creates the instances of the model.
-   * @generated
-   */
+	 * @return the meta object for the containment reference '<em>Value</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.SingleParameter#getValue()
+	 * @see #getSingleParameter()
+	 * @generated
+	 */
+  EReference getSingleParameter_Value();
+
+  /**
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter <em>Sweep Parameter</em>}'.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Sweep Parameter</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.SweepParameter
+	 * @generated
+	 */
+  EClass getSweepParameter();
+
+  /**
+	 * Returns the meta object for the reference '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#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.parameters.aPar.SweepParameter#getAttribute()
+	 * @see #getSweepParameter()
+	 * @generated
+	 */
+  EReference getSweepParameter_Attribute();
+
+  /**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getStartValue <em>Start Value</em>}'.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Start Value</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.SweepParameter#getStartValue()
+	 * @see #getSweepParameter()
+	 * @generated
+	 */
+  EReference getSweepParameter_StartValue();
+
+  /**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getEndValue <em>End Value</em>}'.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>End Value</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.SweepParameter#getEndValue()
+	 * @see #getSweepParameter()
+	 * @generated
+	 */
+  EReference getSweepParameter_EndValue();
+
+  /**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getIncrement <em>Increment</em>}'.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Increment</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.SweepParameter#getIncrement()
+	 * @see #getSweepParameter()
+	 * @generated
+	 */
+  EReference getSweepParameter_Increment();
+
+  /**
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.parameters.aPar.SweepLink <em>Sweep Link</em>}'.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Sweep Link</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.SweepLink
+	 * @generated
+	 */
+  EClass getSweepLink();
+
+  /**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.parameters.aPar.SweepLink#getParameters <em>Parameters</em>}'.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Parameters</em>'.
+	 * @see org.eclipse.amp.amf.parameters.aPar.SweepLink#getParameters()
+	 * @see #getSweepLink()
+	 * @generated
+	 */
+  EReference getSweepLink_Parameters();
+
+  /**
+	 * 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
+	 */
   AParFactory getAParFactory();
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * Defines literals for the meta objects that represent
    * <ul>
    *   <li>each class,</li>
@@ -355,113 +542,183 @@
    *   <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.parameters.aPar.impl.ModelImpl <em>Model</em>}' class.
-     * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ModelImpl <em>Model</em>}' class.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.parameters.aPar.impl.ModelImpl
-     * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getModel()
-     * @generated
-     */
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.ModelImpl
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getModel()
+		 * @generated
+		 */
     EClass MODEL = eINSTANCE.getModel();
 
     /**
-     * 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 MODEL__NAME = eINSTANCE.getModel_Name();
 
     /**
-     * The meta object literal for the '<em><b>Model</b></em>' containment reference feature.
-     * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Model</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+		 * @generated
+		 */
     EReference MODEL__MODEL = eINSTANCE.getModel_Model();
 
     /**
-     * The meta object literal for the '<em><b>Incorporates</b></em>' containment reference list feature.
-     * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Incorporates</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+		 * @generated
+		 */
     EReference MODEL__INCORPORATES = eINSTANCE.getModel_Incorporates();
 
     /**
-     * The meta object literal for the '<em><b>Parameters</b></em>' containment reference list feature.
-     * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Parameters</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+		 * @generated
+		 */
     EReference MODEL__PARAMETERS = eINSTANCE.getModel_Parameters();
 
     /**
-     * The meta object literal for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ImportImpl <em>Import</em>}' class.
-     * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ImportImpl <em>Import</em>}' class.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.parameters.aPar.impl.ImportImpl
-     * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getImport()
-     * @generated
-     */
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.ImportImpl
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getImport()
+		 * @generated
+		 */
     EClass IMPORT = eINSTANCE.getImport();
 
     /**
-     * The meta object literal for the '<em><b>Import URI</b></em>' attribute feature.
-     * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Import URI</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+		 * @generated
+		 */
     EAttribute IMPORT__IMPORT_URI = eINSTANCE.getImport_ImportURI();
 
     /**
-     * The meta object literal for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.IncorporatesImpl <em>Incorporates</em>}' class.
-     * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.IncorporatesImpl <em>Incorporates</em>}' class.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.parameters.aPar.impl.IncorporatesImpl
-     * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getIncorporates()
-     * @generated
-     */
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.IncorporatesImpl
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getIncorporates()
+		 * @generated
+		 */
     EClass INCORPORATES = eINSTANCE.getIncorporates();
 
     /**
-     * The meta object literal for the '<em><b>Import URI</b></em>' attribute feature.
-     * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Import URI</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+		 * @generated
+		 */
     EAttribute INCORPORATES__IMPORT_URI = eINSTANCE.getIncorporates_ImportURI();
 
     /**
-     * The meta object literal for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl <em>Parameter</em>}' class.
-     * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl <em>Parameter</em>}' class.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl
-     * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getParameter()
-     * @generated
-     */
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#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 '{@link org.eclipse.amp.amf.parameters.aPar.impl.SingleParameterImpl <em>Single Parameter</em>}' class.
+		 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
-    EReference PARAMETER__ATTRIBUTE = eINSTANCE.getParameter_Attribute();
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.SingleParameterImpl
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getSingleParameter()
+		 * @generated
+		 */
+    EClass SINGLE_PARAMETER = eINSTANCE.getSingleParameter();
 
     /**
-     * The meta object literal for the '<em><b>Value</b></em>' containment 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
-     */
-    EReference PARAMETER__VALUE = eINSTANCE.getParameter_Value();
+		 * @generated
+		 */
+    EReference SINGLE_PARAMETER__ATTRIBUTE = eINSTANCE.getSingleParameter_Attribute();
+
+    /**
+		 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+     * <!-- end-user-doc -->
+		 * @generated
+		 */
+    EReference SINGLE_PARAMETER__VALUE = eINSTANCE.getSingleParameter_Value();
+
+    /**
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.SweepParameterImpl <em>Sweep Parameter</em>}' class.
+		 * <!-- begin-user-doc -->
+     * <!-- end-user-doc -->
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.SweepParameterImpl
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getSweepParameter()
+		 * @generated
+		 */
+    EClass SWEEP_PARAMETER = eINSTANCE.getSweepParameter();
+
+    /**
+		 * The meta object literal for the '<em><b>Attribute</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+     * <!-- end-user-doc -->
+		 * @generated
+		 */
+    EReference SWEEP_PARAMETER__ATTRIBUTE = eINSTANCE.getSweepParameter_Attribute();
+
+    /**
+		 * The meta object literal for the '<em><b>Start Value</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+     * <!-- end-user-doc -->
+		 * @generated
+		 */
+    EReference SWEEP_PARAMETER__START_VALUE = eINSTANCE.getSweepParameter_StartValue();
+
+    /**
+		 * The meta object literal for the '<em><b>End Value</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+     * <!-- end-user-doc -->
+		 * @generated
+		 */
+    EReference SWEEP_PARAMETER__END_VALUE = eINSTANCE.getSweepParameter_EndValue();
+
+    /**
+		 * The meta object literal for the '<em><b>Increment</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+     * <!-- end-user-doc -->
+		 * @generated
+		 */
+    EReference SWEEP_PARAMETER__INCREMENT = eINSTANCE.getSweepParameter_Increment();
+
+    /**
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.parameters.aPar.impl.SweepLinkImpl <em>Sweep Link</em>}' class.
+		 * <!-- begin-user-doc -->
+     * <!-- end-user-doc -->
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.SweepLinkImpl
+		 * @see org.eclipse.amp.amf.parameters.aPar.impl.AParPackageImpl#getSweepLink()
+		 * @generated
+		 */
+    EClass SWEEP_LINK = eINSTANCE.getSweepLink();
+
+    /**
+		 * The meta object literal for the '<em><b>Parameters</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+     * <!-- end-user-doc -->
+		 * @generated
+		 */
+    EReference SWEEP_LINK__PARAMETERS = eINSTANCE.getSweepLink_Parameters();
 
   }
 
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Import.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Import.java
index 7d91f0c..8c75c4d 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Import.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Import.java
@@ -26,29 +26,29 @@
 public interface Import extends EObject
 {
   /**
-   * Returns the value of the '<em><b>Import URI</b></em>' attribute.
-   * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Import URI</b></em>' attribute.
+	 * <!-- begin-user-doc -->
    * <p>
    * If the meaning of the '<em>Import URI</em>' attribute isn't clear,
    * there really should be more of a description here...
    * </p>
    * <!-- end-user-doc -->
-   * @return the value of the '<em>Import URI</em>' attribute.
-   * @see #setImportURI(String)
-   * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getImport_ImportURI()
-   * @model
-   * @generated
-   */
+	 * @return the value of the '<em>Import URI</em>' attribute.
+	 * @see #setImportURI(String)
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getImport_ImportURI()
+	 * @model
+	 * @generated
+	 */
   String getImportURI();
 
   /**
-   * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.Import#getImportURI <em>Import URI</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.Import#getImportURI <em>Import URI</em>}' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Import URI</em>' attribute.
-   * @see #getImportURI()
-   * @generated
-   */
+	 * @param value the new value of the '<em>Import URI</em>' attribute.
+	 * @see #getImportURI()
+	 * @generated
+	 */
   void setImportURI(String value);
 
 } // Import
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Incorporates.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Incorporates.java
index 7331394..3f1be3c 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Incorporates.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Incorporates.java
@@ -26,29 +26,29 @@
 public interface Incorporates extends EObject
 {
   /**
-   * Returns the value of the '<em><b>Import URI</b></em>' attribute.
-   * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Import URI</b></em>' attribute.
+	 * <!-- begin-user-doc -->
    * <p>
    * If the meaning of the '<em>Import URI</em>' attribute isn't clear,
    * there really should be more of a description here...
    * </p>
    * <!-- end-user-doc -->
-   * @return the value of the '<em>Import URI</em>' attribute.
-   * @see #setImportURI(String)
-   * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getIncorporates_ImportURI()
-   * @model
-   * @generated
-   */
+	 * @return the value of the '<em>Import URI</em>' attribute.
+	 * @see #setImportURI(String)
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getIncorporates_ImportURI()
+	 * @model
+	 * @generated
+	 */
   String getImportURI();
 
   /**
-   * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.Incorporates#getImportURI <em>Import URI</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.Incorporates#getImportURI <em>Import URI</em>}' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Import URI</em>' attribute.
-   * @see #getImportURI()
-   * @generated
-   */
+	 * @param value the new value of the '<em>Import URI</em>' attribute.
+	 * @see #getImportURI()
+	 * @generated
+	 */
   void setImportURI(String value);
 
 } // Incorporates
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Model.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Model.java
index b643608..6ddd07a 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Model.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Model.java
@@ -31,87 +31,87 @@
 public interface Model extends EObject
 {
   /**
-   * 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.parameters.aPar.AParPackage#getModel_Name()
-   * @model
-   * @generated
-   */
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getModel_Name()
+	 * @model
+	 * @generated
+	 */
   String getName();
 
   /**
-   * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.Model#getName <em>Name</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.Model#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>Model</b></em>' containment reference.
-   * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Model</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
    * <p>
    * If the meaning of the '<em>Model</em>' containment 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>' containment reference.
-   * @see #setModel(Import)
-   * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getModel_Model()
-   * @model containment="true"
-   * @generated
-   */
+	 * @return the value of the '<em>Model</em>' containment reference.
+	 * @see #setModel(Import)
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getModel_Model()
+	 * @model containment="true"
+	 * @generated
+	 */
   Import getModel();
 
   /**
-   * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.Model#getModel <em>Model</em>}' containment reference.
-   * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.Model#getModel <em>Model</em>}' containment reference.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Model</em>' containment reference.
-   * @see #getModel()
-   * @generated
-   */
+	 * @param value the new value of the '<em>Model</em>' containment reference.
+	 * @see #getModel()
+	 * @generated
+	 */
   void setModel(Import value);
 
   /**
-   * Returns the value of the '<em><b>Incorporates</b></em>' containment reference list.
-   * The list contents are of type {@link org.eclipse.amp.amf.parameters.aPar.Incorporates}.
-   * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Incorporates</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.parameters.aPar.Incorporates}.
+	 * <!-- begin-user-doc -->
    * <p>
    * If the meaning of the '<em>Incorporates</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>Incorporates</em>' containment reference list.
-   * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getModel_Incorporates()
-   * @model containment="true"
-   * @generated
-   */
+	 * @return the value of the '<em>Incorporates</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getModel_Incorporates()
+	 * @model containment="true"
+	 * @generated
+	 */
   EList<Incorporates> getIncorporates();
 
   /**
-   * Returns the value of the '<em><b>Parameters</b></em>' containment reference list.
-   * The list contents are of type {@link org.eclipse.amp.amf.parameters.aPar.Parameter}.
-   * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Parameters</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.parameters.aPar.Parameter}.
+	 * <!-- begin-user-doc -->
    * <p>
    * If the meaning of the '<em>Parameters</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>Parameters</em>' containment reference list.
-   * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getModel_Parameters()
-   * @model containment="true"
-   * @generated
-   */
+	 * @return the value of the '<em>Parameters</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getModel_Parameters()
+	 * @model containment="true"
+	 * @generated
+	 */
   EList<Parameter> getParameters();
 
 } // Model
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Parameter.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Parameter.java
index e44f67f..1cb073f 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Parameter.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/Parameter.java
@@ -5,24 +5,13 @@
  */
 package org.eclipse.amp.amf.parameters.aPar;
 
-import org.eclipse.amp.amf.abase.aBase.Value;
-
 import org.eclipse.emf.ecore.EObject;
 
-import org.metaabm.SAttribute;
-
 /**
  * <!-- begin-user-doc -->
  * A representation of the model object '<em><b>Parameter</b></em>'.
  * <!-- end-user-doc -->
  *
- * <p>
- * The following features are supported:
- * <ul>
- *   <li>{@link org.eclipse.amp.amf.parameters.aPar.Parameter#getAttribute <em>Attribute</em>}</li>
- *   <li>{@link org.eclipse.amp.amf.parameters.aPar.Parameter#getValue <em>Value</em>}</li>
- * </ul>
- * </p>
  *
  * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getParameter()
  * @model
@@ -30,56 +19,4 @@
  */
 public interface Parameter extends EObject
 {
-  /**
-   * 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.parameters.aPar.AParPackage#getParameter_Attribute()
-   * @model
-   * @generated
-   */
-  SAttribute getAttribute();
-
-  /**
-   * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.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
-   */
-  void setAttribute(SAttribute value);
-
-  /**
-   * Returns the value of the '<em><b>Value</b></em>' containment reference.
-   * <!-- begin-user-doc -->
-   * <p>
-   * If the meaning of the '<em>Value</em>' containment 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>' containment reference.
-   * @see #setValue(Value)
-   * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getParameter_Value()
-   * @model containment="true"
-   * @generated
-   */
-  Value getValue();
-
-  /**
-   * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.Parameter#getValue <em>Value</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @param value the new value of the '<em>Value</em>' containment reference.
-   * @see #getValue()
-   * @generated
-   */
-  void setValue(Value value);
-
 } // Parameter
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/SingleParameter.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/SingleParameter.java
new file mode 100644
index 0000000..c295692
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/SingleParameter.java
@@ -0,0 +1,83 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.eclipse.amp.amf.parameters.aPar;
+
+import org.eclipse.amp.amf.abase.aBase.Value;
+
+import org.metaabm.SAttribute;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Single Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.SingleParameter#getAttribute <em>Attribute</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.SingleParameter#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getSingleParameter()
+ * @model
+ * @generated
+ */
+public interface SingleParameter extends Parameter
+{
+  /**
+	 * 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.parameters.aPar.AParPackage#getSingleParameter_Attribute()
+	 * @model
+	 * @generated
+	 */
+  SAttribute getAttribute();
+
+  /**
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.SingleParameter#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
+	 */
+  void setAttribute(SAttribute value);
+
+  /**
+	 * Returns the value of the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Value</em>' containment 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>' containment reference.
+	 * @see #setValue(Value)
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getSingleParameter_Value()
+	 * @model containment="true"
+	 * @generated
+	 */
+  Value getValue();
+
+  /**
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.SingleParameter#getValue <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' containment reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+  void setValue(Value value);
+
+} // SingleParameter
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/SweepLink.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/SweepLink.java
new file mode 100644
index 0000000..e901c34
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/SweepLink.java
@@ -0,0 +1,44 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.eclipse.amp.amf.parameters.aPar;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Sweep Link</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.SweepLink#getParameters <em>Parameters</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getSweepLink()
+ * @model
+ * @generated
+ */
+public interface SweepLink extends Parameter
+{
+  /**
+	 * Returns the value of the '<em><b>Parameters</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.parameters.aPar.Parameter}.
+	 * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Parameters</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>Parameters</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getSweepLink_Parameters()
+	 * @model containment="true"
+	 * @generated
+	 */
+  EList<Parameter> getParameters();
+
+} // SweepLink
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/SweepParameter.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/SweepParameter.java
new file mode 100644
index 0000000..44d4b81
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/SweepParameter.java
@@ -0,0 +1,137 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.eclipse.amp.amf.parameters.aPar;
+
+import org.eclipse.amp.amf.abase.aBase.Value;
+
+import org.metaabm.SAttribute;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Sweep Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getAttribute <em>Attribute</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getStartValue <em>Start Value</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getEndValue <em>End Value</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getIncrement <em>Increment</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getSweepParameter()
+ * @model
+ * @generated
+ */
+public interface SweepParameter extends Parameter
+{
+  /**
+	 * 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.parameters.aPar.AParPackage#getSweepParameter_Attribute()
+	 * @model
+	 * @generated
+	 */
+  SAttribute getAttribute();
+
+  /**
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#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
+	 */
+  void setAttribute(SAttribute value);
+
+  /**
+	 * Returns the value of the '<em><b>Start Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Start Value</em>' containment reference isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+	 * @return the value of the '<em>Start Value</em>' containment reference.
+	 * @see #setStartValue(Value)
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getSweepParameter_StartValue()
+	 * @model containment="true"
+	 * @generated
+	 */
+  Value getStartValue();
+
+  /**
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getStartValue <em>Start Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Start Value</em>' containment reference.
+	 * @see #getStartValue()
+	 * @generated
+	 */
+  void setStartValue(Value value);
+
+  /**
+	 * Returns the value of the '<em><b>End Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>End Value</em>' containment reference isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+	 * @return the value of the '<em>End Value</em>' containment reference.
+	 * @see #setEndValue(Value)
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getSweepParameter_EndValue()
+	 * @model containment="true"
+	 * @generated
+	 */
+  Value getEndValue();
+
+  /**
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getEndValue <em>End Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>End Value</em>' containment reference.
+	 * @see #getEndValue()
+	 * @generated
+	 */
+  void setEndValue(Value value);
+
+  /**
+	 * Returns the value of the '<em><b>Increment</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+   * <p>
+   * If the meaning of the '<em>Increment</em>' containment reference isn't clear,
+   * there really should be more of a description here...
+   * </p>
+   * <!-- end-user-doc -->
+	 * @return the value of the '<em>Increment</em>' containment reference.
+	 * @see #setIncrement(Value)
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#getSweepParameter_Increment()
+	 * @model containment="true"
+	 * @generated
+	 */
+  Value getIncrement();
+
+  /**
+	 * Sets the value of the '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter#getIncrement <em>Increment</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Increment</em>' containment reference.
+	 * @see #getIncrement()
+	 * @generated
+	 */
+  void setIncrement(Value value);
+
+} // SweepParameter
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/AParFactoryImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/AParFactoryImpl.java
index 5023bff..d61245c 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/AParFactoryImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/AParFactoryImpl.java
@@ -24,122 +24,154 @@
 public class AParFactoryImpl extends EFactoryImpl implements AParFactory
 {
   /**
-   * Creates the default factory implementation.
-   * <!-- begin-user-doc -->
+	 * Creates the default factory implementation.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public static AParFactory init()
   {
-    try
-    {
-      AParFactory theAParFactory = (AParFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/amp/amf/parameters/APar"); 
-      if (theAParFactory != null)
-      {
-        return theAParFactory;
-      }
-    }
-    catch (Exception exception)
-    {
-      EcorePlugin.INSTANCE.log(exception);
-    }
-    return new AParFactoryImpl();
-  }
+		try {
+			AParFactory theAParFactory = (AParFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.eclipse.org/amp/amf/parameters/APar"); 
+			if (theAParFactory != null) {
+				return theAParFactory;
+			}
+		}
+		catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new AParFactoryImpl();
+	}
 
   /**
-   * Creates an instance of the factory.
-   * <!-- begin-user-doc -->
+	 * Creates an instance of the factory.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public AParFactoryImpl()
   {
-    super();
-  }
+		super();
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   @Override
   public EObject create(EClass eClass)
   {
-    switch (eClass.getClassifierID())
-    {
-      case AParPackage.MODEL: return createModel();
-      case AParPackage.IMPORT: return createImport();
-      case AParPackage.INCORPORATES: return createIncorporates();
-      case AParPackage.PARAMETER: return createParameter();
-      default:
-        throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
-    }
-  }
+		switch (eClass.getClassifierID()) {
+			case AParPackage.MODEL: return createModel();
+			case AParPackage.IMPORT: return createImport();
+			case AParPackage.INCORPORATES: return createIncorporates();
+			case AParPackage.PARAMETER: return createParameter();
+			case AParPackage.SINGLE_PARAMETER: return createSingleParameter();
+			case AParPackage.SWEEP_PARAMETER: return createSweepParameter();
+			case AParPackage.SWEEP_LINK: return createSweepLink();
+			default:
+				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+		}
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public Model createModel()
   {
-    ModelImpl model = new ModelImpl();
-    return model;
-  }
+		ModelImpl model = new ModelImpl();
+		return model;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public Import createImport()
   {
-    ImportImpl import_ = new ImportImpl();
-    return import_;
-  }
+		ImportImpl import_ = new ImportImpl();
+		return import_;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public Incorporates createIncorporates()
   {
-    IncorporatesImpl incorporates = new IncorporatesImpl();
-    return incorporates;
-  }
+		IncorporatesImpl incorporates = new IncorporatesImpl();
+		return incorporates;
+	}
 
   /**
-   * <!-- 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 SingleParameter createSingleParameter()
+  {
+		SingleParameterImpl singleParameter = new SingleParameterImpl();
+		return singleParameter;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public SweepParameter createSweepParameter()
+  {
+		SweepParameterImpl sweepParameter = new SweepParameterImpl();
+		return sweepParameter;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public SweepLink createSweepLink()
+  {
+		SweepLinkImpl sweepLink = new SweepLinkImpl();
+		return sweepLink;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
   public AParPackage getAParPackage()
   {
-    return (AParPackage)getEPackage();
-  }
+		return (AParPackage)getEPackage();
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @deprecated
-   * @generated
-   */
+	 * @deprecated
+	 * @generated
+	 */
   @Deprecated
   public static AParPackage getPackage()
   {
-    return AParPackage.eINSTANCE;
-  }
+		return AParPackage.eINSTANCE;
+	}
 
 } //AParFactoryImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/AParPackageImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/AParPackageImpl.java
index 868c551..a242d5e 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/AParPackageImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/AParPackageImpl.java
@@ -13,6 +13,9 @@
 import org.eclipse.amp.amf.parameters.aPar.Incorporates;
 import org.eclipse.amp.amf.parameters.aPar.Model;
 import org.eclipse.amp.amf.parameters.aPar.Parameter;
+import org.eclipse.amp.amf.parameters.aPar.SingleParameter;
+import org.eclipse.amp.amf.parameters.aPar.SweepLink;
+import org.eclipse.amp.amf.parameters.aPar.SweepParameter;
 
 import org.eclipse.emf.ecore.EAttribute;
 import org.eclipse.emf.ecore.EClass;
@@ -32,320 +35,446 @@
 public class AParPackageImpl extends EPackageImpl implements AParPackage
 {
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   private EClass modelEClass = null;
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   private EClass importEClass = null;
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   private EClass incorporatesEClass = null;
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   private EClass parameterEClass = 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 -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see org.eclipse.emf.ecore.EPackage.Registry
-   * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#eNS_URI
-   * @see #init()
-   * @generated
-   */
-  private AParPackageImpl()
-  {
-    super(eNS_URI, AParFactory.eINSTANCE);
-  }
+	 * @generated
+	 */
+  private EClass singleParameterEClass = null;
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
+  private EClass sweepParameterEClass = null;
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  private EClass sweepLinkEClass = 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 -->
+   * <!-- end-user-doc -->
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see org.eclipse.amp.amf.parameters.aPar.AParPackage#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
+  private AParPackageImpl()
+  {
+		super(eNS_URI, AParFactory.eINSTANCE);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @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 AParPackage#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 AParPackage#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 AParPackage init()
   {
-    if (isInited) return (AParPackage)EPackage.Registry.INSTANCE.getEPackage(AParPackage.eNS_URI);
+		if (isInited) return (AParPackage)EPackage.Registry.INSTANCE.getEPackage(AParPackage.eNS_URI);
 
-    // Obtain or create and register package
-    AParPackageImpl theAParPackage = (AParPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof AParPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new AParPackageImpl());
+		// Obtain or create and register package
+		AParPackageImpl theAParPackage = (AParPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof AParPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new AParPackageImpl());
 
-    isInited = true;
+		isInited = true;
 
-    // Initialize simple dependencies
-    MetaABMPackage.eINSTANCE.eClass();
-    ABasePackage.eINSTANCE.eClass();
+		// Initialize simple dependencies
+		MetaABMPackage.eINSTANCE.eClass();
+		ABasePackage.eINSTANCE.eClass();
 
-    // Create package meta-data objects
-    theAParPackage.createPackageContents();
+		// Create package meta-data objects
+		theAParPackage.createPackageContents();
 
-    // Initialize created meta-data
-    theAParPackage.initializePackageContents();
+		// Initialize created meta-data
+		theAParPackage.initializePackageContents();
 
-    // Mark meta-data to indicate it can't be changed
-    theAParPackage.freeze();
+		// Mark meta-data to indicate it can't be changed
+		theAParPackage.freeze();
 
   
-    // Update the registry and return the package
-    EPackage.Registry.INSTANCE.put(AParPackage.eNS_URI, theAParPackage);
-    return theAParPackage;
-  }
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(AParPackage.eNS_URI, theAParPackage);
+		return theAParPackage;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EClass getModel()
   {
-    return modelEClass;
-  }
+		return modelEClass;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EAttribute getModel_Name()
   {
-    return (EAttribute)modelEClass.getEStructuralFeatures().get(0);
-  }
+		return (EAttribute)modelEClass.getEStructuralFeatures().get(0);
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EReference getModel_Model()
   {
-    return (EReference)modelEClass.getEStructuralFeatures().get(1);
-  }
+		return (EReference)modelEClass.getEStructuralFeatures().get(1);
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EReference getModel_Incorporates()
   {
-    return (EReference)modelEClass.getEStructuralFeatures().get(2);
-  }
+		return (EReference)modelEClass.getEStructuralFeatures().get(2);
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EReference getModel_Parameters()
   {
-    return (EReference)modelEClass.getEStructuralFeatures().get(3);
-  }
+		return (EReference)modelEClass.getEStructuralFeatures().get(3);
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EClass getImport()
   {
-    return importEClass;
-  }
+		return importEClass;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EAttribute getImport_ImportURI()
   {
-    return (EAttribute)importEClass.getEStructuralFeatures().get(0);
-  }
+		return (EAttribute)importEClass.getEStructuralFeatures().get(0);
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EClass getIncorporates()
   {
-    return incorporatesEClass;
-  }
+		return incorporatesEClass;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EAttribute getIncorporates_ImportURI()
   {
-    return (EAttribute)incorporatesEClass.getEStructuralFeatures().get(0);
-  }
+		return (EAttribute)incorporatesEClass.getEStructuralFeatures().get(0);
+	}
 
   /**
-   * <!-- 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
-   */
-  public EReference getParameter_Attribute()
+	 * @generated
+	 */
+  public EClass getSingleParameter()
   {
-    return (EReference)parameterEClass.getEStructuralFeatures().get(0);
-  }
+		return singleParameterEClass;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
-  public EReference getParameter_Value()
+	 * @generated
+	 */
+  public EReference getSingleParameter_Attribute()
   {
-    return (EReference)parameterEClass.getEStructuralFeatures().get(1);
-  }
+		return (EReference)singleParameterEClass.getEStructuralFeatures().get(0);
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
+  public EReference getSingleParameter_Value()
+  {
+		return (EReference)singleParameterEClass.getEStructuralFeatures().get(1);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public EClass getSweepParameter()
+  {
+		return sweepParameterEClass;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public EReference getSweepParameter_Attribute()
+  {
+		return (EReference)sweepParameterEClass.getEStructuralFeatures().get(0);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public EReference getSweepParameter_StartValue()
+  {
+		return (EReference)sweepParameterEClass.getEStructuralFeatures().get(1);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public EReference getSweepParameter_EndValue()
+  {
+		return (EReference)sweepParameterEClass.getEStructuralFeatures().get(2);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public EReference getSweepParameter_Increment()
+  {
+		return (EReference)sweepParameterEClass.getEStructuralFeatures().get(3);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public EClass getSweepLink()
+  {
+		return sweepLinkEClass;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public EReference getSweepLink_Parameters()
+  {
+		return (EReference)sweepLinkEClass.getEStructuralFeatures().get(0);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
   public AParFactory getAParFactory()
   {
-    return (AParFactory)getEFactoryInstance();
-  }
+		return (AParFactory)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
-    modelEClass = createEClass(MODEL);
-    createEAttribute(modelEClass, MODEL__NAME);
-    createEReference(modelEClass, MODEL__MODEL);
-    createEReference(modelEClass, MODEL__INCORPORATES);
-    createEReference(modelEClass, MODEL__PARAMETERS);
+		// Create classes and their features
+		modelEClass = createEClass(MODEL);
+		createEAttribute(modelEClass, MODEL__NAME);
+		createEReference(modelEClass, MODEL__MODEL);
+		createEReference(modelEClass, MODEL__INCORPORATES);
+		createEReference(modelEClass, MODEL__PARAMETERS);
 
-    importEClass = createEClass(IMPORT);
-    createEAttribute(importEClass, IMPORT__IMPORT_URI);
+		importEClass = createEClass(IMPORT);
+		createEAttribute(importEClass, IMPORT__IMPORT_URI);
 
-    incorporatesEClass = createEClass(INCORPORATES);
-    createEAttribute(incorporatesEClass, INCORPORATES__IMPORT_URI);
+		incorporatesEClass = createEClass(INCORPORATES);
+		createEAttribute(incorporatesEClass, INCORPORATES__IMPORT_URI);
 
-    parameterEClass = createEClass(PARAMETER);
-    createEReference(parameterEClass, PARAMETER__ATTRIBUTE);
-    createEReference(parameterEClass, PARAMETER__VALUE);
-  }
+		parameterEClass = createEClass(PARAMETER);
+
+		singleParameterEClass = createEClass(SINGLE_PARAMETER);
+		createEReference(singleParameterEClass, SINGLE_PARAMETER__ATTRIBUTE);
+		createEReference(singleParameterEClass, SINGLE_PARAMETER__VALUE);
+
+		sweepParameterEClass = createEClass(SWEEP_PARAMETER);
+		createEReference(sweepParameterEClass, SWEEP_PARAMETER__ATTRIBUTE);
+		createEReference(sweepParameterEClass, SWEEP_PARAMETER__START_VALUE);
+		createEReference(sweepParameterEClass, SWEEP_PARAMETER__END_VALUE);
+		createEReference(sweepParameterEClass, SWEEP_PARAMETER__INCREMENT);
+
+		sweepLinkEClass = createEClass(SWEEP_LINK);
+		createEReference(sweepLinkEClass, SWEEP_LINK__PARAMETERS);
+	}
 
   /**
-   * <!-- 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);
-    ABasePackage theABasePackage = (ABasePackage)EPackage.Registry.INSTANCE.getEPackage(ABasePackage.eNS_URI);
+		// Obtain other dependent packages
+		MetaABMPackage theMetaABMPackage = (MetaABMPackage)EPackage.Registry.INSTANCE.getEPackage(MetaABMPackage.eNS_URI);
+		ABasePackage theABasePackage = (ABasePackage)EPackage.Registry.INSTANCE.getEPackage(ABasePackage.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
+		singleParameterEClass.getESuperTypes().add(this.getParameter());
+		sweepParameterEClass.getESuperTypes().add(this.getParameter());
+		sweepLinkEClass.getESuperTypes().add(this.getParameter());
 
-    // Initialize classes and features; add operations and parameters
-    initEClass(modelEClass, Model.class, "Model", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-    initEAttribute(getModel_Name(), ecorePackage.getEString(), "name", null, 0, 1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-    initEReference(getModel_Model(), this.getImport(), null, "model", null, 0, 1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-    initEReference(getModel_Incorporates(), this.getIncorporates(), null, "incorporates", null, 0, -1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-    initEReference(getModel_Parameters(), this.getParameter(), null, "parameters", null, 0, -1, Model.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(modelEClass, Model.class, "Model", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getModel_Name(), ecorePackage.getEString(), "name", null, 0, 1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getModel_Model(), this.getImport(), null, "model", null, 0, 1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getModel_Incorporates(), this.getIncorporates(), null, "incorporates", null, 0, -1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getModel_Parameters(), this.getParameter(), null, "parameters", null, 0, -1, Model.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-    initEClass(importEClass, Import.class, "Import", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-    initEAttribute(getImport_ImportURI(), ecorePackage.getEString(), "importURI", null, 0, 1, Import.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEClass(importEClass, Import.class, "Import", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getImport_ImportURI(), ecorePackage.getEString(), "importURI", null, 0, 1, Import.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-    initEClass(incorporatesEClass, Incorporates.class, "Incorporates", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-    initEAttribute(getIncorporates_ImportURI(), ecorePackage.getEString(), "importURI", null, 0, 1, Incorporates.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEClass(incorporatesEClass, Incorporates.class, "Incorporates", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getIncorporates_ImportURI(), ecorePackage.getEString(), "importURI", null, 0, 1, Incorporates.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);
-    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);
-    initEReference(getParameter_Value(), theABasePackage.getValue(), null, "value", null, 0, 1, Parameter.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);
 
-    // Create resource
-    createResource(eNS_URI);
-  }
+		initEClass(singleParameterEClass, SingleParameter.class, "SingleParameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSingleParameter_Attribute(), theMetaABMPackage.getSAttribute(), null, "attribute", null, 0, 1, SingleParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSingleParameter_Value(), theABasePackage.getValue(), null, "value", null, 0, 1, SingleParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(sweepParameterEClass, SweepParameter.class, "SweepParameter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSweepParameter_Attribute(), theMetaABMPackage.getSAttribute(), null, "attribute", null, 0, 1, SweepParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSweepParameter_StartValue(), theABasePackage.getValue(), null, "startValue", null, 0, 1, SweepParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSweepParameter_EndValue(), theABasePackage.getValue(), null, "endValue", null, 0, 1, SweepParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSweepParameter_Increment(), theABasePackage.getValue(), null, "increment", null, 0, 1, SweepParameter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(sweepLinkEClass, SweepLink.class, "SweepLink", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSweepLink_Parameters(), this.getParameter(), null, "parameters", null, 0, -1, SweepLink.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		// Create resource
+		createResource(eNS_URI);
+	}
 
 } //AParPackageImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ImportImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ImportImpl.java
index d9bd48a..a484524 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ImportImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ImportImpl.java
@@ -31,150 +31,146 @@
 public class ImportImpl extends MinimalEObjectImpl.Container implements Import
 {
   /**
-   * The default value of the '{@link #getImportURI() <em>Import URI</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getImportURI() <em>Import URI</em>}' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getImportURI()
-   * @generated
-   * @ordered
-   */
+	 * @see #getImportURI()
+	 * @generated
+	 * @ordered
+	 */
   protected static final String IMPORT_URI_EDEFAULT = null;
 
   /**
-   * The cached value of the '{@link #getImportURI() <em>Import URI</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getImportURI() <em>Import URI</em>}' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getImportURI()
-   * @generated
-   * @ordered
-   */
+	 * @see #getImportURI()
+	 * @generated
+	 * @ordered
+	 */
   protected String importURI = IMPORT_URI_EDEFAULT;
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected ImportImpl()
   {
-    super();
-  }
+		super();
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   @Override
   protected EClass eStaticClass()
   {
-    return AParPackage.Literals.IMPORT;
-  }
+		return AParPackage.Literals.IMPORT;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public String getImportURI()
   {
-    return importURI;
-  }
+		return importURI;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public void setImportURI(String newImportURI)
   {
-    String oldImportURI = importURI;
-    importURI = newImportURI;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.IMPORT__IMPORT_URI, oldImportURI, importURI));
-  }
+		String oldImportURI = importURI;
+		importURI = newImportURI;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.IMPORT__IMPORT_URI, oldImportURI, importURI));
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   @Override
   public Object eGet(int featureID, boolean resolve, boolean coreType)
   {
-    switch (featureID)
-    {
-      case AParPackage.IMPORT__IMPORT_URI:
-        return getImportURI();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
+		switch (featureID) {
+			case AParPackage.IMPORT__IMPORT_URI:
+				return getImportURI();
+		}
+		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 AParPackage.IMPORT__IMPORT_URI:
-        setImportURI((String)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
+		switch (featureID) {
+			case AParPackage.IMPORT__IMPORT_URI:
+				setImportURI((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 AParPackage.IMPORT__IMPORT_URI:
-        setImportURI(IMPORT_URI_EDEFAULT);
-        return;
-    }
-    super.eUnset(featureID);
-  }
+		switch (featureID) {
+			case AParPackage.IMPORT__IMPORT_URI:
+				setImportURI(IMPORT_URI_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 AParPackage.IMPORT__IMPORT_URI:
-        return IMPORT_URI_EDEFAULT == null ? importURI != null : !IMPORT_URI_EDEFAULT.equals(importURI);
-    }
-    return super.eIsSet(featureID);
-  }
+		switch (featureID) {
+			case AParPackage.IMPORT__IMPORT_URI:
+				return IMPORT_URI_EDEFAULT == null ? importURI != null : !IMPORT_URI_EDEFAULT.equals(importURI);
+		}
+		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(" (importURI: ");
-    result.append(importURI);
-    result.append(')');
-    return result.toString();
-  }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (importURI: ");
+		result.append(importURI);
+		result.append(')');
+		return result.toString();
+	}
 
 } //ImportImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/IncorporatesImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/IncorporatesImpl.java
index 9797184..01f4650 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/IncorporatesImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/IncorporatesImpl.java
@@ -31,150 +31,146 @@
 public class IncorporatesImpl extends MinimalEObjectImpl.Container implements Incorporates
 {
   /**
-   * The default value of the '{@link #getImportURI() <em>Import URI</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getImportURI() <em>Import URI</em>}' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getImportURI()
-   * @generated
-   * @ordered
-   */
+	 * @see #getImportURI()
+	 * @generated
+	 * @ordered
+	 */
   protected static final String IMPORT_URI_EDEFAULT = null;
 
   /**
-   * The cached value of the '{@link #getImportURI() <em>Import URI</em>}' attribute.
-   * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getImportURI() <em>Import URI</em>}' attribute.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getImportURI()
-   * @generated
-   * @ordered
-   */
+	 * @see #getImportURI()
+	 * @generated
+	 * @ordered
+	 */
   protected String importURI = IMPORT_URI_EDEFAULT;
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected IncorporatesImpl()
   {
-    super();
-  }
+		super();
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   @Override
   protected EClass eStaticClass()
   {
-    return AParPackage.Literals.INCORPORATES;
-  }
+		return AParPackage.Literals.INCORPORATES;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public String getImportURI()
   {
-    return importURI;
-  }
+		return importURI;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public void setImportURI(String newImportURI)
   {
-    String oldImportURI = importURI;
-    importURI = newImportURI;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.INCORPORATES__IMPORT_URI, oldImportURI, importURI));
-  }
+		String oldImportURI = importURI;
+		importURI = newImportURI;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.INCORPORATES__IMPORT_URI, oldImportURI, importURI));
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   @Override
   public Object eGet(int featureID, boolean resolve, boolean coreType)
   {
-    switch (featureID)
-    {
-      case AParPackage.INCORPORATES__IMPORT_URI:
-        return getImportURI();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
+		switch (featureID) {
+			case AParPackage.INCORPORATES__IMPORT_URI:
+				return getImportURI();
+		}
+		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 AParPackage.INCORPORATES__IMPORT_URI:
-        setImportURI((String)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
+		switch (featureID) {
+			case AParPackage.INCORPORATES__IMPORT_URI:
+				setImportURI((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 AParPackage.INCORPORATES__IMPORT_URI:
-        setImportURI(IMPORT_URI_EDEFAULT);
-        return;
-    }
-    super.eUnset(featureID);
-  }
+		switch (featureID) {
+			case AParPackage.INCORPORATES__IMPORT_URI:
+				setImportURI(IMPORT_URI_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 AParPackage.INCORPORATES__IMPORT_URI:
-        return IMPORT_URI_EDEFAULT == null ? importURI != null : !IMPORT_URI_EDEFAULT.equals(importURI);
-    }
-    return super.eIsSet(featureID);
-  }
+		switch (featureID) {
+			case AParPackage.INCORPORATES__IMPORT_URI:
+				return IMPORT_URI_EDEFAULT == null ? importURI != null : !IMPORT_URI_EDEFAULT.equals(importURI);
+		}
+		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(" (importURI: ");
-    result.append(importURI);
-    result.append(')');
-    return result.toString();
-  }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (importURI: ");
+		result.append(importURI);
+		result.append(')');
+		return result.toString();
+	}
 
 } //IncorporatesImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ModelImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ModelImpl.java
index cf3df4b..607b53f 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ModelImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ModelImpl.java
@@ -46,309 +46,300 @@
 public class ModelImpl extends MinimalEObjectImpl.Container implements Model
 {
   /**
-   * 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 #getModel() <em>Model</em>}' containment reference.
-   * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getModel() <em>Model</em>}' containment reference.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getModel()
-   * @generated
-   * @ordered
-   */
+	 * @see #getModel()
+	 * @generated
+	 * @ordered
+	 */
   protected Import model;
 
   /**
-   * The cached value of the '{@link #getIncorporates() <em>Incorporates</em>}' containment reference list.
-   * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getIncorporates() <em>Incorporates</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getIncorporates()
-   * @generated
-   * @ordered
-   */
+	 * @see #getIncorporates()
+	 * @generated
+	 * @ordered
+	 */
   protected EList<Incorporates> incorporates;
 
   /**
-   * The cached value of the '{@link #getParameters() <em>Parameters</em>}' containment reference list.
-   * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getParameters() <em>Parameters</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getParameters()
-   * @generated
-   * @ordered
-   */
+	 * @see #getParameters()
+	 * @generated
+	 * @ordered
+	 */
   protected EList<Parameter> parameters;
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected ModelImpl()
   {
-    super();
-  }
+		super();
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   @Override
   protected EClass eStaticClass()
   {
-    return AParPackage.Literals.MODEL;
-  }
+		return AParPackage.Literals.MODEL;
+	}
 
   /**
-   * <!-- 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, AParPackage.MODEL__NAME, oldName, name));
-  }
+		String oldName = name;
+		name = newName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.MODEL__NAME, oldName, name));
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public Import getModel()
   {
-    return model;
-  }
+		return model;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public NotificationChain basicSetModel(Import newModel, NotificationChain msgs)
   {
-    Import oldModel = model;
-    model = newModel;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AParPackage.MODEL__MODEL, oldModel, newModel);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
+		Import oldModel = model;
+		model = newModel;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AParPackage.MODEL__MODEL, oldModel, newModel);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public void setModel(Import newModel)
   {
-    if (newModel != model)
-    {
-      NotificationChain msgs = null;
-      if (model != null)
-        msgs = ((InternalEObject)model).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AParPackage.MODEL__MODEL, null, msgs);
-      if (newModel != null)
-        msgs = ((InternalEObject)newModel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AParPackage.MODEL__MODEL, null, msgs);
-      msgs = basicSetModel(newModel, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.MODEL__MODEL, newModel, newModel));
-  }
+		if (newModel != model) {
+			NotificationChain msgs = null;
+			if (model != null)
+				msgs = ((InternalEObject)model).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AParPackage.MODEL__MODEL, null, msgs);
+			if (newModel != null)
+				msgs = ((InternalEObject)newModel).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AParPackage.MODEL__MODEL, null, msgs);
+			msgs = basicSetModel(newModel, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.MODEL__MODEL, newModel, newModel));
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EList<Incorporates> getIncorporates()
   {
-    if (incorporates == null)
-    {
-      incorporates = new EObjectContainmentEList<Incorporates>(Incorporates.class, this, AParPackage.MODEL__INCORPORATES);
-    }
-    return incorporates;
-  }
+		if (incorporates == null) {
+			incorporates = new EObjectContainmentEList<Incorporates>(Incorporates.class, this, AParPackage.MODEL__INCORPORATES);
+		}
+		return incorporates;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   public EList<Parameter> getParameters()
   {
-    if (parameters == null)
-    {
-      parameters = new EObjectContainmentEList<Parameter>(Parameter.class, this, AParPackage.MODEL__PARAMETERS);
-    }
-    return parameters;
-  }
+		if (parameters == null) {
+			parameters = new EObjectContainmentEList<Parameter>(Parameter.class, this, AParPackage.MODEL__PARAMETERS);
+		}
+		return parameters;
+	}
 
   /**
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   @Override
   public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
   {
-    switch (featureID)
-    {
-      case AParPackage.MODEL__MODEL:
-        return basicSetModel(null, msgs);
-      case AParPackage.MODEL__INCORPORATES:
-        return ((InternalEList<?>)getIncorporates()).basicRemove(otherEnd, msgs);
-      case AParPackage.MODEL__PARAMETERS:
-        return ((InternalEList<?>)getParameters()).basicRemove(otherEnd, msgs);
-    }
-    return super.eInverseRemove(otherEnd, featureID, msgs);
-  }
+		switch (featureID) {
+			case AParPackage.MODEL__MODEL:
+				return basicSetModel(null, msgs);
+			case AParPackage.MODEL__INCORPORATES:
+				return ((InternalEList<?>)getIncorporates()).basicRemove(otherEnd, msgs);
+			case AParPackage.MODEL__PARAMETERS:
+				return ((InternalEList<?>)getParameters()).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 AParPackage.MODEL__NAME:
-        return getName();
-      case AParPackage.MODEL__MODEL:
-        return getModel();
-      case AParPackage.MODEL__INCORPORATES:
-        return getIncorporates();
-      case AParPackage.MODEL__PARAMETERS:
-        return getParameters();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
+		switch (featureID) {
+			case AParPackage.MODEL__NAME:
+				return getName();
+			case AParPackage.MODEL__MODEL:
+				return getModel();
+			case AParPackage.MODEL__INCORPORATES:
+				return getIncorporates();
+			case AParPackage.MODEL__PARAMETERS:
+				return getParameters();
+		}
+		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 AParPackage.MODEL__NAME:
-        setName((String)newValue);
-        return;
-      case AParPackage.MODEL__MODEL:
-        setModel((Import)newValue);
-        return;
-      case AParPackage.MODEL__INCORPORATES:
-        getIncorporates().clear();
-        getIncorporates().addAll((Collection<? extends Incorporates>)newValue);
-        return;
-      case AParPackage.MODEL__PARAMETERS:
-        getParameters().clear();
-        getParameters().addAll((Collection<? extends Parameter>)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
+		switch (featureID) {
+			case AParPackage.MODEL__NAME:
+				setName((String)newValue);
+				return;
+			case AParPackage.MODEL__MODEL:
+				setModel((Import)newValue);
+				return;
+			case AParPackage.MODEL__INCORPORATES:
+				getIncorporates().clear();
+				getIncorporates().addAll((Collection<? extends Incorporates>)newValue);
+				return;
+			case AParPackage.MODEL__PARAMETERS:
+				getParameters().clear();
+				getParameters().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 AParPackage.MODEL__NAME:
-        setName(NAME_EDEFAULT);
-        return;
-      case AParPackage.MODEL__MODEL:
-        setModel((Import)null);
-        return;
-      case AParPackage.MODEL__INCORPORATES:
-        getIncorporates().clear();
-        return;
-      case AParPackage.MODEL__PARAMETERS:
-        getParameters().clear();
-        return;
-    }
-    super.eUnset(featureID);
-  }
+		switch (featureID) {
+			case AParPackage.MODEL__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case AParPackage.MODEL__MODEL:
+				setModel((Import)null);
+				return;
+			case AParPackage.MODEL__INCORPORATES:
+				getIncorporates().clear();
+				return;
+			case AParPackage.MODEL__PARAMETERS:
+				getParameters().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 AParPackage.MODEL__NAME:
-        return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-      case AParPackage.MODEL__MODEL:
-        return model != null;
-      case AParPackage.MODEL__INCORPORATES:
-        return incorporates != null && !incorporates.isEmpty();
-      case AParPackage.MODEL__PARAMETERS:
-        return parameters != null && !parameters.isEmpty();
-    }
-    return super.eIsSet(featureID);
-  }
+		switch (featureID) {
+			case AParPackage.MODEL__NAME:
+				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+			case AParPackage.MODEL__MODEL:
+				return model != null;
+			case AParPackage.MODEL__INCORPORATES:
+				return incorporates != null && !incorporates.isEmpty();
+			case AParPackage.MODEL__PARAMETERS:
+				return parameters != null && !parameters.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(" (name: ");
-    result.append(name);
-    result.append(')');
-    return result.toString();
-  }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (name: ");
+		result.append(name);
+		result.append(')');
+		return result.toString();
+	}
 
 } //ModelImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ParameterImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ParameterImpl.java
index 77e7a25..09b21f6 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ParameterImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/ParameterImpl.java
@@ -5,32 +5,18 @@
  */
 package org.eclipse.amp.amf.parameters.aPar.impl;
 
-import org.eclipse.amp.amf.abase.aBase.Value;
-
 import org.eclipse.amp.amf.parameters.aPar.AParPackage;
 import org.eclipse.amp.amf.parameters.aPar.Parameter;
 
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-
 import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.InternalEObject;
 
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
 import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
 
-import org.metaabm.SAttribute;
-
 /**
  * <!-- begin-user-doc -->
  * An implementation of the model object '<em><b>Parameter</b></em>'.
  * <!-- end-user-doc -->
  * <p>
- * The following features are implemented:
- * <ul>
- *   <li>{@link org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl#getAttribute <em>Attribute</em>}</li>
- *   <li>{@link org.eclipse.amp.amf.parameters.aPar.impl.ParameterImpl#getValue <em>Value</em>}</li>
- * </ul>
  * </p>
  *
  * @generated
@@ -38,228 +24,24 @@
 public class ParameterImpl extends MinimalEObjectImpl.Container implements Parameter
 {
   /**
-   * The cached value of the '{@link #getAttribute() <em>Attribute</em>}' reference.
-   * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @see #getAttribute()
-   * @generated
-   * @ordered
-   */
-  protected SAttribute attribute;
-
-  /**
-   * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @see #getValue()
-   * @generated
-   * @ordered
-   */
-  protected Value value;
-
-  /**
-   * <!-- 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 AParPackage.Literals.PARAMETER;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @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, AParPackage.PARAMETER__ATTRIBUTE, oldAttribute, attribute));
-      }
-    }
-    return attribute;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public SAttribute basicGetAttribute()
-  {
-    return attribute;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setAttribute(SAttribute newAttribute)
-  {
-    SAttribute oldAttribute = attribute;
-    attribute = newAttribute;
-    if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.PARAMETER__ATTRIBUTE, oldAttribute, attribute));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public Value getValue()
-  {
-    return value;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public NotificationChain basicSetValue(Value newValue, NotificationChain msgs)
-  {
-    Value oldValue = value;
-    value = newValue;
-    if (eNotificationRequired())
-    {
-      ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AParPackage.PARAMETER__VALUE, oldValue, newValue);
-      if (msgs == null) msgs = notification; else msgs.add(notification);
-    }
-    return msgs;
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  public void setValue(Value newValue)
-  {
-    if (newValue != value)
-    {
-      NotificationChain msgs = null;
-      if (value != null)
-        msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AParPackage.PARAMETER__VALUE, null, msgs);
-      if (newValue != null)
-        msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AParPackage.PARAMETER__VALUE, null, msgs);
-      msgs = basicSetValue(newValue, msgs);
-      if (msgs != null) msgs.dispatch();
-    }
-    else if (eNotificationRequired())
-      eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.PARAMETER__VALUE, newValue, newValue));
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
-  {
-    switch (featureID)
-    {
-      case AParPackage.PARAMETER__VALUE:
-        return basicSetValue(null, msgs);
-    }
-    return super.eInverseRemove(otherEnd, featureID, msgs);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public Object eGet(int featureID, boolean resolve, boolean coreType)
-  {
-    switch (featureID)
-    {
-      case AParPackage.PARAMETER__ATTRIBUTE:
-        if (resolve) return getAttribute();
-        return basicGetAttribute();
-      case AParPackage.PARAMETER__VALUE:
-        return getValue();
-    }
-    return super.eGet(featureID, resolve, coreType);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eSet(int featureID, Object newValue)
-  {
-    switch (featureID)
-    {
-      case AParPackage.PARAMETER__ATTRIBUTE:
-        setAttribute((SAttribute)newValue);
-        return;
-      case AParPackage.PARAMETER__VALUE:
-        setValue((Value)newValue);
-        return;
-    }
-    super.eSet(featureID, newValue);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public void eUnset(int featureID)
-  {
-    switch (featureID)
-    {
-      case AParPackage.PARAMETER__ATTRIBUTE:
-        setAttribute((SAttribute)null);
-        return;
-      case AParPackage.PARAMETER__VALUE:
-        setValue((Value)null);
-        return;
-    }
-    super.eUnset(featureID);
-  }
-
-  /**
-   * <!-- begin-user-doc -->
-   * <!-- end-user-doc -->
-   * @generated
-   */
-  @Override
-  public boolean eIsSet(int featureID)
-  {
-    switch (featureID)
-    {
-      case AParPackage.PARAMETER__ATTRIBUTE:
-        return attribute != null;
-      case AParPackage.PARAMETER__VALUE:
-        return value != null;
-    }
-    return super.eIsSet(featureID);
-  }
+		return AParPackage.Literals.PARAMETER;
+	}
 
 } //ParameterImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/SingleParameterImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/SingleParameterImpl.java
new file mode 100644
index 0000000..b2d03ed
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/SingleParameterImpl.java
@@ -0,0 +1,255 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.eclipse.amp.amf.parameters.aPar.impl;
+
+import org.eclipse.amp.amf.abase.aBase.Value;
+
+import org.eclipse.amp.amf.parameters.aPar.AParPackage;
+import org.eclipse.amp.amf.parameters.aPar.SingleParameter;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.metaabm.SAttribute;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Single Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.impl.SingleParameterImpl#getAttribute <em>Attribute</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.impl.SingleParameterImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SingleParameterImpl extends ParameterImpl implements SingleParameter
+{
+  /**
+	 * The cached value of the '{@link #getAttribute() <em>Attribute</em>}' reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see #getAttribute()
+	 * @generated
+	 * @ordered
+	 */
+  protected SAttribute attribute;
+
+  /**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+  protected Value value;
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  protected SingleParameterImpl()
+  {
+		super();
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  protected EClass eStaticClass()
+  {
+		return AParPackage.Literals.SINGLE_PARAMETER;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @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, AParPackage.SINGLE_PARAMETER__ATTRIBUTE, oldAttribute, attribute));
+			}
+		}
+		return attribute;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public SAttribute basicGetAttribute()
+  {
+		return attribute;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public void setAttribute(SAttribute newAttribute)
+  {
+		SAttribute oldAttribute = attribute;
+		attribute = newAttribute;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.SINGLE_PARAMETER__ATTRIBUTE, oldAttribute, attribute));
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public Value getValue()
+  {
+		return value;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public NotificationChain basicSetValue(Value newValue, NotificationChain msgs)
+  {
+		Value oldValue = value;
+		value = newValue;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AParPackage.SINGLE_PARAMETER__VALUE, oldValue, newValue);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public void setValue(Value newValue)
+  {
+		if (newValue != value) {
+			NotificationChain msgs = null;
+			if (value != null)
+				msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AParPackage.SINGLE_PARAMETER__VALUE, null, msgs);
+			if (newValue != null)
+				msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AParPackage.SINGLE_PARAMETER__VALUE, null, msgs);
+			msgs = basicSetValue(newValue, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.SINGLE_PARAMETER__VALUE, newValue, newValue));
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+		switch (featureID) {
+			case AParPackage.SINGLE_PARAMETER__VALUE:
+				return basicSetValue(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public Object eGet(int featureID, boolean resolve, boolean coreType)
+  {
+		switch (featureID) {
+			case AParPackage.SINGLE_PARAMETER__ATTRIBUTE:
+				if (resolve) return getAttribute();
+				return basicGetAttribute();
+			case AParPackage.SINGLE_PARAMETER__VALUE:
+				return getValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+		switch (featureID) {
+			case AParPackage.SINGLE_PARAMETER__ATTRIBUTE:
+				setAttribute((SAttribute)newValue);
+				return;
+			case AParPackage.SINGLE_PARAMETER__VALUE:
+				setValue((Value)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public void eUnset(int featureID)
+  {
+		switch (featureID) {
+			case AParPackage.SINGLE_PARAMETER__ATTRIBUTE:
+				setAttribute((SAttribute)null);
+				return;
+			case AParPackage.SINGLE_PARAMETER__VALUE:
+				setValue((Value)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+		switch (featureID) {
+			case AParPackage.SINGLE_PARAMETER__ATTRIBUTE:
+				return attribute != null;
+			case AParPackage.SINGLE_PARAMETER__VALUE:
+				return value != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //SingleParameterImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/SweepLinkImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/SweepLinkImpl.java
new file mode 100644
index 0000000..2f9774c
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/SweepLinkImpl.java
@@ -0,0 +1,162 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.eclipse.amp.amf.parameters.aPar.impl;
+
+import java.util.Collection;
+
+import org.eclipse.amp.amf.parameters.aPar.AParPackage;
+import org.eclipse.amp.amf.parameters.aPar.Parameter;
+import org.eclipse.amp.amf.parameters.aPar.SweepLink;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Sweep Link</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.impl.SweepLinkImpl#getParameters <em>Parameters</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SweepLinkImpl extends ParameterImpl implements SweepLink
+{
+  /**
+	 * The cached value of the '{@link #getParameters() <em>Parameters</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see #getParameters()
+	 * @generated
+	 * @ordered
+	 */
+  protected EList<Parameter> parameters;
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  protected SweepLinkImpl()
+  {
+		super();
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  protected EClass eStaticClass()
+  {
+		return AParPackage.Literals.SWEEP_LINK;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public EList<Parameter> getParameters()
+  {
+		if (parameters == null) {
+			parameters = new EObjectContainmentEList<Parameter>(Parameter.class, this, AParPackage.SWEEP_LINK__PARAMETERS);
+		}
+		return parameters;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_LINK__PARAMETERS:
+				return ((InternalEList<?>)getParameters()).basicRemove(otherEnd, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public Object eGet(int featureID, boolean resolve, boolean coreType)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_LINK__PARAMETERS:
+				return getParameters();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @SuppressWarnings("unchecked")
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_LINK__PARAMETERS:
+				getParameters().clear();
+				getParameters().addAll((Collection<? extends Parameter>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public void eUnset(int featureID)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_LINK__PARAMETERS:
+				getParameters().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_LINK__PARAMETERS:
+				return parameters != null && !parameters.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //SweepLinkImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/SweepParameterImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/SweepParameterImpl.java
new file mode 100644
index 0000000..ab36ea2
--- /dev/null
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/impl/SweepParameterImpl.java
@@ -0,0 +1,393 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ */
+package org.eclipse.amp.amf.parameters.aPar.impl;
+
+import org.eclipse.amp.amf.abase.aBase.Value;
+
+import org.eclipse.amp.amf.parameters.aPar.AParPackage;
+import org.eclipse.amp.amf.parameters.aPar.SweepParameter;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.metaabm.SAttribute;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Sweep Parameter</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.impl.SweepParameterImpl#getAttribute <em>Attribute</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.impl.SweepParameterImpl#getStartValue <em>Start Value</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.impl.SweepParameterImpl#getEndValue <em>End Value</em>}</li>
+ *   <li>{@link org.eclipse.amp.amf.parameters.aPar.impl.SweepParameterImpl#getIncrement <em>Increment</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SweepParameterImpl extends ParameterImpl implements SweepParameter
+{
+  /**
+	 * The cached value of the '{@link #getAttribute() <em>Attribute</em>}' reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see #getAttribute()
+	 * @generated
+	 * @ordered
+	 */
+  protected SAttribute attribute;
+
+  /**
+	 * The cached value of the '{@link #getStartValue() <em>Start Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see #getStartValue()
+	 * @generated
+	 * @ordered
+	 */
+  protected Value startValue;
+
+  /**
+	 * The cached value of the '{@link #getEndValue() <em>End Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see #getEndValue()
+	 * @generated
+	 * @ordered
+	 */
+  protected Value endValue;
+
+  /**
+	 * The cached value of the '{@link #getIncrement() <em>Increment</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @see #getIncrement()
+	 * @generated
+	 * @ordered
+	 */
+  protected Value increment;
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  protected SweepParameterImpl()
+  {
+		super();
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  protected EClass eStaticClass()
+  {
+		return AParPackage.Literals.SWEEP_PARAMETER;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @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, AParPackage.SWEEP_PARAMETER__ATTRIBUTE, oldAttribute, attribute));
+			}
+		}
+		return attribute;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public SAttribute basicGetAttribute()
+  {
+		return attribute;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public void setAttribute(SAttribute newAttribute)
+  {
+		SAttribute oldAttribute = attribute;
+		attribute = newAttribute;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.SWEEP_PARAMETER__ATTRIBUTE, oldAttribute, attribute));
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public Value getStartValue()
+  {
+		return startValue;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public NotificationChain basicSetStartValue(Value newStartValue, NotificationChain msgs)
+  {
+		Value oldStartValue = startValue;
+		startValue = newStartValue;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AParPackage.SWEEP_PARAMETER__START_VALUE, oldStartValue, newStartValue);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public void setStartValue(Value newStartValue)
+  {
+		if (newStartValue != startValue) {
+			NotificationChain msgs = null;
+			if (startValue != null)
+				msgs = ((InternalEObject)startValue).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AParPackage.SWEEP_PARAMETER__START_VALUE, null, msgs);
+			if (newStartValue != null)
+				msgs = ((InternalEObject)newStartValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AParPackage.SWEEP_PARAMETER__START_VALUE, null, msgs);
+			msgs = basicSetStartValue(newStartValue, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.SWEEP_PARAMETER__START_VALUE, newStartValue, newStartValue));
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public Value getEndValue()
+  {
+		return endValue;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public NotificationChain basicSetEndValue(Value newEndValue, NotificationChain msgs)
+  {
+		Value oldEndValue = endValue;
+		endValue = newEndValue;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AParPackage.SWEEP_PARAMETER__END_VALUE, oldEndValue, newEndValue);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public void setEndValue(Value newEndValue)
+  {
+		if (newEndValue != endValue) {
+			NotificationChain msgs = null;
+			if (endValue != null)
+				msgs = ((InternalEObject)endValue).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AParPackage.SWEEP_PARAMETER__END_VALUE, null, msgs);
+			if (newEndValue != null)
+				msgs = ((InternalEObject)newEndValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AParPackage.SWEEP_PARAMETER__END_VALUE, null, msgs);
+			msgs = basicSetEndValue(newEndValue, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.SWEEP_PARAMETER__END_VALUE, newEndValue, newEndValue));
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public Value getIncrement()
+  {
+		return increment;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public NotificationChain basicSetIncrement(Value newIncrement, NotificationChain msgs)
+  {
+		Value oldIncrement = increment;
+		increment = newIncrement;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AParPackage.SWEEP_PARAMETER__INCREMENT, oldIncrement, newIncrement);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  public void setIncrement(Value newIncrement)
+  {
+		if (newIncrement != increment) {
+			NotificationChain msgs = null;
+			if (increment != null)
+				msgs = ((InternalEObject)increment).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AParPackage.SWEEP_PARAMETER__INCREMENT, null, msgs);
+			if (newIncrement != null)
+				msgs = ((InternalEObject)newIncrement).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AParPackage.SWEEP_PARAMETER__INCREMENT, null, msgs);
+			msgs = basicSetIncrement(newIncrement, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AParPackage.SWEEP_PARAMETER__INCREMENT, newIncrement, newIncrement));
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_PARAMETER__START_VALUE:
+				return basicSetStartValue(null, msgs);
+			case AParPackage.SWEEP_PARAMETER__END_VALUE:
+				return basicSetEndValue(null, msgs);
+			case AParPackage.SWEEP_PARAMETER__INCREMENT:
+				return basicSetIncrement(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public Object eGet(int featureID, boolean resolve, boolean coreType)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_PARAMETER__ATTRIBUTE:
+				if (resolve) return getAttribute();
+				return basicGetAttribute();
+			case AParPackage.SWEEP_PARAMETER__START_VALUE:
+				return getStartValue();
+			case AParPackage.SWEEP_PARAMETER__END_VALUE:
+				return getEndValue();
+			case AParPackage.SWEEP_PARAMETER__INCREMENT:
+				return getIncrement();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public void eSet(int featureID, Object newValue)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_PARAMETER__ATTRIBUTE:
+				setAttribute((SAttribute)newValue);
+				return;
+			case AParPackage.SWEEP_PARAMETER__START_VALUE:
+				setStartValue((Value)newValue);
+				return;
+			case AParPackage.SWEEP_PARAMETER__END_VALUE:
+				setEndValue((Value)newValue);
+				return;
+			case AParPackage.SWEEP_PARAMETER__INCREMENT:
+				setIncrement((Value)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public void eUnset(int featureID)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_PARAMETER__ATTRIBUTE:
+				setAttribute((SAttribute)null);
+				return;
+			case AParPackage.SWEEP_PARAMETER__START_VALUE:
+				setStartValue((Value)null);
+				return;
+			case AParPackage.SWEEP_PARAMETER__END_VALUE:
+				setEndValue((Value)null);
+				return;
+			case AParPackage.SWEEP_PARAMETER__INCREMENT:
+				setIncrement((Value)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+  /**
+	 * <!-- begin-user-doc -->
+   * <!-- end-user-doc -->
+	 * @generated
+	 */
+  @Override
+  public boolean eIsSet(int featureID)
+  {
+		switch (featureID) {
+			case AParPackage.SWEEP_PARAMETER__ATTRIBUTE:
+				return attribute != null;
+			case AParPackage.SWEEP_PARAMETER__START_VALUE:
+				return startValue != null;
+			case AParPackage.SWEEP_PARAMETER__END_VALUE:
+				return endValue != null;
+			case AParPackage.SWEEP_PARAMETER__INCREMENT:
+				return increment != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //SweepParameterImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/util/AParAdapterFactory.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/util/AParAdapterFactory.java
index 0cd9653..b9b63c0 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/util/AParAdapterFactory.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/util/AParAdapterFactory.java
@@ -25,171 +25,219 @@
 public class AParAdapterFactory extends AdapterFactoryImpl
 {
   /**
-   * The cached model package.
-   * <!-- begin-user-doc -->
+	 * The cached model package.
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected static AParPackage 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 AParAdapterFactory()
   {
-    if (modelPackage == null)
-    {
-      modelPackage = AParPackage.eINSTANCE;
-    }
-  }
+		if (modelPackage == null) {
+			modelPackage = AParPackage.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 AParSwitch<Adapter> modelSwitch =
-    new AParSwitch<Adapter>()
-    {
-      @Override
-      public Adapter caseModel(Model object)
-      {
-        return createModelAdapter();
-      }
-      @Override
-      public Adapter caseImport(Import object)
-      {
-        return createImportAdapter();
-      }
-      @Override
-      public Adapter caseIncorporates(Incorporates object)
-      {
-        return createIncorporatesAdapter();
-      }
-      @Override
-      public Adapter caseParameter(Parameter object)
-      {
-        return createParameterAdapter();
-      }
-      @Override
-      public Adapter defaultCase(EObject object)
-      {
-        return createEObjectAdapter();
-      }
-    };
+    new AParSwitch<Adapter>() {
+			@Override
+			public Adapter caseModel(Model object) {
+				return createModelAdapter();
+			}
+			@Override
+			public Adapter caseImport(Import object) {
+				return createImportAdapter();
+			}
+			@Override
+			public Adapter caseIncorporates(Incorporates object) {
+				return createIncorporatesAdapter();
+			}
+			@Override
+			public Adapter caseParameter(Parameter object) {
+				return createParameterAdapter();
+			}
+			@Override
+			public Adapter caseSingleParameter(SingleParameter object) {
+				return createSingleParameterAdapter();
+			}
+			@Override
+			public Adapter caseSweepParameter(SweepParameter object) {
+				return createSweepParameterAdapter();
+			}
+			@Override
+			public Adapter caseSweepLink(SweepLink object) {
+				return createSweepLinkAdapter();
+			}
+			@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.parameters.aPar.Model <em>Model</em>}'.
-   * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.Model <em>Model</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.parameters.aPar.Model
-   * @generated
-   */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Model
+	 * @generated
+	 */
   public Adapter createModelAdapter()
   {
-    return null;
-  }
+		return null;
+	}
 
   /**
-   * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.Import <em>Import</em>}'.
-   * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.Import <em>Import</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.parameters.aPar.Import
-   * @generated
-   */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Import
+	 * @generated
+	 */
   public Adapter createImportAdapter()
   {
-    return null;
-  }
+		return null;
+	}
 
   /**
-   * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.Incorporates <em>Incorporates</em>}'.
-   * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.Incorporates <em>Incorporates</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.parameters.aPar.Incorporates
-   * @generated
-   */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Incorporates
+	 * @generated
+	 */
   public Adapter createIncorporatesAdapter()
   {
-    return null;
-  }
+		return null;
+	}
 
   /**
-   * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.Parameter <em>Parameter</em>}'.
-   * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.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.parameters.aPar.Parameter
-   * @generated
-   */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.parameters.aPar.Parameter
+	 * @generated
+	 */
   public Adapter createParameterAdapter()
   {
-    return null;
-  }
+		return null;
+	}
 
   /**
-   * Creates a new adapter for the default case.
-   * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.SingleParameter <em>Single 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.parameters.aPar.SingleParameter
+	 * @generated
+	 */
+  public Adapter createSingleParameterAdapter()
+  {
+		return null;
+	}
+
+  /**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.SweepParameter <em>Sweep 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.parameters.aPar.SweepParameter
+	 * @generated
+	 */
+  public Adapter createSweepParameterAdapter()
+  {
+		return null;
+	}
+
+  /**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.parameters.aPar.SweepLink <em>Sweep Link</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.parameters.aPar.SweepLink
+	 * @generated
+	 */
+  public Adapter createSweepLinkAdapter()
+  {
+		return null;
+	}
+
+  /**
+	 * 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;
+	}
 
 } //AParAdapterFactory
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/util/AParSwitch.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/util/AParSwitch.java
index bd07bee..250f7bc 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/util/AParSwitch.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/aPar/util/AParSwitch.java
@@ -28,183 +28,244 @@
 public class AParSwitch<T>
 {
   /**
-   * The cached model package
-   * <!-- begin-user-doc -->
+	 * The cached model package
+	 * <!-- begin-user-doc -->
    * <!-- end-user-doc -->
-   * @generated
-   */
+	 * @generated
+	 */
   protected static AParPackage 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 AParSwitch()
   {
-    if (modelPackage == null)
-    {
-      modelPackage = AParPackage.eINSTANCE;
-    }
-  }
+		if (modelPackage == null) {
+			modelPackage = AParPackage.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 AParPackage.MODEL:
-      {
-        Model model = (Model)theEObject;
-        T result = caseModel(model);
-        if (result == null) result = defaultCase(theEObject);
-        return result;
-      }
-      case AParPackage.IMPORT:
-      {
-        Import import_ = (Import)theEObject;
-        T result = caseImport(import_);
-        if (result == null) result = defaultCase(theEObject);
-        return result;
-      }
-      case AParPackage.INCORPORATES:
-      {
-        Incorporates incorporates = (Incorporates)theEObject;
-        T result = caseIncorporates(incorporates);
-        if (result == null) result = defaultCase(theEObject);
-        return result;
-      }
-      case AParPackage.PARAMETER:
-      {
-        Parameter parameter = (Parameter)theEObject;
-        T result = caseParameter(parameter);
-        if (result == null) result = defaultCase(theEObject);
-        return result;
-      }
-      default: return defaultCase(theEObject);
-    }
-  }
+		switch (classifierID) {
+			case AParPackage.MODEL: {
+				Model model = (Model)theEObject;
+				T result = caseModel(model);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case AParPackage.IMPORT: {
+				Import import_ = (Import)theEObject;
+				T result = caseImport(import_);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case AParPackage.INCORPORATES: {
+				Incorporates incorporates = (Incorporates)theEObject;
+				T result = caseIncorporates(incorporates);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case AParPackage.PARAMETER: {
+				Parameter parameter = (Parameter)theEObject;
+				T result = caseParameter(parameter);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case AParPackage.SINGLE_PARAMETER: {
+				SingleParameter singleParameter = (SingleParameter)theEObject;
+				T result = caseSingleParameter(singleParameter);
+				if (result == null) result = caseParameter(singleParameter);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case AParPackage.SWEEP_PARAMETER: {
+				SweepParameter sweepParameter = (SweepParameter)theEObject;
+				T result = caseSweepParameter(sweepParameter);
+				if (result == null) result = caseParameter(sweepParameter);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case AParPackage.SWEEP_LINK: {
+				SweepLink sweepLink = (SweepLink)theEObject;
+				T result = caseSweepLink(sweepLink);
+				if (result == null) result = caseParameter(sweepLink);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			default: return defaultCase(theEObject);
+		}
+	}
 
   /**
-   * Returns the result of interpreting the object as an instance of '<em>Model</em>'.
-   * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Model</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>Model</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>Model</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
   public T caseModel(Model object)
   {
-    return null;
-  }
+		return null;
+	}
 
   /**
-   * Returns the result of interpreting the object as an instance of '<em>Import</em>'.
-   * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Import</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>Import</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>Import</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
   public T caseImport(Import object)
   {
-    return null;
-  }
+		return null;
+	}
 
   /**
-   * Returns the result of interpreting the object as an instance of '<em>Incorporates</em>'.
-   * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Incorporates</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>Incorporates</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>Incorporates</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
   public T caseIncorporates(Incorporates 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>EObject</em>'.
-   * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Single 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>Single Parameter</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+  public T caseSingleParameter(SingleParameter object)
+  {
+		return null;
+	}
+
+  /**
+	 * Returns the result of interpreting the object as an instance of '<em>Sweep 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>Sweep Parameter</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+  public T caseSweepParameter(SweepParameter object)
+  {
+		return null;
+	}
+
+  /**
+	 * Returns the result of interpreting the object as an instance of '<em>Sweep Link</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>Sweep Link</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+  public T caseSweepLink(SweepLink object)
+  {
+		return null;
+	}
+
+  /**
+	 * 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;
+	}
 
 } //AParSwitch
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parseTreeConstruction/AParParsetreeConstructor.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parseTreeConstruction/AParParsetreeConstructor.java
index 989b00e..810442a 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parseTreeConstruction/AParParsetreeConstructor.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parseTreeConstruction/AParParsetreeConstructor.java
@@ -34,12 +34,15 @@
 			case 0: return new Model_Group(this, this, 0, inst);
 			case 1: return new Import_ImportURIAssignment(this, this, 1, inst);
 			case 2: return new Incorporates_ImportURIAssignment(this, this, 2, inst);
-			case 3: return new Parameter_Group(this, this, 3, inst);
-			case 4: return new Value_Alternatives(this, this, 4, inst);
-			case 5: return new IntValue_ValueAssignment(this, this, 5, inst);
-			case 6: return new RealValue_ValueAssignment(this, this, 6, inst);
-			case 7: return new StringValue_ValueAssignment(this, this, 7, inst);
-			case 8: return new BooleanValue_ValueAssignment(this, this, 8, inst);
+			case 3: return new Parameter_Alternatives(this, this, 3, inst);
+			case 4: return new SingleParameter_Group(this, this, 4, inst);
+			case 5: return new SweepParameter_Group(this, this, 5, inst);
+			case 6: return new SweepLink_Group(this, this, 6, inst);
+			case 7: return new Value_Alternatives(this, this, 7, inst);
+			case 8: return new IntValue_ValueAssignment(this, this, 8, inst);
+			case 9: return new RealValue_ValueAssignment(this, this, 9, inst);
+			case 10: return new StringValue_ValueAssignment(this, this, 10, inst);
+			case 11: return new BooleanValue_ValueAssignment(this, this, 11, inst);
 			default: return null;
 		}	
 	}	
@@ -292,7 +295,7 @@
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new Parameter_Group(this, this, 0, inst);
+			case 0: return new Parameter_Alternatives(this, this, 0, inst);
 			default: return null;
 		}	
 	}
@@ -422,33 +425,185 @@
 /************ begin Rule Parameter ****************
  *
  * Parameter:
- * 	attribute=[SAttribute] "=" value=Value;
+ * 	SingleParameter | SweepParameter | SweepLink;
  *
  **/
 
-// attribute=[SAttribute] "=" value=Value
-protected class Parameter_Group extends GroupToken {
-	
-	public Parameter_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+// SingleParameter | SweepParameter | SweepLink
+protected class Parameter_Alternatives extends AlternativesToken {
+
+	public Parameter_Alternatives(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
-	public Group getGrammarElement() {
-		return grammarAccess.getParameterAccess().getGroup();
+	public Alternatives getGrammarElement() {
+		return grammarAccess.getParameterAccess().getAlternatives();
 	}
 
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new Parameter_ValueAssignment_2(lastRuleCallOrigin, this, 0, inst);
+			case 0: return new Parameter_SingleParameterParserRuleCall_0(lastRuleCallOrigin, this, 0, inst);
+			case 1: return new Parameter_SweepParameterParserRuleCall_1(lastRuleCallOrigin, this, 1, inst);
+			case 2: return new Parameter_SweepLinkParserRuleCall_2(lastRuleCallOrigin, this, 2, inst);
 			default: return null;
 		}	
 	}
 
     @Override
 	public IEObjectConsumer tryConsume() {
-		if(getEObject().eClass() != grammarAccess.getParameterRule().getType().getClassifier())
+		if(getEObject().eClass() != grammarAccess.getSingleParameterRule().getType().getClassifier() && 
+		   getEObject().eClass() != grammarAccess.getSweepLinkRule().getType().getClassifier() && 
+		   getEObject().eClass() != grammarAccess.getSweepParameterRule().getType().getClassifier())
+			return null;
+		return eObjectConsumer;
+	}
+
+}
+
+// SingleParameter
+protected class Parameter_SingleParameterParserRuleCall_0 extends RuleCallToken {
+	
+	public Parameter_SingleParameterParserRuleCall_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public RuleCall getGrammarElement() {
+		return grammarAccess.getParameterAccess().getSingleParameterParserRuleCall_0();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SingleParameter_Group(this, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override
+	public IEObjectConsumer tryConsume() {
+		if(getEObject().eClass() != grammarAccess.getSingleParameterRule().getType().getClassifier())
+			return null;
+		if(checkForRecursion(SingleParameter_Group.class, eObjectConsumer)) return null;
+		return eObjectConsumer;
+	}
+	
+    @Override
+	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
+		switch(index) {
+			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
+		}	
+	}	
+}
+
+// SweepParameter
+protected class Parameter_SweepParameterParserRuleCall_1 extends RuleCallToken {
+	
+	public Parameter_SweepParameterParserRuleCall_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public RuleCall getGrammarElement() {
+		return grammarAccess.getParameterAccess().getSweepParameterParserRuleCall_1();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SweepParameter_Group(this, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override
+	public IEObjectConsumer tryConsume() {
+		if(getEObject().eClass() != grammarAccess.getSweepParameterRule().getType().getClassifier())
+			return null;
+		if(checkForRecursion(SweepParameter_Group.class, eObjectConsumer)) return null;
+		return eObjectConsumer;
+	}
+	
+    @Override
+	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
+		switch(index) {
+			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
+		}	
+	}	
+}
+
+// SweepLink
+protected class Parameter_SweepLinkParserRuleCall_2 extends RuleCallToken {
+	
+	public Parameter_SweepLinkParserRuleCall_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public RuleCall getGrammarElement() {
+		return grammarAccess.getParameterAccess().getSweepLinkParserRuleCall_2();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SweepLink_Group(this, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override
+	public IEObjectConsumer tryConsume() {
+		if(getEObject().eClass() != grammarAccess.getSweepLinkRule().getType().getClassifier())
+			return null;
+		if(checkForRecursion(SweepLink_Group.class, eObjectConsumer)) return null;
+		return eObjectConsumer;
+	}
+	
+    @Override
+	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
+		switch(index) {
+			default: return lastRuleCallOrigin.createFollowerAfterReturn(next, actIndex , index, inst);
+		}	
+	}	
+}
+
+
+/************ end Rule Parameter ****************/
+
+
+/************ begin Rule SingleParameter ****************
+ *
+ * SingleParameter:
+ * 	attribute=[SAttribute] "=" value=Value;
+ *
+ **/
+
+// attribute=[SAttribute] "=" value=Value
+protected class SingleParameter_Group extends GroupToken {
+	
+	public SingleParameter_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Group getGrammarElement() {
+		return grammarAccess.getSingleParameterAccess().getGroup();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SingleParameter_ValueAssignment_2(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override
+	public IEObjectConsumer tryConsume() {
+		if(getEObject().eClass() != grammarAccess.getSingleParameterRule().getType().getClassifier())
 			return null;
 		return eObjectConsumer;
 	}
@@ -456,15 +611,15 @@
 }
 
 // attribute=[SAttribute]
-protected class Parameter_AttributeAssignment_0 extends AssignmentToken  {
+protected class SingleParameter_AttributeAssignment_0 extends AssignmentToken  {
 	
-	public Parameter_AttributeAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public SingleParameter_AttributeAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Assignment getGrammarElement() {
-		return grammarAccess.getParameterAccess().getAttributeAssignment_0();
+		return grammarAccess.getSingleParameterAccess().getAttributeAssignment_0();
 	}
 
     @Override
@@ -480,9 +635,9 @@
 		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attribute");
 		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
 			IEObjectConsumer param = createEObjectConsumer((EObject)value);
-			if(param.isInstanceOf(grammarAccess.getParameterAccess().getAttributeSAttributeCrossReference_0_0().getType().getClassifier())) {
+			if(param.isInstanceOf(grammarAccess.getSingleParameterAccess().getAttributeSAttributeCrossReference_0_0().getType().getClassifier())) {
 				type = AssignmentType.CROSS_REFERENCE;
-				element = grammarAccess.getParameterAccess().getAttributeSAttributeCrossReference_0_0(); 
+				element = grammarAccess.getSingleParameterAccess().getAttributeSAttributeCrossReference_0_0(); 
 				return obj;
 			}
 		}
@@ -492,21 +647,21 @@
 }
 
 // "="
-protected class Parameter_EqualsSignKeyword_1 extends KeywordToken  {
+protected class SingleParameter_EqualsSignKeyword_1 extends KeywordToken  {
 	
-	public Parameter_EqualsSignKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public SingleParameter_EqualsSignKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Keyword getGrammarElement() {
-		return grammarAccess.getParameterAccess().getEqualsSignKeyword_1();
+		return grammarAccess.getSingleParameterAccess().getEqualsSignKeyword_1();
 	}
 
     @Override
 	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
 		switch(index) {
-			case 0: return new Parameter_AttributeAssignment_0(lastRuleCallOrigin, this, 0, inst);
+			case 0: return new SingleParameter_AttributeAssignment_0(lastRuleCallOrigin, this, 0, inst);
 			default: return null;
 		}	
 	}
@@ -514,15 +669,15 @@
 }
 
 // value=Value
-protected class Parameter_ValueAssignment_2 extends AssignmentToken  {
+protected class SingleParameter_ValueAssignment_2 extends AssignmentToken  {
 	
-	public Parameter_ValueAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+	public SingleParameter_ValueAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
 		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
 	}
 	
 	@Override
 	public Assignment getGrammarElement() {
-		return grammarAccess.getParameterAccess().getValueAssignment_2();
+		return grammarAccess.getSingleParameterAccess().getValueAssignment_2();
 	}
 
     @Override
@@ -541,7 +696,7 @@
 			IEObjectConsumer param = createEObjectConsumer((EObject)value);
 			if(param.isInstanceOf(grammarAccess.getValueRule().getType().getClassifier())) {
 				type = AssignmentType.PARSER_RULE_CALL;
-				element = grammarAccess.getParameterAccess().getValueValueParserRuleCall_2_0(); 
+				element = grammarAccess.getSingleParameterAccess().getValueValueParserRuleCall_2_0(); 
 				consumed = obj;
 				return param;
 			}
@@ -553,14 +708,447 @@
 	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
 		if(value == inst.getEObject() && !inst.isConsumed()) return null;
 		switch(index) {
-			case 0: return new Parameter_EqualsSignKeyword_1(lastRuleCallOrigin, next, actIndex, consumed);
+			case 0: return new SingleParameter_EqualsSignKeyword_1(lastRuleCallOrigin, next, actIndex, consumed);
 			default: return null;
 		}	
 	}	
 }
 
 
-/************ end Rule Parameter ****************/
+/************ end Rule SingleParameter ****************/
+
+
+/************ begin Rule SweepParameter ****************
+ *
+ * SweepParameter:
+ * 	attribute=[SAttribute] "[" startValue=Value "," endValue=Value "," increment=Value "]";
+ *
+ **/
+
+// attribute=[SAttribute] "[" startValue=Value "," endValue=Value "," increment=Value "]"
+protected class SweepParameter_Group extends GroupToken {
+	
+	public SweepParameter_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Group getGrammarElement() {
+		return grammarAccess.getSweepParameterAccess().getGroup();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SweepParameter_RightSquareBracketKeyword_7(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override
+	public IEObjectConsumer tryConsume() {
+		if(getEObject().eClass() != grammarAccess.getSweepParameterRule().getType().getClassifier())
+			return null;
+		return eObjectConsumer;
+	}
+
+}
+
+// attribute=[SAttribute]
+protected class SweepParameter_AttributeAssignment_0 extends AssignmentToken  {
+	
+	public SweepParameter_AttributeAssignment_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Assignment getGrammarElement() {
+		return grammarAccess.getSweepParameterAccess().getAttributeAssignment_0();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
+		}	
+	}
+
+    @Override	
+	public IEObjectConsumer tryConsume() {
+		if((value = eObjectConsumer.getConsumable("attribute",true)) == null) return null;
+		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("attribute");
+		if(value instanceof EObject) { // org::eclipse::xtext::impl::CrossReferenceImpl
+			IEObjectConsumer param = createEObjectConsumer((EObject)value);
+			if(param.isInstanceOf(grammarAccess.getSweepParameterAccess().getAttributeSAttributeCrossReference_0_0().getType().getClassifier())) {
+				type = AssignmentType.CROSS_REFERENCE;
+				element = grammarAccess.getSweepParameterAccess().getAttributeSAttributeCrossReference_0_0(); 
+				return obj;
+			}
+		}
+		return null;
+	}
+
+}
+
+// "["
+protected class SweepParameter_LeftSquareBracketKeyword_1 extends KeywordToken  {
+	
+	public SweepParameter_LeftSquareBracketKeyword_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Keyword getGrammarElement() {
+		return grammarAccess.getSweepParameterAccess().getLeftSquareBracketKeyword_1();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SweepParameter_AttributeAssignment_0(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+}
+
+// startValue=Value
+protected class SweepParameter_StartValueAssignment_2 extends AssignmentToken  {
+	
+	public SweepParameter_StartValueAssignment_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Assignment getGrammarElement() {
+		return grammarAccess.getSweepParameterAccess().getStartValueAssignment_2();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new Value_Alternatives(this, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override	
+	public IEObjectConsumer tryConsume() {
+		if((value = eObjectConsumer.getConsumable("startValue",true)) == null) return null;
+		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("startValue");
+		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
+			IEObjectConsumer param = createEObjectConsumer((EObject)value);
+			if(param.isInstanceOf(grammarAccess.getValueRule().getType().getClassifier())) {
+				type = AssignmentType.PARSER_RULE_CALL;
+				element = grammarAccess.getSweepParameterAccess().getStartValueValueParserRuleCall_2_0(); 
+				consumed = obj;
+				return param;
+			}
+		}
+		return null;
+	}
+
+    @Override
+	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
+		if(value == inst.getEObject() && !inst.isConsumed()) return null;
+		switch(index) {
+			case 0: return new SweepParameter_LeftSquareBracketKeyword_1(lastRuleCallOrigin, next, actIndex, consumed);
+			default: return null;
+		}	
+	}	
+}
+
+// ","
+protected class SweepParameter_CommaKeyword_3 extends KeywordToken  {
+	
+	public SweepParameter_CommaKeyword_3(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Keyword getGrammarElement() {
+		return grammarAccess.getSweepParameterAccess().getCommaKeyword_3();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SweepParameter_StartValueAssignment_2(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+}
+
+// endValue=Value
+protected class SweepParameter_EndValueAssignment_4 extends AssignmentToken  {
+	
+	public SweepParameter_EndValueAssignment_4(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Assignment getGrammarElement() {
+		return grammarAccess.getSweepParameterAccess().getEndValueAssignment_4();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new Value_Alternatives(this, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override	
+	public IEObjectConsumer tryConsume() {
+		if((value = eObjectConsumer.getConsumable("endValue",true)) == null) return null;
+		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("endValue");
+		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
+			IEObjectConsumer param = createEObjectConsumer((EObject)value);
+			if(param.isInstanceOf(grammarAccess.getValueRule().getType().getClassifier())) {
+				type = AssignmentType.PARSER_RULE_CALL;
+				element = grammarAccess.getSweepParameterAccess().getEndValueValueParserRuleCall_4_0(); 
+				consumed = obj;
+				return param;
+			}
+		}
+		return null;
+	}
+
+    @Override
+	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
+		if(value == inst.getEObject() && !inst.isConsumed()) return null;
+		switch(index) {
+			case 0: return new SweepParameter_CommaKeyword_3(lastRuleCallOrigin, next, actIndex, consumed);
+			default: return null;
+		}	
+	}	
+}
+
+// ","
+protected class SweepParameter_CommaKeyword_5 extends KeywordToken  {
+	
+	public SweepParameter_CommaKeyword_5(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Keyword getGrammarElement() {
+		return grammarAccess.getSweepParameterAccess().getCommaKeyword_5();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SweepParameter_EndValueAssignment_4(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+}
+
+// increment=Value
+protected class SweepParameter_IncrementAssignment_6 extends AssignmentToken  {
+	
+	public SweepParameter_IncrementAssignment_6(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Assignment getGrammarElement() {
+		return grammarAccess.getSweepParameterAccess().getIncrementAssignment_6();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new Value_Alternatives(this, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override	
+	public IEObjectConsumer tryConsume() {
+		if((value = eObjectConsumer.getConsumable("increment",true)) == null) return null;
+		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("increment");
+		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
+			IEObjectConsumer param = createEObjectConsumer((EObject)value);
+			if(param.isInstanceOf(grammarAccess.getValueRule().getType().getClassifier())) {
+				type = AssignmentType.PARSER_RULE_CALL;
+				element = grammarAccess.getSweepParameterAccess().getIncrementValueParserRuleCall_6_0(); 
+				consumed = obj;
+				return param;
+			}
+		}
+		return null;
+	}
+
+    @Override
+	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
+		if(value == inst.getEObject() && !inst.isConsumed()) return null;
+		switch(index) {
+			case 0: return new SweepParameter_CommaKeyword_5(lastRuleCallOrigin, next, actIndex, consumed);
+			default: return null;
+		}	
+	}	
+}
+
+// "]"
+protected class SweepParameter_RightSquareBracketKeyword_7 extends KeywordToken  {
+	
+	public SweepParameter_RightSquareBracketKeyword_7(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Keyword getGrammarElement() {
+		return grammarAccess.getSweepParameterAccess().getRightSquareBracketKeyword_7();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SweepParameter_IncrementAssignment_6(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+}
+
+
+/************ end Rule SweepParameter ****************/
+
+
+/************ begin Rule SweepLink ****************
+ *
+ * SweepLink:
+ * 	"[" parameters+=Parameter* "]";
+ *
+ **/
+
+// "[" parameters+=Parameter* "]"
+protected class SweepLink_Group extends GroupToken {
+	
+	public SweepLink_Group(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Group getGrammarElement() {
+		return grammarAccess.getSweepLinkAccess().getGroup();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SweepLink_RightSquareBracketKeyword_2(lastRuleCallOrigin, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override
+	public IEObjectConsumer tryConsume() {
+		if(getEObject().eClass() != grammarAccess.getSweepLinkRule().getType().getClassifier())
+			return null;
+		return eObjectConsumer;
+	}
+
+}
+
+// "["
+protected class SweepLink_LeftSquareBracketKeyword_0 extends KeywordToken  {
+	
+	public SweepLink_LeftSquareBracketKeyword_0(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Keyword getGrammarElement() {
+		return grammarAccess.getSweepLinkAccess().getLeftSquareBracketKeyword_0();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			default: return lastRuleCallOrigin.createFollowerAfterReturn(this, index, index, inst);
+		}	
+	}
+
+}
+
+// parameters+=Parameter*
+protected class SweepLink_ParametersAssignment_1 extends AssignmentToken  {
+	
+	public SweepLink_ParametersAssignment_1(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Assignment getGrammarElement() {
+		return grammarAccess.getSweepLinkAccess().getParametersAssignment_1();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new Parameter_Alternatives(this, this, 0, inst);
+			default: return null;
+		}	
+	}
+
+    @Override	
+	public IEObjectConsumer tryConsume() {
+		if((value = eObjectConsumer.getConsumable("parameters",false)) == null) return null;
+		IEObjectConsumer obj = eObjectConsumer.cloneAndConsume("parameters");
+		if(value instanceof EObject) { // org::eclipse::xtext::impl::RuleCallImpl
+			IEObjectConsumer param = createEObjectConsumer((EObject)value);
+			if(param.isInstanceOf(grammarAccess.getParameterRule().getType().getClassifier())) {
+				type = AssignmentType.PARSER_RULE_CALL;
+				element = grammarAccess.getSweepLinkAccess().getParametersParameterParserRuleCall_1_0(); 
+				consumed = obj;
+				return param;
+			}
+		}
+		return null;
+	}
+
+    @Override
+	public AbstractToken createFollowerAfterReturn(AbstractToken next,	int actIndex, int index, IEObjectConsumer inst) {
+		if(value == inst.getEObject() && !inst.isConsumed()) return null;
+		switch(index) {
+			case 0: return new SweepLink_ParametersAssignment_1(lastRuleCallOrigin, next, actIndex, consumed);
+			case 1: return new SweepLink_LeftSquareBracketKeyword_0(lastRuleCallOrigin, next, actIndex, consumed);
+			default: return null;
+		}	
+	}	
+}
+
+// "]"
+protected class SweepLink_RightSquareBracketKeyword_2 extends KeywordToken  {
+	
+	public SweepLink_RightSquareBracketKeyword_2(AbstractToken lastRuleCallOrigin, AbstractToken next, int transitionIndex, IEObjectConsumer eObjectConsumer) {
+		super(lastRuleCallOrigin, next, transitionIndex, eObjectConsumer);
+	}
+	
+	@Override
+	public Keyword getGrammarElement() {
+		return grammarAccess.getSweepLinkAccess().getRightSquareBracketKeyword_2();
+	}
+
+    @Override
+	public AbstractToken createFollower(int index, IEObjectConsumer inst) {
+		switch(index) {
+			case 0: return new SweepLink_ParametersAssignment_1(lastRuleCallOrigin, this, 0, inst);
+			case 1: return new SweepLink_LeftSquareBracketKeyword_0(lastRuleCallOrigin, this, 1, inst);
+			default: return null;
+		}	
+	}
+
+}
+
+
+/************ end Rule SweepLink ****************/
 
 
 /************ begin Rule Value ****************
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g
index 9a39418..a9a4ca8 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g
@@ -311,32 +311,84 @@
     @after { resetLookahead(); 
     	lastConsumedNode = currentNode;
     }:
+(
+    { 
+        currentNode=createCompositeNode(grammarAccess.getParameterAccess().getSingleParameterParserRuleCall_0(), currentNode); 
+    }
+    this_SingleParameter_0=ruleSingleParameter
+    { 
+        $current = $this_SingleParameter_0.current; 
+        currentNode = currentNode.getParent();
+    }
+
+    |
+    { 
+        currentNode=createCompositeNode(grammarAccess.getParameterAccess().getSweepParameterParserRuleCall_1(), currentNode); 
+    }
+    this_SweepParameter_1=ruleSweepParameter
+    { 
+        $current = $this_SweepParameter_1.current; 
+        currentNode = currentNode.getParent();
+    }
+
+    |
+    { 
+        currentNode=createCompositeNode(grammarAccess.getParameterAccess().getSweepLinkParserRuleCall_2(), currentNode); 
+    }
+    this_SweepLink_2=ruleSweepLink
+    { 
+        $current = $this_SweepLink_2.current; 
+        currentNode = currentNode.getParent();
+    }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleSingleParameter
+entryRuleSingleParameter returns [EObject current=null] 
+	:
+	{ currentNode = createCompositeNode(grammarAccess.getSingleParameterRule(), currentNode); }
+	 iv_ruleSingleParameter=ruleSingleParameter 
+	 { $current=$iv_ruleSingleParameter.current; } 
+	 EOF 
+;
+
+// Rule SingleParameter
+ruleSingleParameter returns [EObject current=null] 
+    @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); 
+    }
+    @after { resetLookahead(); 
+    	lastConsumedNode = currentNode;
+    }:
 ((
 (
 		{
 			if ($current==null) {
-	            $current = factory.create(grammarAccess.getParameterRule().getType().getClassifier());
+	            $current = factory.create(grammarAccess.getSingleParameterRule().getType().getClassifier());
 	            associateNodeWithAstElement(currentNode, $current);
 	        }
         }
 	RULE_ID
 	{
-		createLeafNode(grammarAccess.getParameterAccess().getAttributeSAttributeCrossReference_0_0(), "attribute"); 
+		createLeafNode(grammarAccess.getSingleParameterAccess().getAttributeSAttributeCrossReference_0_0(), "attribute"); 
 	}
 
 )
 )	'=' 
     {
-        createLeafNode(grammarAccess.getParameterAccess().getEqualsSignKeyword_1(), null); 
+        createLeafNode(grammarAccess.getSingleParameterAccess().getEqualsSignKeyword_1(), null); 
     }
 (
 (
 		{ 
-	        currentNode=createCompositeNode(grammarAccess.getParameterAccess().getValueValueParserRuleCall_2_0(), currentNode); 
+	        currentNode=createCompositeNode(grammarAccess.getSingleParameterAccess().getValueValueParserRuleCall_2_0(), currentNode); 
 	    }
 		lv_value_2_0=ruleValue		{
 	        if ($current==null) {
-	            $current = factory.create(grammarAccess.getParameterRule().getType().getClassifier());
+	            $current = factory.create(grammarAccess.getSingleParameterRule().getType().getClassifier());
 	            associateNodeWithAstElement(currentNode.getParent(), $current);
 	        }
 	        try {
@@ -360,6 +412,186 @@
 
 
 
+// Entry rule entryRuleSweepParameter
+entryRuleSweepParameter returns [EObject current=null] 
+	:
+	{ currentNode = createCompositeNode(grammarAccess.getSweepParameterRule(), currentNode); }
+	 iv_ruleSweepParameter=ruleSweepParameter 
+	 { $current=$iv_ruleSweepParameter.current; } 
+	 EOF 
+;
+
+// Rule SweepParameter
+ruleSweepParameter returns [EObject current=null] 
+    @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); 
+    }
+    @after { resetLookahead(); 
+    	lastConsumedNode = currentNode;
+    }:
+((
+(
+		{
+			if ($current==null) {
+	            $current = factory.create(grammarAccess.getSweepParameterRule().getType().getClassifier());
+	            associateNodeWithAstElement(currentNode, $current);
+	        }
+        }
+	RULE_ID
+	{
+		createLeafNode(grammarAccess.getSweepParameterAccess().getAttributeSAttributeCrossReference_0_0(), "attribute"); 
+	}
+
+)
+)	'[' 
+    {
+        createLeafNode(grammarAccess.getSweepParameterAccess().getLeftSquareBracketKeyword_1(), null); 
+    }
+(
+(
+		{ 
+	        currentNode=createCompositeNode(grammarAccess.getSweepParameterAccess().getStartValueValueParserRuleCall_2_0(), currentNode); 
+	    }
+		lv_startValue_2_0=ruleValue		{
+	        if ($current==null) {
+	            $current = factory.create(grammarAccess.getSweepParameterRule().getType().getClassifier());
+	            associateNodeWithAstElement(currentNode.getParent(), $current);
+	        }
+	        try {
+	       		set(
+	       			$current, 
+	       			"startValue",
+	        		lv_startValue_2_0, 
+	        		"Value", 
+	        		currentNode);
+	        } catch (ValueConverterException vce) {
+				handleValueConverterException(vce);
+	        }
+	        currentNode = currentNode.getParent();
+	    }
+
+)
+)	',' 
+    {
+        createLeafNode(grammarAccess.getSweepParameterAccess().getCommaKeyword_3(), null); 
+    }
+(
+(
+		{ 
+	        currentNode=createCompositeNode(grammarAccess.getSweepParameterAccess().getEndValueValueParserRuleCall_4_0(), currentNode); 
+	    }
+		lv_endValue_4_0=ruleValue		{
+	        if ($current==null) {
+	            $current = factory.create(grammarAccess.getSweepParameterRule().getType().getClassifier());
+	            associateNodeWithAstElement(currentNode.getParent(), $current);
+	        }
+	        try {
+	       		set(
+	       			$current, 
+	       			"endValue",
+	        		lv_endValue_4_0, 
+	        		"Value", 
+	        		currentNode);
+	        } catch (ValueConverterException vce) {
+				handleValueConverterException(vce);
+	        }
+	        currentNode = currentNode.getParent();
+	    }
+
+)
+)	',' 
+    {
+        createLeafNode(grammarAccess.getSweepParameterAccess().getCommaKeyword_5(), null); 
+    }
+(
+(
+		{ 
+	        currentNode=createCompositeNode(grammarAccess.getSweepParameterAccess().getIncrementValueParserRuleCall_6_0(), currentNode); 
+	    }
+		lv_increment_6_0=ruleValue		{
+	        if ($current==null) {
+	            $current = factory.create(grammarAccess.getSweepParameterRule().getType().getClassifier());
+	            associateNodeWithAstElement(currentNode.getParent(), $current);
+	        }
+	        try {
+	       		set(
+	       			$current, 
+	       			"increment",
+	        		lv_increment_6_0, 
+	        		"Value", 
+	        		currentNode);
+	        } catch (ValueConverterException vce) {
+				handleValueConverterException(vce);
+	        }
+	        currentNode = currentNode.getParent();
+	    }
+
+)
+)	']' 
+    {
+        createLeafNode(grammarAccess.getSweepParameterAccess().getRightSquareBracketKeyword_7(), null); 
+    }
+)
+;
+
+
+
+
+
+// Entry rule entryRuleSweepLink
+entryRuleSweepLink returns [EObject current=null] 
+	:
+	{ currentNode = createCompositeNode(grammarAccess.getSweepLinkRule(), currentNode); }
+	 iv_ruleSweepLink=ruleSweepLink 
+	 { $current=$iv_ruleSweepLink.current; } 
+	 EOF 
+;
+
+// Rule SweepLink
+ruleSweepLink returns [EObject current=null] 
+    @init { EObject temp=null; setCurrentLookahead(); resetLookahead(); 
+    }
+    @after { resetLookahead(); 
+    	lastConsumedNode = currentNode;
+    }:
+(	'[' 
+    {
+        createLeafNode(grammarAccess.getSweepLinkAccess().getLeftSquareBracketKeyword_0(), null); 
+    }
+(
+(
+		{ 
+	        currentNode=createCompositeNode(grammarAccess.getSweepLinkAccess().getParametersParameterParserRuleCall_1_0(), currentNode); 
+	    }
+		lv_parameters_1_0=ruleParameter		{
+	        if ($current==null) {
+	            $current = factory.create(grammarAccess.getSweepLinkRule().getType().getClassifier());
+	            associateNodeWithAstElement(currentNode.getParent(), $current);
+	        }
+	        try {
+	       		add(
+	       			$current, 
+	       			"parameters",
+	        		lv_parameters_1_0, 
+	        		"Parameter", 
+	        		currentNode);
+	        } catch (ValueConverterException vce) {
+				handleValueConverterException(vce);
+	        }
+	        currentNode = currentNode.getParent();
+	    }
+
+)
+)*	']' 
+    {
+        createLeafNode(grammarAccess.getSweepLinkAccess().getRightSquareBracketKeyword_2(), null); 
+    }
+)
+;
+
+
+
+
+
 // Entry rule entryRuleValue
 entryRuleValue returns [EObject current=null] 
 	:
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.tokens b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.tokens
index 4b3f357..e7e7a63 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.tokens
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.tokens
@@ -8,8 +8,11 @@
 RULE_DESC_STRING=8
 RULE_INTEGER=6
 RULE_ML_COMMENT=10
-'true'=17
-'false'=18
+'true'=20
+'false'=21
 '='=16
 'model'=14
+'['=17
+','=18
 'incorporates'=15
+']'=19
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAParLexer.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAParLexer.java
index b0bc118..349e8fb 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAParLexer.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAParLexer.java
@@ -14,9 +14,11 @@
 public class InternalAParLexer extends Lexer {
     public static final int RULE_ID=5;
     public static final int RULE_ANY_OTHER=13;
+    public static final int Tokens=22;
     public static final int EOF=-1;
     public static final int RULE_SL_COMMENT=11;
-    public static final int Tokens=19;
+    public static final int T21=21;
+    public static final int T20=20;
     public static final int RULE_ML_COMMENT=10;
     public static final int RULE_STRING=4;
     public static final int RULE_INT=9;
@@ -28,6 +30,7 @@
     public static final int T16=16;
     public static final int T17=17;
     public static final int T18=18;
+    public static final int T19=19;
     public static final int RULE_INTEGER=6;
     public InternalAParLexer() {;} 
     public InternalAParLexer(CharStream input) {
@@ -95,11 +98,10 @@
     public final void mT17() throws RecognitionException {
         try {
             int _type = T17;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:13:5: ( 'true' )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:13:7: 'true'
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:13:5: ( '[' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:13:7: '['
             {
-            match("true"); 
-
+            match('['); 
 
             }
 
@@ -114,8 +116,63 @@
     public final void mT18() throws RecognitionException {
         try {
             int _type = T18;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:14:5: ( 'false' )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:14:7: 'false'
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:14:5: ( ',' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:14:7: ','
+            {
+            match(','); 
+
+            }
+
+            this.type = _type;
+        }
+        finally {
+        }
+    }
+    // $ANTLR end T18
+
+    // $ANTLR start T19
+    public final void mT19() throws RecognitionException {
+        try {
+            int _type = T19;
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:15:5: ( ']' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:15:7: ']'
+            {
+            match(']'); 
+
+            }
+
+            this.type = _type;
+        }
+        finally {
+        }
+    }
+    // $ANTLR end T19
+
+    // $ANTLR start T20
+    public final void mT20() throws RecognitionException {
+        try {
+            int _type = T20;
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:16:5: ( 'true' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:16:7: 'true'
+            {
+            match("true"); 
+
+
+            }
+
+            this.type = _type;
+        }
+        finally {
+        }
+    }
+    // $ANTLR end T20
+
+    // $ANTLR start T21
+    public final void mT21() throws RecognitionException {
+        try {
+            int _type = T21;
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:17:5: ( 'false' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:17:7: 'false'
             {
             match("false"); 
 
@@ -127,16 +184,16 @@
         finally {
         }
     }
-    // $ANTLR end T18
+    // $ANTLR end T21
 
     // $ANTLR start RULE_INTEGER
     public final void mRULE_INTEGER() throws RecognitionException {
         try {
             int _type = RULE_INTEGER;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:634:14: ( ( '-' )? ( '0' .. '9' )+ )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:634:16: ( '-' )? ( '0' .. '9' )+
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:866:14: ( ( '-' )? ( '0' .. '9' )+ )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:866:16: ( '-' )? ( '0' .. '9' )+
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:634:16: ( '-' )?
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:866:16: ( '-' )?
             int alt1=2;
             int LA1_0 = input.LA(1);
 
@@ -145,7 +202,7 @@
             }
             switch (alt1) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:634:16: '-'
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:866:16: '-'
                     {
                     match('-'); 
 
@@ -154,7 +211,7 @@
 
             }
 
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:634:21: ( '0' .. '9' )+
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:866:21: ( '0' .. '9' )+
             int cnt2=0;
             loop2:
             do {
@@ -168,7 +225,7 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:634:22: '0' .. '9'
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:866:22: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -198,10 +255,10 @@
     public final void mRULE_REAL() throws RecognitionException {
         try {
             int _type = RULE_REAL;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:636:11: ( ( '-' )? ( '0' .. '9' )* '.' ( '0' .. '9' )* )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:636:13: ( '-' )? ( '0' .. '9' )* '.' ( '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:868:11: ( ( '-' )? ( '0' .. '9' )* '.' ( '0' .. '9' )* )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:868:13: ( '-' )? ( '0' .. '9' )* '.' ( '0' .. '9' )*
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:636:13: ( '-' )?
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:868:13: ( '-' )?
             int alt3=2;
             int LA3_0 = input.LA(1);
 
@@ -210,7 +267,7 @@
             }
             switch (alt3) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:636:13: '-'
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:868:13: '-'
                     {
                     match('-'); 
 
@@ -219,7 +276,7 @@
 
             }
 
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:636:18: ( '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:868:18: ( '0' .. '9' )*
             loop4:
             do {
                 int alt4=2;
@@ -232,7 +289,7 @@
 
                 switch (alt4) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:636:19: '0' .. '9'
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:868:19: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -245,7 +302,7 @@
             } while (true);
 
             match('.'); 
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:636:34: ( '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:868:34: ( '0' .. '9' )*
             loop5:
             do {
                 int alt5=2;
@@ -258,7 +315,7 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:636:35: '0' .. '9'
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:868:35: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -284,11 +341,11 @@
     public final void mRULE_DESC_STRING() throws RecognitionException {
         try {
             int _type = RULE_DESC_STRING;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:638:18: ( '\\u00AB' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )* '\\u00BB' )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:638:20: '\\u00AB' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )* '\\u00BB'
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:870:18: ( '\\u00AB' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )* '\\u00BB' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:870:20: '\\u00AB' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )* '\\u00BB'
             {
             match('\u00AB'); 
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:638:29: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )*
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:870:29: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' ) | ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) ) )*
             loop6:
             do {
                 int alt6=3;
@@ -304,7 +361,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:638:30: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' )
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:870:30: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\\u00AB' | '\\u00BB' | '\\\\' )
             	    {
             	    match('\\'); 
             	    if ( input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t'||input.LA(1)=='\u00AB'||input.LA(1)=='\u00BB' ) {
@@ -321,7 +378,7 @@
             	    }
             	    break;
             	case 2 :
-            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:638:80: ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) )
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:870:80: ~ ( ( '\\\\' | '\\u00AB' | '\\u00BB' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\u00AA')||(input.LA(1)>='\u00AC' && input.LA(1)<='\u00BA')||(input.LA(1)>='\u00BC' && input.LA(1)<='\uFFFE') ) {
             	        input.consume();
@@ -357,10 +414,10 @@
     public final void mRULE_ID() throws RecognitionException {
         try {
             int _type = RULE_ID;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:640:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:640:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:872:9: ( ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )* )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:872:11: ( '^' )? ( 'a' .. 'z' | 'A' .. 'Z' | '_' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:640:11: ( '^' )?
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:872:11: ( '^' )?
             int alt7=2;
             int LA7_0 = input.LA(1);
 
@@ -369,7 +426,7 @@
             }
             switch (alt7) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:640:11: '^'
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:872:11: '^'
                     {
                     match('^'); 
 
@@ -388,7 +445,7 @@
                 recover(mse);    throw mse;
             }
 
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:640:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:872:40: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' )*
             loop8:
             do {
                 int alt8=2;
@@ -436,10 +493,10 @@
     public final void mRULE_INT() throws RecognitionException {
         try {
             int _type = RULE_INT;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:642:10: ( ( '0' .. '9' )+ )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:642:12: ( '0' .. '9' )+
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:874:10: ( ( '0' .. '9' )+ )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:874:12: ( '0' .. '9' )+
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:642:12: ( '0' .. '9' )+
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:874:12: ( '0' .. '9' )+
             int cnt9=0;
             loop9:
             do {
@@ -453,7 +510,7 @@
 
                 switch (alt9) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:642:13: '0' .. '9'
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:874:13: '0' .. '9'
             	    {
             	    matchRange('0','9'); 
 
@@ -483,10 +540,10 @@
     public final void mRULE_STRING() throws RecognitionException {
         try {
             int _type = RULE_STRING;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:13: ( ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )
             int alt12=2;
             int LA12_0 = input.LA(1);
 
@@ -498,16 +555,16 @@
             }
             else {
                 NoViableAltException nvae =
-                    new NoViableAltException("644:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )", 12, 0, input);
+                    new NoViableAltException("876:15: ( '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"' | '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\'' )", 12, 0, input);
 
                 throw nvae;
             }
             switch (alt12) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:16: '\"' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )* '\"'
                     {
                     match('\"'); 
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:20: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\"' ) ) )*
                     loop10:
                     do {
                         int alt10=3;
@@ -523,7 +580,7 @@
 
                         switch (alt10) {
                     	case 1 :
-                    	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:21: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t' ) {
@@ -540,7 +597,7 @@
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:62: ~ ( ( '\\\\' | '\"' ) )
+                    	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:62: ~ ( ( '\\\\' | '\"' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
                     	        input.consume();
@@ -566,10 +623,10 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:82: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:82: '\\'' ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )* '\\''
                     {
                     match('\''); 
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:87: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:87: ( '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' ) | ~ ( ( '\\\\' | '\\'' ) ) )*
                     loop11:
                     do {
                         int alt11=3;
@@ -585,7 +642,7 @@
 
                         switch (alt11) {
                     	case 1 :
-                    	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:88: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' )
+                    	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:88: '\\\\' ( 'b' | 't' | 'n' | 'f' | 'r' | '\"' | '\\'' | '\\\\' )
                     	    {
                     	    match('\\'); 
                     	    if ( input.LA(1)=='\"'||input.LA(1)=='\''||input.LA(1)=='\\'||input.LA(1)=='b'||input.LA(1)=='f'||input.LA(1)=='n'||input.LA(1)=='r'||input.LA(1)=='t' ) {
@@ -602,7 +659,7 @@
                     	    }
                     	    break;
                     	case 2 :
-                    	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:644:129: ~ ( ( '\\\\' | '\\'' ) )
+                    	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:876:129: ~ ( ( '\\\\' | '\\'' ) )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
                     	        input.consume();
@@ -644,12 +701,12 @@
     public final void mRULE_ML_COMMENT() throws RecognitionException {
         try {
             int _type = RULE_ML_COMMENT;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:646:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:646:19: '/*' ( options {greedy=false; } : . )* '*/'
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:878:17: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:878:19: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*"); 
 
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:646:24: ( options {greedy=false; } : . )*
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:878:24: ( options {greedy=false; } : . )*
             loop13:
             do {
                 int alt13=2;
@@ -674,7 +731,7 @@
 
                 switch (alt13) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:646:52: .
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:878:52: .
             	    {
             	    matchAny(); 
 
@@ -702,12 +759,12 @@
     public final void mRULE_SL_COMMENT() throws RecognitionException {
         try {
             int _type = RULE_SL_COMMENT;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:648:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:648:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:880:17: ( '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )? )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:880:19: '//' (~ ( ( '\\n' | '\\r' ) ) )* ( ( '\\r' )? '\\n' )?
             {
             match("//"); 
 
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:648:24: (~ ( ( '\\n' | '\\r' ) ) )*
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:880:24: (~ ( ( '\\n' | '\\r' ) ) )*
             loop14:
             do {
                 int alt14=2;
@@ -720,7 +777,7 @@
 
                 switch (alt14) {
             	case 1 :
-            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:648:24: ~ ( ( '\\n' | '\\r' ) )
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:880:24: ~ ( ( '\\n' | '\\r' ) )
             	    {
             	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='\t')||(input.LA(1)>='\u000B' && input.LA(1)<='\f')||(input.LA(1)>='\u000E' && input.LA(1)<='\uFFFE') ) {
             	        input.consume();
@@ -741,7 +798,7 @@
                 }
             } while (true);
 
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:648:40: ( ( '\\r' )? '\\n' )?
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:880:40: ( ( '\\r' )? '\\n' )?
             int alt16=2;
             int LA16_0 = input.LA(1);
 
@@ -750,9 +807,9 @@
             }
             switch (alt16) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:648:41: ( '\\r' )? '\\n'
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:880:41: ( '\\r' )? '\\n'
                     {
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:648:41: ( '\\r' )?
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:880:41: ( '\\r' )?
                     int alt15=2;
                     int LA15_0 = input.LA(1);
 
@@ -761,7 +818,7 @@
                     }
                     switch (alt15) {
                         case 1 :
-                            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:648:41: '\\r'
+                            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:880:41: '\\r'
                             {
                             match('\r'); 
 
@@ -791,10 +848,10 @@
     public final void mRULE_WS() throws RecognitionException {
         try {
             int _type = RULE_WS;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:650:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:650:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:882:9: ( ( ' ' | '\\t' | '\\r' | '\\n' )+ )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:882:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:650:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:882:11: ( ' ' | '\\t' | '\\r' | '\\n' )+
             int cnt17=0;
             loop17:
             do {
@@ -847,8 +904,8 @@
     public final void mRULE_ANY_OTHER() throws RecognitionException {
         try {
             int _type = RULE_ANY_OTHER;
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:652:16: ( . )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:652:18: .
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:884:16: ( . )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:884:18: .
             {
             matchAny(); 
 
@@ -862,8 +919,8 @@
     // $ANTLR end RULE_ANY_OTHER
 
     public void mTokens() throws RecognitionException {
-        // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:8: ( T14 | T15 | T16 | T17 | T18 | RULE_INTEGER | RULE_REAL | RULE_DESC_STRING | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
-        int alt18=15;
+        // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:8: ( T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | RULE_INTEGER | RULE_REAL | RULE_DESC_STRING | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER )
+        int alt18=18;
         alt18 = dfa18.predict(input);
         switch (alt18) {
             case 1 :
@@ -902,70 +959,91 @@
                 }
                 break;
             case 6 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:30: RULE_INTEGER
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:30: T19
+                {
+                mT19(); 
+
+                }
+                break;
+            case 7 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:34: T20
+                {
+                mT20(); 
+
+                }
+                break;
+            case 8 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:38: T21
+                {
+                mT21(); 
+
+                }
+                break;
+            case 9 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:42: RULE_INTEGER
                 {
                 mRULE_INTEGER(); 
 
                 }
                 break;
-            case 7 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:43: RULE_REAL
+            case 10 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:55: RULE_REAL
                 {
                 mRULE_REAL(); 
 
                 }
                 break;
-            case 8 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:53: RULE_DESC_STRING
+            case 11 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:65: RULE_DESC_STRING
                 {
                 mRULE_DESC_STRING(); 
 
                 }
                 break;
-            case 9 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:70: RULE_ID
+            case 12 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:82: RULE_ID
                 {
                 mRULE_ID(); 
 
                 }
                 break;
-            case 10 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:78: RULE_INT
+            case 13 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:90: RULE_INT
                 {
                 mRULE_INT(); 
 
                 }
                 break;
-            case 11 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:87: RULE_STRING
+            case 14 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:99: RULE_STRING
                 {
                 mRULE_STRING(); 
 
                 }
                 break;
-            case 12 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:99: RULE_ML_COMMENT
+            case 15 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:111: RULE_ML_COMMENT
                 {
                 mRULE_ML_COMMENT(); 
 
                 }
                 break;
-            case 13 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:115: RULE_SL_COMMENT
+            case 16 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:127: RULE_SL_COMMENT
                 {
                 mRULE_SL_COMMENT(); 
 
                 }
                 break;
-            case 14 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:131: RULE_WS
+            case 17 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:143: RULE_WS
                 {
                 mRULE_WS(); 
 
                 }
                 break;
-            case 15 :
-                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:139: RULE_ANY_OTHER
+            case 18 :
+                // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:1:151: RULE_ANY_OTHER
                 {
                 mRULE_ANY_OTHER(); 
 
@@ -979,86 +1057,94 @@
 
     protected DFA18 dfa18 = new DFA18(this);
     static final String DFA18_eotS =
-        "\1\uffff\2\22\1\uffff\2\22\1\20\1\31\1\uffff\2\20\1\uffff\3\20\2"+
-        "\uffff\1\22\1\uffff\1\22\1\uffff\2\22\1\31\2\uffff\1\31\5\uffff"+
-        "\6\22\1\52\1\22\1\54\1\22\1\uffff\1\56\1\uffff\1\22\1\uffff\5\22"+
-        "\1\65\1\uffff";
+        "\1\uffff\2\25\4\uffff\2\25\1\23\1\40\1\uffff\2\23\1\uffff\3\23\2"+
+        "\uffff\1\25\1\uffff\1\25\4\uffff\2\25\1\40\1\uffff\1\40\6\uffff"+
+        "\6\25\1\60\1\25\1\62\1\25\1\uffff\1\64\1\uffff\1\25\1\uffff\5\25"+
+        "\1\73\1\uffff";
     static final String DFA18_eofS =
-        "\66\uffff";
+        "\74\uffff";
     static final String DFA18_minS =
-        "\1\0\1\157\1\156\1\uffff\1\162\1\141\2\56\1\uffff\1\0\1\101\1\uffff"+
-        "\2\0\1\52\2\uffff\1\144\1\uffff\1\143\1\uffff\1\165\1\154\1\56\2"+
-        "\uffff\1\56\5\uffff\1\145\1\157\1\145\1\163\1\154\1\162\1\60\1\145"+
+        "\1\0\1\157\1\156\4\uffff\1\162\1\141\2\56\1\uffff\1\0\1\101\1\uffff"+
+        "\2\0\1\52\2\uffff\1\144\1\uffff\1\143\4\uffff\1\165\1\154\1\56\1"+
+        "\uffff\1\56\6\uffff\1\145\1\157\1\145\1\163\1\154\1\162\1\60\1\145"+
         "\1\60\1\160\1\uffff\1\60\1\uffff\1\157\1\uffff\1\162\1\141\1\164"+
         "\1\145\1\163\1\60\1\uffff";
     static final String DFA18_maxS =
-        "\1\ufffe\1\157\1\156\1\uffff\1\162\1\141\2\71\1\uffff\1\ufffe\1"+
-        "\172\1\uffff\2\ufffe\1\57\2\uffff\1\144\1\uffff\1\143\1\uffff\1"+
-        "\165\1\154\1\71\2\uffff\1\71\5\uffff\1\145\1\157\1\145\1\163\1\154"+
+        "\1\ufffe\1\157\1\156\4\uffff\1\162\1\141\2\71\1\uffff\1\ufffe\1"+
+        "\172\1\uffff\2\ufffe\1\57\2\uffff\1\144\1\uffff\1\143\4\uffff\1"+
+        "\165\1\154\1\71\1\uffff\1\71\6\uffff\1\145\1\157\1\145\1\163\1\154"+
         "\1\162\1\172\1\145\1\172\1\160\1\uffff\1\172\1\uffff\1\157\1\uffff"+
         "\1\162\1\141\1\164\1\145\1\163\1\172\1\uffff";
     static final String DFA18_acceptS =
-        "\3\uffff\1\3\4\uffff\1\7\2\uffff\1\11\3\uffff\1\16\1\17\1\uffff"+
-        "\1\11\1\uffff\1\3\3\uffff\1\7\1\6\1\uffff\1\10\1\13\1\15\1\14\1"+
-        "\16\12\uffff\1\4\1\uffff\1\1\1\uffff\1\5\6\uffff\1\2";
+        "\3\uffff\1\3\1\4\1\5\1\6\4\uffff\1\12\2\uffff\1\14\3\uffff\1\21"+
+        "\1\22\1\uffff\1\14\1\uffff\1\3\1\4\1\5\1\6\3\uffff\1\12\1\uffff"+
+        "\1\11\1\13\1\16\1\20\1\17\1\21\12\uffff\1\7\1\uffff\1\1\1\uffff"+
+        "\1\10\6\uffff\1\2";
     static final String DFA18_specialS =
-        "\66\uffff}>";
+        "\74\uffff}>";
     static final String[] DFA18_transitionS = {
-            "\11\20\2\17\2\20\1\17\22\20\1\17\1\20\1\14\4\20\1\15\5\20\1"+
-            "\6\1\10\1\16\12\7\3\20\1\3\3\20\32\13\3\20\1\12\1\13\1\20\5"+
-            "\13\1\5\2\13\1\2\3\13\1\1\6\13\1\4\6\13\60\20\1\11\uff53\20",
-            "\1\21",
-            "\1\23",
-            "",
-            "\1\25",
+            "\11\23\2\22\2\23\1\22\22\23\1\22\1\23\1\17\4\23\1\20\4\23\1"+
+            "\5\1\11\1\13\1\21\12\12\3\23\1\3\3\23\32\16\1\4\1\23\1\6\1\15"+
+            "\1\16\1\23\5\16\1\10\2\16\1\2\3\16\1\1\6\16\1\7\6\16\60\23\1"+
+            "\14\uff53\23",
+            "\1\24",
             "\1\26",
-            "\1\30\1\uffff\12\27",
-            "\1\30\1\uffff\12\32",
-            "",
-            "\u00ab\33\1\uffff\uff53\33",
-            "\32\22\4\uffff\1\22\1\uffff\32\22",
-            "",
-            "\uffff\34",
-            "\uffff\34",
-            "\1\36\4\uffff\1\35",
-            "",
-            "",
-            "\1\40",
-            "",
-            "\1\41",
-            "",
-            "\1\42",
-            "\1\43",
-            "\1\30\1\uffff\12\27",
-            "",
-            "",
-            "\1\30\1\uffff\12\32",
             "",
             "",
             "",
             "",
+            "\1\33",
+            "\1\34",
+            "\1\36\1\uffff\12\35",
+            "\1\36\1\uffff\12\37",
             "",
-            "\1\44",
-            "\1\45",
+            "\u00ab\41\1\uffff\uff53\41",
+            "\32\25\4\uffff\1\25\1\uffff\32\25",
+            "",
+            "\uffff\42",
+            "\uffff\42",
+            "\1\44\4\uffff\1\43",
+            "",
+            "",
             "\1\46",
+            "",
             "\1\47",
+            "",
+            "",
+            "",
+            "",
             "\1\50",
             "\1\51",
-            "\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
+            "\1\36\1\uffff\12\35",
+            "",
+            "\1\36\1\uffff\12\37",
+            "",
+            "",
+            "",
+            "",
+            "",
+            "",
+            "\1\52",
             "\1\53",
-            "\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
+            "\1\54",
             "\1\55",
-            "",
-            "\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
-            "",
+            "\1\56",
             "\1\57",
-            "",
-            "\1\60",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\61",
-            "\1\62",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             "\1\63",
-            "\1\64",
-            "\12\22\7\uffff\32\22\4\uffff\1\22\1\uffff\32\22",
+            "",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
+            "",
+            "\1\65",
+            "",
+            "\1\66",
+            "\1\67",
+            "\1\70",
+            "\1\71",
+            "\1\72",
+            "\12\25\7\uffff\32\25\4\uffff\1\25\1\uffff\32\25",
             ""
     };
 
@@ -1092,7 +1178,7 @@
             this.transition = DFA18_transition;
         }
         public String getDescription() {
-            return "1:1: Tokens : ( T14 | T15 | T16 | T17 | T18 | RULE_INTEGER | RULE_REAL | RULE_DESC_STRING | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
+            return "1:1: Tokens : ( T14 | T15 | T16 | T17 | T18 | T19 | T20 | T21 | RULE_INTEGER | RULE_REAL | RULE_DESC_STRING | RULE_ID | RULE_INT | RULE_STRING | RULE_ML_COMMENT | RULE_SL_COMMENT | RULE_WS | RULE_ANY_OTHER );";
         }
     }
  
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAParParser.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAParParser.java
index 16eb43b..df6f7a2 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAParParser.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAParParser.java
@@ -25,7 +25,7 @@
 @SuppressWarnings("all")
 public class InternalAParParser extends AbstractInternalAntlrParser {
     public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INTEGER", "RULE_REAL", "RULE_DESC_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'model'", "'incorporates'", "'='", "'true'", "'false'"
+        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "RULE_STRING", "RULE_ID", "RULE_INTEGER", "RULE_REAL", "RULE_DESC_STRING", "RULE_INT", "RULE_ML_COMMENT", "RULE_SL_COMMENT", "RULE_WS", "RULE_ANY_OTHER", "'model'", "'incorporates'", "'='", "'['", "','", "']'", "'true'", "'false'"
     };
     public static final int RULE_ID=5;
     public static final int RULE_STRING=4;
@@ -287,7 +287,7 @@
                 int alt3=2;
                 int LA3_0 = input.LA(1);
 
-                if ( (LA3_0==RULE_ID) ) {
+                if ( (LA3_0==RULE_ID||LA3_0==17) ) {
                     alt3=1;
                 }
 
@@ -593,37 +593,193 @@
 
 
     // $ANTLR start ruleParameter
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:308:1: ruleParameter returns [EObject current=null] : ( ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) ) ) ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:308:1: ruleParameter returns [EObject current=null] : (this_SingleParameter_0= ruleSingleParameter | this_SweepParameter_1= ruleSweepParameter | this_SweepLink_2= ruleSweepLink ) ;
     public final EObject ruleParameter() throws RecognitionException {
         EObject current = null;
 
+        EObject this_SingleParameter_0 = null;
+
+        EObject this_SweepParameter_1 = null;
+
+        EObject this_SweepLink_2 = null;
+
+
+         EObject temp=null; setCurrentLookahead(); resetLookahead(); 
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:313:6: ( (this_SingleParameter_0= ruleSingleParameter | this_SweepParameter_1= ruleSweepParameter | this_SweepLink_2= ruleSweepLink ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:314:1: (this_SingleParameter_0= ruleSingleParameter | this_SweepParameter_1= ruleSweepParameter | this_SweepLink_2= ruleSweepLink )
+            {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:314:1: (this_SingleParameter_0= ruleSingleParameter | this_SweepParameter_1= ruleSweepParameter | this_SweepLink_2= ruleSweepLink )
+            int alt4=3;
+            int LA4_0 = input.LA(1);
+
+            if ( (LA4_0==RULE_ID) ) {
+                int LA4_1 = input.LA(2);
+
+                if ( (LA4_1==16) ) {
+                    alt4=1;
+                }
+                else if ( (LA4_1==17) ) {
+                    alt4=2;
+                }
+                else {
+                    NoViableAltException nvae =
+                        new NoViableAltException("314:1: (this_SingleParameter_0= ruleSingleParameter | this_SweepParameter_1= ruleSweepParameter | this_SweepLink_2= ruleSweepLink )", 4, 1, input);
+
+                    throw nvae;
+                }
+            }
+            else if ( (LA4_0==17) ) {
+                alt4=3;
+            }
+            else {
+                NoViableAltException nvae =
+                    new NoViableAltException("314:1: (this_SingleParameter_0= ruleSingleParameter | this_SweepParameter_1= ruleSweepParameter | this_SweepLink_2= ruleSweepLink )", 4, 0, input);
+
+                throw nvae;
+            }
+            switch (alt4) {
+                case 1 :
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:315:5: this_SingleParameter_0= ruleSingleParameter
+                    {
+                     
+                            currentNode=createCompositeNode(grammarAccess.getParameterAccess().getSingleParameterParserRuleCall_0(), currentNode); 
+                        
+                    pushFollow(FOLLOW_ruleSingleParameter_in_ruleParameter495);
+                    this_SingleParameter_0=ruleSingleParameter();
+                    _fsp--;
+
+                     
+                            current = this_SingleParameter_0; 
+                            currentNode = currentNode.getParent();
+                        
+
+                    }
+                    break;
+                case 2 :
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:325:5: this_SweepParameter_1= ruleSweepParameter
+                    {
+                     
+                            currentNode=createCompositeNode(grammarAccess.getParameterAccess().getSweepParameterParserRuleCall_1(), currentNode); 
+                        
+                    pushFollow(FOLLOW_ruleSweepParameter_in_ruleParameter522);
+                    this_SweepParameter_1=ruleSweepParameter();
+                    _fsp--;
+
+                     
+                            current = this_SweepParameter_1; 
+                            currentNode = currentNode.getParent();
+                        
+
+                    }
+                    break;
+                case 3 :
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:335:5: this_SweepLink_2= ruleSweepLink
+                    {
+                     
+                            currentNode=createCompositeNode(grammarAccess.getParameterAccess().getSweepLinkParserRuleCall_2(), currentNode); 
+                        
+                    pushFollow(FOLLOW_ruleSweepLink_in_ruleParameter549);
+                    this_SweepLink_2=ruleSweepLink();
+                    _fsp--;
+
+                     
+                            current = this_SweepLink_2; 
+                            currentNode = currentNode.getParent();
+                        
+
+                    }
+                    break;
+
+            }
+
+
+            }
+
+             resetLookahead(); 
+                	lastConsumedNode = currentNode;
+                
+        }
+         
+            catch (RecognitionException re) { 
+                recover(input,re); 
+                appendSkippedTokens();
+            } 
+        finally {
+        }
+        return current;
+    }
+    // $ANTLR end ruleParameter
+
+
+    // $ANTLR start entryRuleSingleParameter
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:351:1: entryRuleSingleParameter returns [EObject current=null] : iv_ruleSingleParameter= ruleSingleParameter EOF ;
+    public final EObject entryRuleSingleParameter() throws RecognitionException {
+        EObject current = null;
+
+        EObject iv_ruleSingleParameter = null;
+
+
+        try {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:352:2: (iv_ruleSingleParameter= ruleSingleParameter EOF )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:353:2: iv_ruleSingleParameter= ruleSingleParameter EOF
+            {
+             currentNode = createCompositeNode(grammarAccess.getSingleParameterRule(), currentNode); 
+            pushFollow(FOLLOW_ruleSingleParameter_in_entryRuleSingleParameter584);
+            iv_ruleSingleParameter=ruleSingleParameter();
+            _fsp--;
+
+             current =iv_ruleSingleParameter; 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleSingleParameter594); 
+
+            }
+
+        }
+         
+            catch (RecognitionException re) { 
+                recover(input,re); 
+                appendSkippedTokens();
+            } 
+        finally {
+        }
+        return current;
+    }
+    // $ANTLR end entryRuleSingleParameter
+
+
+    // $ANTLR start ruleSingleParameter
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:360:1: ruleSingleParameter returns [EObject current=null] : ( ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) ) ) ;
+    public final EObject ruleSingleParameter() throws RecognitionException {
+        EObject current = null;
+
         EObject lv_value_2_0 = null;
 
 
          EObject temp=null; setCurrentLookahead(); resetLookahead(); 
             
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:313:6: ( ( ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) ) ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:314:1: ( ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:365:6: ( ( ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) ) ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:366:1: ( ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) ) )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:314:1: ( ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:314:2: ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:366:1: ( ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:366:2: ( ( RULE_ID ) ) '=' ( (lv_value_2_0= ruleValue ) )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:314:2: ( ( RULE_ID ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:315:1: ( RULE_ID )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:366:2: ( ( RULE_ID ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:367:1: ( RULE_ID )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:315:1: ( RULE_ID )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:316:3: RULE_ID
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:367:1: ( RULE_ID )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:368:3: RULE_ID
             {
 
             			if (current==null) {
-            	            current = factory.create(grammarAccess.getParameterRule().getType().getClassifier());
+            	            current = factory.create(grammarAccess.getSingleParameterRule().getType().getClassifier());
             	            associateNodeWithAstElement(currentNode, current);
             	        }
                     
-            match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleParameter491); 
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleSingleParameter637); 
 
-            		createLeafNode(grammarAccess.getParameterAccess().getAttributeSAttributeCrossReference_0_0(), "attribute"); 
+            		createLeafNode(grammarAccess.getSingleParameterAccess().getAttributeSAttributeCrossReference_0_0(), "attribute"); 
             	
 
             }
@@ -631,26 +787,26 @@
 
             }
 
-            match(input,16,FOLLOW_16_in_ruleParameter501); 
+            match(input,16,FOLLOW_16_in_ruleSingleParameter647); 
 
-                    createLeafNode(grammarAccess.getParameterAccess().getEqualsSignKeyword_1(), null); 
+                    createLeafNode(grammarAccess.getSingleParameterAccess().getEqualsSignKeyword_1(), null); 
                 
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:332:1: ( (lv_value_2_0= ruleValue ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:333:1: (lv_value_2_0= ruleValue )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:384:1: ( (lv_value_2_0= ruleValue ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:385:1: (lv_value_2_0= ruleValue )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:333:1: (lv_value_2_0= ruleValue )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:334:3: lv_value_2_0= ruleValue
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:385:1: (lv_value_2_0= ruleValue )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:386:3: lv_value_2_0= ruleValue
             {
              
-            	        currentNode=createCompositeNode(grammarAccess.getParameterAccess().getValueValueParserRuleCall_2_0(), currentNode); 
+            	        currentNode=createCompositeNode(grammarAccess.getSingleParameterAccess().getValueValueParserRuleCall_2_0(), currentNode); 
             	    
-            pushFollow(FOLLOW_ruleValue_in_ruleParameter522);
+            pushFollow(FOLLOW_ruleValue_in_ruleSingleParameter668);
             lv_value_2_0=ruleValue();
             _fsp--;
 
 
             	        if (current==null) {
-            	            current = factory.create(grammarAccess.getParameterRule().getType().getClassifier());
+            	            current = factory.create(grammarAccess.getSingleParameterRule().getType().getClassifier());
             	            associateNodeWithAstElement(currentNode.getParent(), current);
             	        }
             	        try {
@@ -690,11 +846,371 @@
         }
         return current;
     }
-    // $ANTLR end ruleParameter
+    // $ANTLR end ruleSingleParameter
+
+
+    // $ANTLR start entryRuleSweepParameter
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:416:1: entryRuleSweepParameter returns [EObject current=null] : iv_ruleSweepParameter= ruleSweepParameter EOF ;
+    public final EObject entryRuleSweepParameter() throws RecognitionException {
+        EObject current = null;
+
+        EObject iv_ruleSweepParameter = null;
+
+
+        try {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:417:2: (iv_ruleSweepParameter= ruleSweepParameter EOF )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:418:2: iv_ruleSweepParameter= ruleSweepParameter EOF
+            {
+             currentNode = createCompositeNode(grammarAccess.getSweepParameterRule(), currentNode); 
+            pushFollow(FOLLOW_ruleSweepParameter_in_entryRuleSweepParameter704);
+            iv_ruleSweepParameter=ruleSweepParameter();
+            _fsp--;
+
+             current =iv_ruleSweepParameter; 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleSweepParameter714); 
+
+            }
+
+        }
+         
+            catch (RecognitionException re) { 
+                recover(input,re); 
+                appendSkippedTokens();
+            } 
+        finally {
+        }
+        return current;
+    }
+    // $ANTLR end entryRuleSweepParameter
+
+
+    // $ANTLR start ruleSweepParameter
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:425:1: ruleSweepParameter returns [EObject current=null] : ( ( ( RULE_ID ) ) '[' ( (lv_startValue_2_0= ruleValue ) ) ',' ( (lv_endValue_4_0= ruleValue ) ) ',' ( (lv_increment_6_0= ruleValue ) ) ']' ) ;
+    public final EObject ruleSweepParameter() throws RecognitionException {
+        EObject current = null;
+
+        EObject lv_startValue_2_0 = null;
+
+        EObject lv_endValue_4_0 = null;
+
+        EObject lv_increment_6_0 = null;
+
+
+         EObject temp=null; setCurrentLookahead(); resetLookahead(); 
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:430:6: ( ( ( ( RULE_ID ) ) '[' ( (lv_startValue_2_0= ruleValue ) ) ',' ( (lv_endValue_4_0= ruleValue ) ) ',' ( (lv_increment_6_0= ruleValue ) ) ']' ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:431:1: ( ( ( RULE_ID ) ) '[' ( (lv_startValue_2_0= ruleValue ) ) ',' ( (lv_endValue_4_0= ruleValue ) ) ',' ( (lv_increment_6_0= ruleValue ) ) ']' )
+            {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:431:1: ( ( ( RULE_ID ) ) '[' ( (lv_startValue_2_0= ruleValue ) ) ',' ( (lv_endValue_4_0= ruleValue ) ) ',' ( (lv_increment_6_0= ruleValue ) ) ']' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:431:2: ( ( RULE_ID ) ) '[' ( (lv_startValue_2_0= ruleValue ) ) ',' ( (lv_endValue_4_0= ruleValue ) ) ',' ( (lv_increment_6_0= ruleValue ) ) ']'
+            {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:431:2: ( ( RULE_ID ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:432:1: ( RULE_ID )
+            {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:432:1: ( RULE_ID )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:433:3: RULE_ID
+            {
+
+            			if (current==null) {
+            	            current = factory.create(grammarAccess.getSweepParameterRule().getType().getClassifier());
+            	            associateNodeWithAstElement(currentNode, current);
+            	        }
+                    
+            match(input,RULE_ID,FOLLOW_RULE_ID_in_ruleSweepParameter757); 
+
+            		createLeafNode(grammarAccess.getSweepParameterAccess().getAttributeSAttributeCrossReference_0_0(), "attribute"); 
+            	
+
+            }
+
+
+            }
+
+            match(input,17,FOLLOW_17_in_ruleSweepParameter767); 
+
+                    createLeafNode(grammarAccess.getSweepParameterAccess().getLeftSquareBracketKeyword_1(), null); 
+                
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:449:1: ( (lv_startValue_2_0= ruleValue ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:450:1: (lv_startValue_2_0= ruleValue )
+            {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:450:1: (lv_startValue_2_0= ruleValue )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:451:3: lv_startValue_2_0= ruleValue
+            {
+             
+            	        currentNode=createCompositeNode(grammarAccess.getSweepParameterAccess().getStartValueValueParserRuleCall_2_0(), currentNode); 
+            	    
+            pushFollow(FOLLOW_ruleValue_in_ruleSweepParameter788);
+            lv_startValue_2_0=ruleValue();
+            _fsp--;
+
+
+            	        if (current==null) {
+            	            current = factory.create(grammarAccess.getSweepParameterRule().getType().getClassifier());
+            	            associateNodeWithAstElement(currentNode.getParent(), current);
+            	        }
+            	        try {
+            	       		set(
+            	       			current, 
+            	       			"startValue",
+            	        		lv_startValue_2_0, 
+            	        		"Value", 
+            	        		currentNode);
+            	        } catch (ValueConverterException vce) {
+            				handleValueConverterException(vce);
+            	        }
+            	        currentNode = currentNode.getParent();
+            	    
+
+            }
+
+
+            }
+
+            match(input,18,FOLLOW_18_in_ruleSweepParameter798); 
+
+                    createLeafNode(grammarAccess.getSweepParameterAccess().getCommaKeyword_3(), null); 
+                
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:477:1: ( (lv_endValue_4_0= ruleValue ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:478:1: (lv_endValue_4_0= ruleValue )
+            {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:478:1: (lv_endValue_4_0= ruleValue )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:479:3: lv_endValue_4_0= ruleValue
+            {
+             
+            	        currentNode=createCompositeNode(grammarAccess.getSweepParameterAccess().getEndValueValueParserRuleCall_4_0(), currentNode); 
+            	    
+            pushFollow(FOLLOW_ruleValue_in_ruleSweepParameter819);
+            lv_endValue_4_0=ruleValue();
+            _fsp--;
+
+
+            	        if (current==null) {
+            	            current = factory.create(grammarAccess.getSweepParameterRule().getType().getClassifier());
+            	            associateNodeWithAstElement(currentNode.getParent(), current);
+            	        }
+            	        try {
+            	       		set(
+            	       			current, 
+            	       			"endValue",
+            	        		lv_endValue_4_0, 
+            	        		"Value", 
+            	        		currentNode);
+            	        } catch (ValueConverterException vce) {
+            				handleValueConverterException(vce);
+            	        }
+            	        currentNode = currentNode.getParent();
+            	    
+
+            }
+
+
+            }
+
+            match(input,18,FOLLOW_18_in_ruleSweepParameter829); 
+
+                    createLeafNode(grammarAccess.getSweepParameterAccess().getCommaKeyword_5(), null); 
+                
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:505:1: ( (lv_increment_6_0= ruleValue ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:506:1: (lv_increment_6_0= ruleValue )
+            {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:506:1: (lv_increment_6_0= ruleValue )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:507:3: lv_increment_6_0= ruleValue
+            {
+             
+            	        currentNode=createCompositeNode(grammarAccess.getSweepParameterAccess().getIncrementValueParserRuleCall_6_0(), currentNode); 
+            	    
+            pushFollow(FOLLOW_ruleValue_in_ruleSweepParameter850);
+            lv_increment_6_0=ruleValue();
+            _fsp--;
+
+
+            	        if (current==null) {
+            	            current = factory.create(grammarAccess.getSweepParameterRule().getType().getClassifier());
+            	            associateNodeWithAstElement(currentNode.getParent(), current);
+            	        }
+            	        try {
+            	       		set(
+            	       			current, 
+            	       			"increment",
+            	        		lv_increment_6_0, 
+            	        		"Value", 
+            	        		currentNode);
+            	        } catch (ValueConverterException vce) {
+            				handleValueConverterException(vce);
+            	        }
+            	        currentNode = currentNode.getParent();
+            	    
+
+            }
+
+
+            }
+
+            match(input,19,FOLLOW_19_in_ruleSweepParameter860); 
+
+                    createLeafNode(grammarAccess.getSweepParameterAccess().getRightSquareBracketKeyword_7(), null); 
+                
+
+            }
+
+
+            }
+
+             resetLookahead(); 
+                	lastConsumedNode = currentNode;
+                
+        }
+         
+            catch (RecognitionException re) { 
+                recover(input,re); 
+                appendSkippedTokens();
+            } 
+        finally {
+        }
+        return current;
+    }
+    // $ANTLR end ruleSweepParameter
+
+
+    // $ANTLR start entryRuleSweepLink
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:541:1: entryRuleSweepLink returns [EObject current=null] : iv_ruleSweepLink= ruleSweepLink EOF ;
+    public final EObject entryRuleSweepLink() throws RecognitionException {
+        EObject current = null;
+
+        EObject iv_ruleSweepLink = null;
+
+
+        try {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:542:2: (iv_ruleSweepLink= ruleSweepLink EOF )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:543:2: iv_ruleSweepLink= ruleSweepLink EOF
+            {
+             currentNode = createCompositeNode(grammarAccess.getSweepLinkRule(), currentNode); 
+            pushFollow(FOLLOW_ruleSweepLink_in_entryRuleSweepLink896);
+            iv_ruleSweepLink=ruleSweepLink();
+            _fsp--;
+
+             current =iv_ruleSweepLink; 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleSweepLink906); 
+
+            }
+
+        }
+         
+            catch (RecognitionException re) { 
+                recover(input,re); 
+                appendSkippedTokens();
+            } 
+        finally {
+        }
+        return current;
+    }
+    // $ANTLR end entryRuleSweepLink
+
+
+    // $ANTLR start ruleSweepLink
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:550:1: ruleSweepLink returns [EObject current=null] : ( '[' ( (lv_parameters_1_0= ruleParameter ) )* ']' ) ;
+    public final EObject ruleSweepLink() throws RecognitionException {
+        EObject current = null;
+
+        EObject lv_parameters_1_0 = null;
+
+
+         EObject temp=null; setCurrentLookahead(); resetLookahead(); 
+            
+        try {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:555:6: ( ( '[' ( (lv_parameters_1_0= ruleParameter ) )* ']' ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:556:1: ( '[' ( (lv_parameters_1_0= ruleParameter ) )* ']' )
+            {
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:556:1: ( '[' ( (lv_parameters_1_0= ruleParameter ) )* ']' )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:556:3: '[' ( (lv_parameters_1_0= ruleParameter ) )* ']'
+            {
+            match(input,17,FOLLOW_17_in_ruleSweepLink941); 
+
+                    createLeafNode(grammarAccess.getSweepLinkAccess().getLeftSquareBracketKeyword_0(), null); 
+                
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:560:1: ( (lv_parameters_1_0= ruleParameter ) )*
+            loop5:
+            do {
+                int alt5=2;
+                int LA5_0 = input.LA(1);
+
+                if ( (LA5_0==RULE_ID||LA5_0==17) ) {
+                    alt5=1;
+                }
+
+
+                switch (alt5) {
+            	case 1 :
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:561:1: (lv_parameters_1_0= ruleParameter )
+            	    {
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:561:1: (lv_parameters_1_0= ruleParameter )
+            	    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:562:3: lv_parameters_1_0= ruleParameter
+            	    {
+            	     
+            	    	        currentNode=createCompositeNode(grammarAccess.getSweepLinkAccess().getParametersParameterParserRuleCall_1_0(), currentNode); 
+            	    	    
+            	    pushFollow(FOLLOW_ruleParameter_in_ruleSweepLink962);
+            	    lv_parameters_1_0=ruleParameter();
+            	    _fsp--;
+
+
+            	    	        if (current==null) {
+            	    	            current = factory.create(grammarAccess.getSweepLinkRule().getType().getClassifier());
+            	    	            associateNodeWithAstElement(currentNode.getParent(), current);
+            	    	        }
+            	    	        try {
+            	    	       		add(
+            	    	       			current, 
+            	    	       			"parameters",
+            	    	        		lv_parameters_1_0, 
+            	    	        		"Parameter", 
+            	    	        		currentNode);
+            	    	        } catch (ValueConverterException vce) {
+            	    				handleValueConverterException(vce);
+            	    	        }
+            	    	        currentNode = currentNode.getParent();
+            	    	    
+
+            	    }
+
+
+            	    }
+            	    break;
+
+            	default :
+            	    break loop5;
+                }
+            } while (true);
+
+            match(input,19,FOLLOW_19_in_ruleSweepLink973); 
+
+                    createLeafNode(grammarAccess.getSweepLinkAccess().getRightSquareBracketKeyword_2(), null); 
+                
+
+            }
+
+
+            }
+
+             resetLookahead(); 
+                	lastConsumedNode = currentNode;
+                
+        }
+         
+            catch (RecognitionException re) { 
+                recover(input,re); 
+                appendSkippedTokens();
+            } 
+        finally {
+        }
+        return current;
+    }
+    // $ANTLR end ruleSweepLink
 
 
     // $ANTLR start entryRuleValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:364:1: entryRuleValue returns [EObject current=null] : iv_ruleValue= ruleValue EOF ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:596:1: entryRuleValue returns [EObject current=null] : iv_ruleValue= ruleValue EOF ;
     public final EObject entryRuleValue() throws RecognitionException {
         EObject current = null;
 
@@ -702,16 +1218,16 @@
 
 
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:365:2: (iv_ruleValue= ruleValue EOF )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:366:2: iv_ruleValue= ruleValue EOF
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:597:2: (iv_ruleValue= ruleValue EOF )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:598:2: iv_ruleValue= ruleValue EOF
             {
              currentNode = createCompositeNode(grammarAccess.getValueRule(), currentNode); 
-            pushFollow(FOLLOW_ruleValue_in_entryRuleValue558);
+            pushFollow(FOLLOW_ruleValue_in_entryRuleValue1009);
             iv_ruleValue=ruleValue();
             _fsp--;
 
              current =iv_ruleValue; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleValue568); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleValue1019); 
 
             }
 
@@ -729,7 +1245,7 @@
 
 
     // $ANTLR start ruleValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:373:1: ruleValue returns [EObject current=null] : (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue ) ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:605:1: ruleValue returns [EObject current=null] : (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue ) ;
     public final EObject ruleValue() throws RecognitionException {
         EObject current = null;
 
@@ -745,48 +1261,48 @@
          EObject temp=null; setCurrentLookahead(); resetLookahead(); 
             
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:378:6: ( (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:379:1: (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:610:6: ( (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:611:1: (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:379:1: (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue )
-            int alt4=4;
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:611:1: (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue )
+            int alt6=4;
             switch ( input.LA(1) ) {
             case RULE_INTEGER:
                 {
-                alt4=1;
+                alt6=1;
                 }
                 break;
             case RULE_STRING:
                 {
-                alt4=2;
+                alt6=2;
                 }
                 break;
             case RULE_REAL:
                 {
-                alt4=3;
+                alt6=3;
                 }
                 break;
-            case 17:
-            case 18:
+            case 20:
+            case 21:
                 {
-                alt4=4;
+                alt6=4;
                 }
                 break;
             default:
                 NoViableAltException nvae =
-                    new NoViableAltException("379:1: (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue )", 4, 0, input);
+                    new NoViableAltException("611:1: (this_IntValue_0= ruleIntValue | this_StringValue_1= ruleStringValue | this_RealValue_2= ruleRealValue | this_BooleanValue_3= ruleBooleanValue )", 6, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt4) {
+            switch (alt6) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:380:5: this_IntValue_0= ruleIntValue
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:612:5: this_IntValue_0= ruleIntValue
                     {
                      
                             currentNode=createCompositeNode(grammarAccess.getValueAccess().getIntValueParserRuleCall_0(), currentNode); 
                         
-                    pushFollow(FOLLOW_ruleIntValue_in_ruleValue615);
+                    pushFollow(FOLLOW_ruleIntValue_in_ruleValue1066);
                     this_IntValue_0=ruleIntValue();
                     _fsp--;
 
@@ -798,12 +1314,12 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:390:5: this_StringValue_1= ruleStringValue
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:622:5: this_StringValue_1= ruleStringValue
                     {
                      
                             currentNode=createCompositeNode(grammarAccess.getValueAccess().getStringValueParserRuleCall_1(), currentNode); 
                         
-                    pushFollow(FOLLOW_ruleStringValue_in_ruleValue642);
+                    pushFollow(FOLLOW_ruleStringValue_in_ruleValue1093);
                     this_StringValue_1=ruleStringValue();
                     _fsp--;
 
@@ -815,12 +1331,12 @@
                     }
                     break;
                 case 3 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:400:5: this_RealValue_2= ruleRealValue
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:632:5: this_RealValue_2= ruleRealValue
                     {
                      
                             currentNode=createCompositeNode(grammarAccess.getValueAccess().getRealValueParserRuleCall_2(), currentNode); 
                         
-                    pushFollow(FOLLOW_ruleRealValue_in_ruleValue669);
+                    pushFollow(FOLLOW_ruleRealValue_in_ruleValue1120);
                     this_RealValue_2=ruleRealValue();
                     _fsp--;
 
@@ -832,12 +1348,12 @@
                     }
                     break;
                 case 4 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:410:5: this_BooleanValue_3= ruleBooleanValue
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:642:5: this_BooleanValue_3= ruleBooleanValue
                     {
                      
                             currentNode=createCompositeNode(grammarAccess.getValueAccess().getBooleanValueParserRuleCall_3(), currentNode); 
                         
-                    pushFollow(FOLLOW_ruleBooleanValue_in_ruleValue696);
+                    pushFollow(FOLLOW_ruleBooleanValue_in_ruleValue1147);
                     this_BooleanValue_3=ruleBooleanValue();
                     _fsp--;
 
@@ -871,7 +1387,7 @@
 
 
     // $ANTLR start entryRuleIntValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:426:1: entryRuleIntValue returns [EObject current=null] : iv_ruleIntValue= ruleIntValue EOF ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:658:1: entryRuleIntValue returns [EObject current=null] : iv_ruleIntValue= ruleIntValue EOF ;
     public final EObject entryRuleIntValue() throws RecognitionException {
         EObject current = null;
 
@@ -879,16 +1395,16 @@
 
 
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:427:2: (iv_ruleIntValue= ruleIntValue EOF )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:428:2: iv_ruleIntValue= ruleIntValue EOF
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:659:2: (iv_ruleIntValue= ruleIntValue EOF )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:660:2: iv_ruleIntValue= ruleIntValue EOF
             {
              currentNode = createCompositeNode(grammarAccess.getIntValueRule(), currentNode); 
-            pushFollow(FOLLOW_ruleIntValue_in_entryRuleIntValue731);
+            pushFollow(FOLLOW_ruleIntValue_in_entryRuleIntValue1182);
             iv_ruleIntValue=ruleIntValue();
             _fsp--;
 
              current =iv_ruleIntValue; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleIntValue741); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleIntValue1192); 
 
             }
 
@@ -906,7 +1422,7 @@
 
 
     // $ANTLR start ruleIntValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:435:1: ruleIntValue returns [EObject current=null] : ( (lv_value_0_0= RULE_INTEGER ) ) ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:667:1: ruleIntValue returns [EObject current=null] : ( (lv_value_0_0= RULE_INTEGER ) ) ;
     public final EObject ruleIntValue() throws RecognitionException {
         EObject current = null;
 
@@ -915,17 +1431,17 @@
          EObject temp=null; setCurrentLookahead(); resetLookahead(); 
             
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:440:6: ( ( (lv_value_0_0= RULE_INTEGER ) ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:441:1: ( (lv_value_0_0= RULE_INTEGER ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:672:6: ( ( (lv_value_0_0= RULE_INTEGER ) ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:673:1: ( (lv_value_0_0= RULE_INTEGER ) )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:441:1: ( (lv_value_0_0= RULE_INTEGER ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:442:1: (lv_value_0_0= RULE_INTEGER )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:673:1: ( (lv_value_0_0= RULE_INTEGER ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:674:1: (lv_value_0_0= RULE_INTEGER )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:442:1: (lv_value_0_0= RULE_INTEGER )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:443:3: lv_value_0_0= RULE_INTEGER
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:674:1: (lv_value_0_0= RULE_INTEGER )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:675:3: lv_value_0_0= RULE_INTEGER
             {
             lv_value_0_0=(Token)input.LT(1);
-            match(input,RULE_INTEGER,FOLLOW_RULE_INTEGER_in_ruleIntValue782); 
+            match(input,RULE_INTEGER,FOLLOW_RULE_INTEGER_in_ruleIntValue1233); 
 
             			createLeafNode(grammarAccess.getIntValueAccess().getValueINTEGERTerminalRuleCall_0(), "value"); 
             		
@@ -971,7 +1487,7 @@
 
 
     // $ANTLR start entryRuleRealValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:473:1: entryRuleRealValue returns [EObject current=null] : iv_ruleRealValue= ruleRealValue EOF ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:705:1: entryRuleRealValue returns [EObject current=null] : iv_ruleRealValue= ruleRealValue EOF ;
     public final EObject entryRuleRealValue() throws RecognitionException {
         EObject current = null;
 
@@ -979,16 +1495,16 @@
 
 
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:474:2: (iv_ruleRealValue= ruleRealValue EOF )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:475:2: iv_ruleRealValue= ruleRealValue EOF
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:706:2: (iv_ruleRealValue= ruleRealValue EOF )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:707:2: iv_ruleRealValue= ruleRealValue EOF
             {
              currentNode = createCompositeNode(grammarAccess.getRealValueRule(), currentNode); 
-            pushFollow(FOLLOW_ruleRealValue_in_entryRuleRealValue822);
+            pushFollow(FOLLOW_ruleRealValue_in_entryRuleRealValue1273);
             iv_ruleRealValue=ruleRealValue();
             _fsp--;
 
              current =iv_ruleRealValue; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleRealValue832); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleRealValue1283); 
 
             }
 
@@ -1006,7 +1522,7 @@
 
 
     // $ANTLR start ruleRealValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:482:1: ruleRealValue returns [EObject current=null] : ( (lv_value_0_0= RULE_REAL ) ) ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:714:1: ruleRealValue returns [EObject current=null] : ( (lv_value_0_0= RULE_REAL ) ) ;
     public final EObject ruleRealValue() throws RecognitionException {
         EObject current = null;
 
@@ -1015,17 +1531,17 @@
          EObject temp=null; setCurrentLookahead(); resetLookahead(); 
             
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:487:6: ( ( (lv_value_0_0= RULE_REAL ) ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:488:1: ( (lv_value_0_0= RULE_REAL ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:719:6: ( ( (lv_value_0_0= RULE_REAL ) ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:720:1: ( (lv_value_0_0= RULE_REAL ) )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:488:1: ( (lv_value_0_0= RULE_REAL ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:489:1: (lv_value_0_0= RULE_REAL )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:720:1: ( (lv_value_0_0= RULE_REAL ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:721:1: (lv_value_0_0= RULE_REAL )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:489:1: (lv_value_0_0= RULE_REAL )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:490:3: lv_value_0_0= RULE_REAL
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:721:1: (lv_value_0_0= RULE_REAL )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:722:3: lv_value_0_0= RULE_REAL
             {
             lv_value_0_0=(Token)input.LT(1);
-            match(input,RULE_REAL,FOLLOW_RULE_REAL_in_ruleRealValue873); 
+            match(input,RULE_REAL,FOLLOW_RULE_REAL_in_ruleRealValue1324); 
 
             			createLeafNode(grammarAccess.getRealValueAccess().getValueREALTerminalRuleCall_0(), "value"); 
             		
@@ -1071,7 +1587,7 @@
 
 
     // $ANTLR start entryRuleStringValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:520:1: entryRuleStringValue returns [EObject current=null] : iv_ruleStringValue= ruleStringValue EOF ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:752:1: entryRuleStringValue returns [EObject current=null] : iv_ruleStringValue= ruleStringValue EOF ;
     public final EObject entryRuleStringValue() throws RecognitionException {
         EObject current = null;
 
@@ -1079,16 +1595,16 @@
 
 
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:521:2: (iv_ruleStringValue= ruleStringValue EOF )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:522:2: iv_ruleStringValue= ruleStringValue EOF
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:753:2: (iv_ruleStringValue= ruleStringValue EOF )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:754:2: iv_ruleStringValue= ruleStringValue EOF
             {
              currentNode = createCompositeNode(grammarAccess.getStringValueRule(), currentNode); 
-            pushFollow(FOLLOW_ruleStringValue_in_entryRuleStringValue913);
+            pushFollow(FOLLOW_ruleStringValue_in_entryRuleStringValue1364);
             iv_ruleStringValue=ruleStringValue();
             _fsp--;
 
              current =iv_ruleStringValue; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleStringValue923); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleStringValue1374); 
 
             }
 
@@ -1106,7 +1622,7 @@
 
 
     // $ANTLR start ruleStringValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:529:1: ruleStringValue returns [EObject current=null] : ( (lv_value_0_0= RULE_STRING ) ) ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:761:1: ruleStringValue returns [EObject current=null] : ( (lv_value_0_0= RULE_STRING ) ) ;
     public final EObject ruleStringValue() throws RecognitionException {
         EObject current = null;
 
@@ -1115,17 +1631,17 @@
          EObject temp=null; setCurrentLookahead(); resetLookahead(); 
             
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:534:6: ( ( (lv_value_0_0= RULE_STRING ) ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:535:1: ( (lv_value_0_0= RULE_STRING ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:766:6: ( ( (lv_value_0_0= RULE_STRING ) ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:767:1: ( (lv_value_0_0= RULE_STRING ) )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:535:1: ( (lv_value_0_0= RULE_STRING ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:536:1: (lv_value_0_0= RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:767:1: ( (lv_value_0_0= RULE_STRING ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:768:1: (lv_value_0_0= RULE_STRING )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:536:1: (lv_value_0_0= RULE_STRING )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:537:3: lv_value_0_0= RULE_STRING
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:768:1: (lv_value_0_0= RULE_STRING )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:769:3: lv_value_0_0= RULE_STRING
             {
             lv_value_0_0=(Token)input.LT(1);
-            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleStringValue964); 
+            match(input,RULE_STRING,FOLLOW_RULE_STRING_in_ruleStringValue1415); 
 
             			createLeafNode(grammarAccess.getStringValueAccess().getValueSTRINGTerminalRuleCall_0(), "value"); 
             		
@@ -1171,7 +1687,7 @@
 
 
     // $ANTLR start entryRuleBooleanValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:567:1: entryRuleBooleanValue returns [EObject current=null] : iv_ruleBooleanValue= ruleBooleanValue EOF ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:799:1: entryRuleBooleanValue returns [EObject current=null] : iv_ruleBooleanValue= ruleBooleanValue EOF ;
     public final EObject entryRuleBooleanValue() throws RecognitionException {
         EObject current = null;
 
@@ -1179,16 +1695,16 @@
 
 
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:568:2: (iv_ruleBooleanValue= ruleBooleanValue EOF )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:569:2: iv_ruleBooleanValue= ruleBooleanValue EOF
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:800:2: (iv_ruleBooleanValue= ruleBooleanValue EOF )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:801:2: iv_ruleBooleanValue= ruleBooleanValue EOF
             {
              currentNode = createCompositeNode(grammarAccess.getBooleanValueRule(), currentNode); 
-            pushFollow(FOLLOW_ruleBooleanValue_in_entryRuleBooleanValue1004);
+            pushFollow(FOLLOW_ruleBooleanValue_in_entryRuleBooleanValue1455);
             iv_ruleBooleanValue=ruleBooleanValue();
             _fsp--;
 
              current =iv_ruleBooleanValue; 
-            match(input,EOF,FOLLOW_EOF_in_entryRuleBooleanValue1014); 
+            match(input,EOF,FOLLOW_EOF_in_entryRuleBooleanValue1465); 
 
             }
 
@@ -1206,7 +1722,7 @@
 
 
     // $ANTLR start ruleBooleanValue
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:576:1: ruleBooleanValue returns [EObject current=null] : ( (lv_value_0_0= ruleBOOLEAN ) ) ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:808:1: ruleBooleanValue returns [EObject current=null] : ( (lv_value_0_0= ruleBOOLEAN ) ) ;
     public final EObject ruleBooleanValue() throws RecognitionException {
         EObject current = null;
 
@@ -1216,19 +1732,19 @@
          EObject temp=null; setCurrentLookahead(); resetLookahead(); 
             
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:581:6: ( ( (lv_value_0_0= ruleBOOLEAN ) ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:582:1: ( (lv_value_0_0= ruleBOOLEAN ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:813:6: ( ( (lv_value_0_0= ruleBOOLEAN ) ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:814:1: ( (lv_value_0_0= ruleBOOLEAN ) )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:582:1: ( (lv_value_0_0= ruleBOOLEAN ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:583:1: (lv_value_0_0= ruleBOOLEAN )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:814:1: ( (lv_value_0_0= ruleBOOLEAN ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:815:1: (lv_value_0_0= ruleBOOLEAN )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:583:1: (lv_value_0_0= ruleBOOLEAN )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:584:3: lv_value_0_0= ruleBOOLEAN
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:815:1: (lv_value_0_0= ruleBOOLEAN )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:816:3: lv_value_0_0= ruleBOOLEAN
             {
              
             	        currentNode=createCompositeNode(grammarAccess.getBooleanValueAccess().getValueBOOLEANEnumRuleCall_0(), currentNode); 
             	    
-            pushFollow(FOLLOW_ruleBOOLEAN_in_ruleBooleanValue1059);
+            pushFollow(FOLLOW_ruleBOOLEAN_in_ruleBooleanValue1510);
             lv_value_0_0=ruleBOOLEAN();
             _fsp--;
 
@@ -1275,39 +1791,39 @@
 
 
     // $ANTLR start ruleBOOLEAN
-    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:614:1: ruleBOOLEAN returns [Enumerator current=null] : ( ( 'true' ) | ( 'false' ) ) ;
+    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:846:1: ruleBOOLEAN returns [Enumerator current=null] : ( ( 'true' ) | ( 'false' ) ) ;
     public final Enumerator ruleBOOLEAN() throws RecognitionException {
         Enumerator current = null;
 
          setCurrentLookahead(); resetLookahead(); 
         try {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:618:6: ( ( ( 'true' ) | ( 'false' ) ) )
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:619:1: ( ( 'true' ) | ( 'false' ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:850:6: ( ( ( 'true' ) | ( 'false' ) ) )
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:851:1: ( ( 'true' ) | ( 'false' ) )
             {
-            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:619:1: ( ( 'true' ) | ( 'false' ) )
-            int alt5=2;
-            int LA5_0 = input.LA(1);
+            // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:851:1: ( ( 'true' ) | ( 'false' ) )
+            int alt7=2;
+            int LA7_0 = input.LA(1);
 
-            if ( (LA5_0==17) ) {
-                alt5=1;
+            if ( (LA7_0==20) ) {
+                alt7=1;
             }
-            else if ( (LA5_0==18) ) {
-                alt5=2;
+            else if ( (LA7_0==21) ) {
+                alt7=2;
             }
             else {
                 NoViableAltException nvae =
-                    new NoViableAltException("619:1: ( ( 'true' ) | ( 'false' ) )", 5, 0, input);
+                    new NoViableAltException("851:1: ( ( 'true' ) | ( 'false' ) )", 7, 0, input);
 
                 throw nvae;
             }
-            switch (alt5) {
+            switch (alt7) {
                 case 1 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:619:2: ( 'true' )
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:851:2: ( 'true' )
                     {
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:619:2: ( 'true' )
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:619:4: 'true'
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:851:2: ( 'true' )
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:851:4: 'true'
                     {
-                    match(input,17,FOLLOW_17_in_ruleBOOLEAN1106); 
+                    match(input,20,FOLLOW_20_in_ruleBOOLEAN1557); 
 
                             current = grammarAccess.getBOOLEANAccess().getTRUEEnumLiteralDeclaration_0().getEnumLiteral().getInstance();
                             createLeafNode(grammarAccess.getBOOLEANAccess().getTRUEEnumLiteralDeclaration_0(), null); 
@@ -1319,12 +1835,12 @@
                     }
                     break;
                 case 2 :
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:625:6: ( 'false' )
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:857:6: ( 'false' )
                     {
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:625:6: ( 'false' )
-                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:625:8: 'false'
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:857:6: ( 'false' )
+                    // ../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g:857:8: 'false'
                     {
-                    match(input,18,FOLLOW_18_in_ruleBOOLEAN1121); 
+                    match(input,21,FOLLOW_21_in_ruleBOOLEAN1572); 
 
                             current = grammarAccess.getBOOLEANAccess().getFALSEEnumLiteralDeclaration_1().getEnumLiteral().getInstance();
                             createLeafNode(grammarAccess.getBOOLEANAccess().getFALSEEnumLiteralDeclaration_1(), null); 
@@ -1363,10 +1879,10 @@
     public static final BitSet FOLLOW_EOF_in_entryRuleModel85 = new BitSet(new long[]{0x0000000000000002L});
     public static final BitSet FOLLOW_RULE_STRING_in_ruleModel127 = new BitSet(new long[]{0x0000000000004000L});
     public static final BitSet FOLLOW_14_in_ruleModel143 = new BitSet(new long[]{0x0000000000000010L});
-    public static final BitSet FOLLOW_ruleImport_in_ruleModel164 = new BitSet(new long[]{0x0000000000008022L});
+    public static final BitSet FOLLOW_ruleImport_in_ruleModel164 = new BitSet(new long[]{0x0000000000028022L});
     public static final BitSet FOLLOW_15_in_ruleModel175 = new BitSet(new long[]{0x0000000000000010L});
-    public static final BitSet FOLLOW_ruleIncorporates_in_ruleModel196 = new BitSet(new long[]{0x0000000000008022L});
-    public static final BitSet FOLLOW_ruleParameter_in_ruleModel219 = new BitSet(new long[]{0x0000000000000022L});
+    public static final BitSet FOLLOW_ruleIncorporates_in_ruleModel196 = new BitSet(new long[]{0x0000000000028022L});
+    public static final BitSet FOLLOW_ruleParameter_in_ruleModel219 = new BitSet(new long[]{0x0000000000020022L});
     public static final BitSet FOLLOW_ruleImport_in_entryRuleImport256 = new BitSet(new long[]{0x0000000000000000L});
     public static final BitSet FOLLOW_EOF_in_entryRuleImport266 = new BitSet(new long[]{0x0000000000000002L});
     public static final BitSet FOLLOW_RULE_STRING_in_ruleImport307 = new BitSet(new long[]{0x0000000000000002L});
@@ -1375,28 +1891,48 @@
     public static final BitSet FOLLOW_RULE_STRING_in_ruleIncorporates398 = new BitSet(new long[]{0x0000000000000002L});
     public static final BitSet FOLLOW_ruleParameter_in_entryRuleParameter438 = new BitSet(new long[]{0x0000000000000000L});
     public static final BitSet FOLLOW_EOF_in_entryRuleParameter448 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_ID_in_ruleParameter491 = new BitSet(new long[]{0x0000000000010000L});
-    public static final BitSet FOLLOW_16_in_ruleParameter501 = new BitSet(new long[]{0x00000000000600D0L});
-    public static final BitSet FOLLOW_ruleValue_in_ruleParameter522 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleValue_in_entryRuleValue558 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleValue568 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleIntValue_in_ruleValue615 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleStringValue_in_ruleValue642 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleRealValue_in_ruleValue669 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleBooleanValue_in_ruleValue696 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleIntValue_in_entryRuleIntValue731 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleIntValue741 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_INTEGER_in_ruleIntValue782 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleRealValue_in_entryRuleRealValue822 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleRealValue832 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_REAL_in_ruleRealValue873 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleStringValue_in_entryRuleStringValue913 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleStringValue923 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_STRING_in_ruleStringValue964 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleBooleanValue_in_entryRuleBooleanValue1004 = new BitSet(new long[]{0x0000000000000000L});
-    public static final BitSet FOLLOW_EOF_in_entryRuleBooleanValue1014 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleBOOLEAN_in_ruleBooleanValue1059 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_17_in_ruleBOOLEAN1106 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_18_in_ruleBOOLEAN1121 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSingleParameter_in_ruleParameter495 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSweepParameter_in_ruleParameter522 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSweepLink_in_ruleParameter549 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSingleParameter_in_entryRuleSingleParameter584 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleSingleParameter594 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_ruleSingleParameter637 = new BitSet(new long[]{0x0000000000010000L});
+    public static final BitSet FOLLOW_16_in_ruleSingleParameter647 = new BitSet(new long[]{0x00000000003000D0L});
+    public static final BitSet FOLLOW_ruleValue_in_ruleSingleParameter668 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSweepParameter_in_entryRuleSweepParameter704 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleSweepParameter714 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_ID_in_ruleSweepParameter757 = new BitSet(new long[]{0x0000000000020000L});
+    public static final BitSet FOLLOW_17_in_ruleSweepParameter767 = new BitSet(new long[]{0x00000000003000D0L});
+    public static final BitSet FOLLOW_ruleValue_in_ruleSweepParameter788 = new BitSet(new long[]{0x0000000000040000L});
+    public static final BitSet FOLLOW_18_in_ruleSweepParameter798 = new BitSet(new long[]{0x00000000003000D0L});
+    public static final BitSet FOLLOW_ruleValue_in_ruleSweepParameter819 = new BitSet(new long[]{0x0000000000040000L});
+    public static final BitSet FOLLOW_18_in_ruleSweepParameter829 = new BitSet(new long[]{0x00000000003000D0L});
+    public static final BitSet FOLLOW_ruleValue_in_ruleSweepParameter850 = new BitSet(new long[]{0x0000000000080000L});
+    public static final BitSet FOLLOW_19_in_ruleSweepParameter860 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleSweepLink_in_entryRuleSweepLink896 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleSweepLink906 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_17_in_ruleSweepLink941 = new BitSet(new long[]{0x00000000000A0020L});
+    public static final BitSet FOLLOW_ruleParameter_in_ruleSweepLink962 = new BitSet(new long[]{0x00000000000A0020L});
+    public static final BitSet FOLLOW_19_in_ruleSweepLink973 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleValue_in_entryRuleValue1009 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleValue1019 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleIntValue_in_ruleValue1066 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleStringValue_in_ruleValue1093 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleRealValue_in_ruleValue1120 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleBooleanValue_in_ruleValue1147 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleIntValue_in_entryRuleIntValue1182 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleIntValue1192 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_INTEGER_in_ruleIntValue1233 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleRealValue_in_entryRuleRealValue1273 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleRealValue1283 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_REAL_in_ruleRealValue1324 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleStringValue_in_entryRuleStringValue1364 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleStringValue1374 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_STRING_in_ruleStringValue1415 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleBooleanValue_in_entryRuleBooleanValue1455 = new BitSet(new long[]{0x0000000000000000L});
+    public static final BitSet FOLLOW_EOF_in_entryRuleBooleanValue1465 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleBOOLEAN_in_ruleBooleanValue1510 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_20_in_ruleBOOLEAN1557 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_21_in_ruleBOOLEAN1572 = new BitSet(new long[]{0x0000000000000002L});
 
 }
\ No newline at end of file
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar__.g b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar__.g
index 66f0db7..c81165f 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar__.g
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar__.g
@@ -10,37 +10,40 @@
 T14 : 'model' ;
 T15 : 'incorporates' ;
 T16 : '=' ;
-T17 : 'true' ;
-T18 : 'false' ;
+T17 : '[' ;
+T18 : ',' ;
+T19 : ']' ;
+T20 : 'true' ;
+T21 : 'false' ;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 634
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 866
 RULE_INTEGER : '-'? ('0'..'9')+;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 636
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 868
 RULE_REAL : '-'? ('0'..'9')* '.' ('0'..'9')*;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 638
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 870
 RULE_DESC_STRING : '\u00AB' ('\\' ('b'|'t'|'n'|'f'|'r'|'\u00AB'|'\u00BB'|'\\')|~(('\\'|'\u00AB'|'\u00BB')))* '\u00BB';
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 640
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 872
 RULE_ID : '^'? ('a'..'z'|'A'..'Z'|'_') ('a'..'z'|'A'..'Z'|'_'|'0'..'9')*;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 642
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 874
 RULE_INT : ('0'..'9')+;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 644
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 876
 RULE_STRING : ('"' ('\\' ('b'|'t'|'n'|'f'|'r'|'"'|'\''|'\\')|~(('\\'|'"')))* '"'|'\'' ('\\' ('b'|'t'|'n'|'f'|'r'|'"'|'\''|'\\')|~(('\\'|'\'')))* '\'');
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 646
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 878
 RULE_ML_COMMENT : '/*' ( options {greedy=false;} : . )*'*/';
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 648
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 880
 RULE_SL_COMMENT : '//' ~(('\n'|'\r'))* ('\r'? '\n')?;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 650
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 882
 RULE_WS : (' '|'\t'|'\r'|'\n')+;
 
-// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 652
+// $ANTLR src "../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/parser/antlr/internal/InternalAPar.g" 884
 RULE_ANY_OTHER : .;
 
 
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/services/AParGrammarAccess.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/services/AParGrammarAccess.java
index 9a33d1a..98c5799 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/services/AParGrammarAccess.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/services/AParGrammarAccess.java
@@ -107,6 +107,30 @@
 
 	public class ParameterElements extends AbstractParserRuleElementFinder {
 		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "Parameter");
+		private final Alternatives cAlternatives = (Alternatives)rule.eContents().get(1);
+		private final RuleCall cSingleParameterParserRuleCall_0 = (RuleCall)cAlternatives.eContents().get(0);
+		private final RuleCall cSweepParameterParserRuleCall_1 = (RuleCall)cAlternatives.eContents().get(1);
+		private final RuleCall cSweepLinkParserRuleCall_2 = (RuleCall)cAlternatives.eContents().get(2);
+		
+		//Parameter:
+		//	SingleParameter | SweepParameter | SweepLink;
+		public ParserRule getRule() { return rule; }
+
+		//SingleParameter | SweepParameter | SweepLink
+		public Alternatives getAlternatives() { return cAlternatives; }
+
+		//SingleParameter
+		public RuleCall getSingleParameterParserRuleCall_0() { return cSingleParameterParserRuleCall_0; }
+
+		//SweepParameter
+		public RuleCall getSweepParameterParserRuleCall_1() { return cSweepParameterParserRuleCall_1; }
+
+		//SweepLink
+		public RuleCall getSweepLinkParserRuleCall_2() { return cSweepLinkParserRuleCall_2; }
+	}
+
+	public class SingleParameterElements extends AbstractParserRuleElementFinder {
+		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SingleParameter");
 		private final Group cGroup = (Group)rule.eContents().get(1);
 		private final Assignment cAttributeAssignment_0 = (Assignment)cGroup.eContents().get(0);
 		private final CrossReference cAttributeSAttributeCrossReference_0_0 = (CrossReference)cAttributeAssignment_0.eContents().get(0);
@@ -115,7 +139,7 @@
 		private final Assignment cValueAssignment_2 = (Assignment)cGroup.eContents().get(2);
 		private final RuleCall cValueValueParserRuleCall_2_0 = (RuleCall)cValueAssignment_2.eContents().get(0);
 		
-		//Parameter:
+		//SingleParameter:
 		//	attribute=[SAttribute] "=" value=Value;
 		public ParserRule getRule() { return rule; }
 
@@ -140,12 +164,107 @@
 		//Value
 		public RuleCall getValueValueParserRuleCall_2_0() { return cValueValueParserRuleCall_2_0; }
 	}
+
+	public class SweepParameterElements extends AbstractParserRuleElementFinder {
+		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SweepParameter");
+		private final Group cGroup = (Group)rule.eContents().get(1);
+		private final Assignment cAttributeAssignment_0 = (Assignment)cGroup.eContents().get(0);
+		private final CrossReference cAttributeSAttributeCrossReference_0_0 = (CrossReference)cAttributeAssignment_0.eContents().get(0);
+		private final RuleCall cAttributeSAttributeIDTerminalRuleCall_0_0_1 = (RuleCall)cAttributeSAttributeCrossReference_0_0.eContents().get(1);
+		private final Keyword cLeftSquareBracketKeyword_1 = (Keyword)cGroup.eContents().get(1);
+		private final Assignment cStartValueAssignment_2 = (Assignment)cGroup.eContents().get(2);
+		private final RuleCall cStartValueValueParserRuleCall_2_0 = (RuleCall)cStartValueAssignment_2.eContents().get(0);
+		private final Keyword cCommaKeyword_3 = (Keyword)cGroup.eContents().get(3);
+		private final Assignment cEndValueAssignment_4 = (Assignment)cGroup.eContents().get(4);
+		private final RuleCall cEndValueValueParserRuleCall_4_0 = (RuleCall)cEndValueAssignment_4.eContents().get(0);
+		private final Keyword cCommaKeyword_5 = (Keyword)cGroup.eContents().get(5);
+		private final Assignment cIncrementAssignment_6 = (Assignment)cGroup.eContents().get(6);
+		private final RuleCall cIncrementValueParserRuleCall_6_0 = (RuleCall)cIncrementAssignment_6.eContents().get(0);
+		private final Keyword cRightSquareBracketKeyword_7 = (Keyword)cGroup.eContents().get(7);
+		
+		//SweepParameter:
+		//	attribute=[SAttribute] "[" startValue=Value "," endValue=Value "," increment=Value "]";
+		public ParserRule getRule() { return rule; }
+
+		//attribute=[SAttribute] "[" startValue=Value "," endValue=Value "," increment=Value "]"
+		public Group getGroup() { return cGroup; }
+
+		//attribute=[SAttribute]
+		public Assignment getAttributeAssignment_0() { return cAttributeAssignment_0; }
+
+		//[SAttribute]
+		public CrossReference getAttributeSAttributeCrossReference_0_0() { return cAttributeSAttributeCrossReference_0_0; }
+
+		//ID
+		public RuleCall getAttributeSAttributeIDTerminalRuleCall_0_0_1() { return cAttributeSAttributeIDTerminalRuleCall_0_0_1; }
+
+		//"["
+		public Keyword getLeftSquareBracketKeyword_1() { return cLeftSquareBracketKeyword_1; }
+
+		//startValue=Value
+		public Assignment getStartValueAssignment_2() { return cStartValueAssignment_2; }
+
+		//Value
+		public RuleCall getStartValueValueParserRuleCall_2_0() { return cStartValueValueParserRuleCall_2_0; }
+
+		//","
+		public Keyword getCommaKeyword_3() { return cCommaKeyword_3; }
+
+		//endValue=Value
+		public Assignment getEndValueAssignment_4() { return cEndValueAssignment_4; }
+
+		//Value
+		public RuleCall getEndValueValueParserRuleCall_4_0() { return cEndValueValueParserRuleCall_4_0; }
+
+		//","
+		public Keyword getCommaKeyword_5() { return cCommaKeyword_5; }
+
+		//increment=Value
+		public Assignment getIncrementAssignment_6() { return cIncrementAssignment_6; }
+
+		//Value
+		public RuleCall getIncrementValueParserRuleCall_6_0() { return cIncrementValueParserRuleCall_6_0; }
+
+		//"]"
+		public Keyword getRightSquareBracketKeyword_7() { return cRightSquareBracketKeyword_7; }
+	}
+
+	public class SweepLinkElements extends AbstractParserRuleElementFinder {
+		private final ParserRule rule = (ParserRule) GrammarUtil.findRuleForName(getGrammar(), "SweepLink");
+		private final Group cGroup = (Group)rule.eContents().get(1);
+		private final Keyword cLeftSquareBracketKeyword_0 = (Keyword)cGroup.eContents().get(0);
+		private final Assignment cParametersAssignment_1 = (Assignment)cGroup.eContents().get(1);
+		private final RuleCall cParametersParameterParserRuleCall_1_0 = (RuleCall)cParametersAssignment_1.eContents().get(0);
+		private final Keyword cRightSquareBracketKeyword_2 = (Keyword)cGroup.eContents().get(2);
+		
+		//SweepLink:
+		//	"[" parameters+=Parameter* "]";
+		public ParserRule getRule() { return rule; }
+
+		//"[" parameters+=Parameter* "]"
+		public Group getGroup() { return cGroup; }
+
+		//"["
+		public Keyword getLeftSquareBracketKeyword_0() { return cLeftSquareBracketKeyword_0; }
+
+		//parameters+=Parameter*
+		public Assignment getParametersAssignment_1() { return cParametersAssignment_1; }
+
+		//Parameter
+		public RuleCall getParametersParameterParserRuleCall_1_0() { return cParametersParameterParserRuleCall_1_0; }
+
+		//"]"
+		public Keyword getRightSquareBracketKeyword_2() { return cRightSquareBracketKeyword_2; }
+	}
 	
 	
 	private ModelElements pModel;
 	private ImportElements pImport;
 	private IncorporatesElements pIncorporates;
 	private ParameterElements pParameter;
+	private SingleParameterElements pSingleParameter;
+	private SweepParameterElements pSweepParameter;
+	private SweepLinkElements pSweepLink;
 	
 	private final GrammarProvider grammarProvider;
 
@@ -199,7 +318,7 @@
 	}
 
 	//Parameter:
-	//	attribute=[SAttribute] "=" value=Value;
+	//	SingleParameter | SweepParameter | SweepLink;
 	public ParameterElements getParameterAccess() {
 		return (pParameter != null) ? pParameter : (pParameter = new ParameterElements());
 	}
@@ -208,6 +327,36 @@
 		return getParameterAccess().getRule();
 	}
 
+	//SingleParameter:
+	//	attribute=[SAttribute] "=" value=Value;
+	public SingleParameterElements getSingleParameterAccess() {
+		return (pSingleParameter != null) ? pSingleParameter : (pSingleParameter = new SingleParameterElements());
+	}
+	
+	public ParserRule getSingleParameterRule() {
+		return getSingleParameterAccess().getRule();
+	}
+
+	//SweepParameter:
+	//	attribute=[SAttribute] "[" startValue=Value "," endValue=Value "," increment=Value "]";
+	public SweepParameterElements getSweepParameterAccess() {
+		return (pSweepParameter != null) ? pSweepParameter : (pSweepParameter = new SweepParameterElements());
+	}
+	
+	public ParserRule getSweepParameterRule() {
+		return getSweepParameterAccess().getRule();
+	}
+
+	//SweepLink:
+	//	"[" parameters+=Parameter* "]";
+	public SweepLinkElements getSweepLinkAccess() {
+		return (pSweepLink != null) ? pSweepLink : (pSweepLink = new SweepLinkElements());
+	}
+	
+	public ParserRule getSweepLinkRule() {
+		return getSweepLinkAccess().getRule();
+	}
+
 	//Value:
 	//	IntValue | StringValue | RealValue | BooleanValue;
 	public ABaseGrammarAccess.ValueElements getValueAccess() {
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src/org/eclipse/amp/amf/parameters/APar.xtext b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src/org/eclipse/amp/amf/parameters/APar.xtext
index f6f6916..0fc8413 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src/org/eclipse/amp/amf/parameters/APar.xtext
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src/org/eclipse/amp/amf/parameters/APar.xtext
@@ -19,4 +19,14 @@
 	importURI=STRING;
 
 Parameter :
+	SingleParameter | SweepParameter | SweepLink;
+
+SingleParameter :
 	attribute=[SAttribute|ID] "=" value=Value;
+
+SweepParameter :
+	attribute=[SAttribute|ID] "[" startValue=Value "," endValue=Value "," increment=Value "]";
+
+SweepLink :
+	"[" (parameters+=Parameter)* "]";
+	
\ No newline at end of file
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src/org/eclipse/amp/amf/parameters/AParInterpreter.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src/org/eclipse/amp/amf/parameters/AParInterpreter.java
index ebfb553..7dff34e 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src/org/eclipse/amp/amf/parameters/AParInterpreter.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.parameters/src/org/eclipse/amp/amf/parameters/AParInterpreter.java
@@ -27,6 +27,7 @@
 import java.util.Map;
 import java.util.Set;
 
+import org.apache.commons.lang.StringUtils;
 import org.eclipse.amp.amf.abase.ICached;
 import org.eclipse.amp.amf.abase.IInterpreterProvider;
 import org.eclipse.amp.amf.abase.aBase.BOOLEAN;
@@ -38,6 +39,9 @@
 import org.eclipse.amp.amf.parameters.aPar.Incorporates;
 import org.eclipse.amp.amf.parameters.aPar.Model;
 import org.eclipse.amp.amf.parameters.aPar.Parameter;
+import org.eclipse.amp.amf.parameters.aPar.SingleParameter;
+import org.eclipse.amp.amf.parameters.aPar.SweepLink;
+import org.eclipse.amp.amf.parameters.aPar.SweepParameter;
 import org.eclipse.core.resources.ResourcesPlugin;
 import org.eclipse.core.runtime.MultiStatus;
 import org.eclipse.core.runtime.Path;
@@ -46,8 +50,6 @@
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.emf.ecore.resource.impl.ResourceImpl;
-
-import org.apache.commons.lang.StringUtils;
 import org.metaabm.SAttribute;
 import org.metaabm.SAttributeType;
 import org.metaabm.SContext;
@@ -59,252 +61,308 @@
  */
 public class AParInterpreter implements ICached {
 
-    Resource emfResource;
-    private String modelClass;
-    private String runName;
-    private String[] args;
-    private SContext rootContext;
-    private Model aparModel;
-    private List<Parameter> parameters;
-    private String localPath;
+	Resource emfResource;
+	private String modelClass;
+	private String runName;
+	private String[] args;
+	private SContext rootContext;
+	private Model aparModel;
+	private List<Parameter> parameters;
+	private String localPath;
 
-    private IInterpreterProvider cache;
+	private IInterpreterProvider cache;
 
-    public void load(Resource emfResource) {
-        this.emfResource = emfResource;
-        ((ResourceImpl) emfResource).setIntrinsicIDToEObjectMap(new HashMap<String, EObject>());
+	public void load(Resource emfResource) {
+		this.emfResource = emfResource;
+		((ResourceImpl) emfResource)
+				.setIntrinsicIDToEObjectMap(new HashMap<String, EObject>());
 
-        aparModel = (Model) emfResource.getContents().get(0);
-        assert aparModel != null;
-        String convertURI = AParInterpreter.convertURI(aparModel.getModel());
-        URI modelURI = URI.createURI(convertURI);
-        Resource amfResource = emfResource.getResourceSet().getResource(modelURI, true);
-        ((ResourceImpl) amfResource).setIntrinsicIDToEObjectMap(new HashMap<String, EObject>());
-        rootContext = (SContext) amfResource.getContents().get(0);
+		aparModel = (Model) emfResource.getContents().get(0);
+		assert aparModel != null;
+		String convertURI = AParInterpreter.convertURI(aparModel.getModel());
+		URI modelURI = URI.createURI(convertURI);
+		Resource amfResource = emfResource.getResourceSet().getResource(
+				modelURI, true);
+		((ResourceImpl) amfResource)
+				.setIntrinsicIDToEObjectMap(new HashMap<String, EObject>());
+		rootContext = (SContext) amfResource.getContents().get(0);
 
-        modelClass = rootContext.getImplementation().getQualifiedName();
-        runName = rootContext.getLabel() + "_" + emfResource.getURI().trimFileExtension().lastSegment();
-        parameters = collect(new HashSet<String>());
+		modelClass = rootContext.getImplementation().getQualifiedName();
+		runName = rootContext.getLabel() + "_"
+				+ emfResource.getURI().trimFileExtension().lastSegment();
+		parameters = collect(new HashSet<String>());
 
-        String rootPath = amfResource.getURI().toPlatformString(true);
-        localPath = ResourcesPlugin.getWorkspace().getRoot().getFile(new Path(rootPath)).getProject().getLocation()
-        .toOSString();
+		String rootPath = amfResource.getURI().toPlatformString(true);
+		localPath = ResourcesPlugin.getWorkspace().getRoot()
+				.getFile(new Path(rootPath)).getProject().getLocation()
+				.toOSString();
 
-        args = new String[parameters.size()];
-        int i = 0;
-        for (Parameter parameter : parameters) {
-            String value = value(parameter.getValue());
-            if (parameter.getValue() instanceof StringValue) {
-                value = StringUtils.replace(value, "|", localPath + "/");
-            }
-            if (parameter.getAttribute().getLabel() != null) {
-                args[i] = parameter.getAttribute().getLabel().replaceAll(" ", "") + "=" + value;
-            } else {
-                // todo we need to report this condition..
-                args[i] = "";
-            }
-            i++;
-        }
-    }
+		args = new String[parameters.size()];
+		int i = 0;
+		for (Parameter param : parameters) {
+			if (param instanceof SingleParameter) {
+				SingleParameter sp = (SingleParameter) param;
+				String value = value(sp.getValue());
+				if (sp.getValue() instanceof StringValue) {
+					value = StringUtils.replace(value, "|", localPath + "/");
+				}
+				if (sp.getAttribute().getLabel() != null) {
+					args[i] = sp.getAttribute().getLabel().replaceAll(" ", "")
+							+ "=" + value;
+				} else {
+					// todo we need to report this condition..
+					args[i] = "";
+				}
+				i++;
+			}
+		}
+	}
 
-    List<Parameter> collect(Set<String> overridden) {
-        List<Parameter> includeIncorporated = new ArrayList<Parameter>();
-        for (Parameter parameter : aparModel.getParameters()) {
-            String label = parameter.getAttribute().getLabel();
-            if (parameter.getAttribute().getOwner() != rootContext) {
-                label = parameter.getAttribute().getOwner().getLabel() + " " + label;
-            }
-            if (!overridden.contains(label)) {
-                includeIncorporated.add(parameter);
-                overridden.add(label);
-            }
-        }
-        Incorporates[] reverseIncorporates = new Incorporates[aparModel.getIncorporates().size()];
-        for (int i = 0; i < reverseIncorporates.length; i++) {
-            reverseIncorporates[reverseIncorporates.length - (i + 1)] = aparModel.getIncorporates().get(i);
-        }
-        for (Incorporates incorporates : reverseIncorporates) {
-            String convertURI = AParInterpreter.convertURI(incorporates);
-            URI incURI = URI.createURI(convertURI);
-            if (cache == null) {
-                cache = AParFactory.createPooled(emfResource.getResourceSet());
-            }
-            AParInterpreter incInterpreter = (AParInterpreter) cache.getInterpreter(incURI);
-            includeIncorporated.addAll(incInterpreter.collect(overridden));
-        }
-        return includeIncorporated;
-    }
+	List<Parameter> collect(Set<String> overridden) {
+		List<Parameter> includeIncorporated = new ArrayList<Parameter>();
+		for (Parameter param : aparModel.getParameters()) {
+			if (param instanceof SingleParameter) {
+				SingleParameter sp = (SingleParameter) param;
+				String label = sp.getAttribute().getLabel();
+				if (sp.getAttribute().getOwner() != rootContext) {
+					label = sp.getAttribute().getOwner().getLabel()
+							+ " " + label;
+				}
+				if (!overridden.contains(label)) {
+					includeIncorporated.add(sp);
+					overridden.add(label);
+				}
+			}
+		}
+		Incorporates[] reverseIncorporates = new Incorporates[aparModel
+				.getIncorporates().size()];
+		for (int i = 0; i < reverseIncorporates.length; i++) {
+			reverseIncorporates[reverseIncorporates.length - (i + 1)] = aparModel
+					.getIncorporates().get(i);
+		}
+		for (Incorporates incorporates : reverseIncorporates) {
+			String convertURI = AParInterpreter.convertURI(incorporates);
+			URI incURI = URI.createURI(convertURI);
+			if (cache == null) {
+				cache = AParFactory.createPooled(emfResource.getResourceSet());
+			}
+			AParInterpreter incInterpreter = (AParInterpreter) cache
+					.getInterpreter(incURI);
+			includeIncorporated.addAll(incInterpreter.collect(overridden));
+		}
+		return includeIncorporated;
+	}
 
-    /**
-     * @return
-     */
-    public SContext getRootContext() {
-        return rootContext;
-    }
+	/**
+	 * @return
+	 */
+	public SContext getRootContext() {
+		return rootContext;
+	}
 
-    /**
-     * @return
-     */
-    public String getRunName() {
-        return runName;
-    }
+	/**
+	 * @return
+	 */
+	public String getRunName() {
+		return runName;
+	}
 
-    public String getModelClass() {
-        return modelClass;
-    }
+	public String getModelClass() {
+		return modelClass;
+	}
 
-    public String[] getArgs() {
-        return args;
-    }
+	public String[] getArgs() {
+		return args;
+	}
 
-    public String getArgsString() {
-        String argString = "";
-        for (Parameter param : parameters) {
-            argString += param.getAttribute().getID() + "\t" + value(param.getValue()) + "\r";
-        }
-        return argString.substring(0, argString.length() - 1);
-    }
+	// public String getArgsString() {
+	// String argString = "";
+	// for (Parameter param : parameters) {
+	// if (param instanceof SingleParameter) {
+	// SingleParameter sp = (SingleParameter) param;
+	// argString += sp.getAttribute().getID() + "\t"
+	// + value(sp.getValue()) + "\r";
+	// } else if (param instanceof SweepParameter) {
+	// SweepParameter sp = (SweepParameter) param;
+	// argString += sp.getAttribute().getID() + "\t"
+	// + "[" + value(sp.getStartValue()) + value(sp.getStartValue()) + "]\r";
+	// } else if (param instanceof SweepLink) {
+	// SweepLink sp = (SweepLink) param;
+	// argString += sp.getAttribute().getID() + "\t"
+	// + "[" + value(sp.getStartValue()) + value(sp.getStartValue()) + "]\r";
+	// }
+	// }
+	// return argString.substring(0, argString.length() - 1);
+	// }
 
-    public static String value(EObject value) {
-        if (value instanceof StringValue) {
-            return ((StringValue) value).getValue();
-        } else if (value instanceof IntValue) {
-            return ((IntValue) value).getValue();
-        } else if (value instanceof RealValue) {
-            return ((RealValue) value).getValue();
-        } else if (value instanceof BooleanValue) {
-            return ((BooleanValue) value).getValue().getLiteral();
-        }
-        throw new RuntimeException("Unexpected object type: " + value.getClass());
-    }
+	public static String value(EObject value) {
+		if (value instanceof StringValue) {
+			return ((StringValue) value).getValue();
+		} else if (value instanceof IntValue) {
+			return ((IntValue) value).getValue();
+		} else if (value instanceof RealValue) {
+			return ((RealValue) value).getValue();
+		} else if (value instanceof BooleanValue) {
+			return ((BooleanValue) value).getValue().getLiteral();
+		}
+		throw new RuntimeException("Unexpected object type: "
+				+ value.getClass());
+	}
 
-    private void assign(PropertyDescriptor desc, Object assignee, Object assignment) throws IllegalAccessException,
-    InvocationTargetException {
-        Object[] assignArg = new Object[1];
-        assignArg[0] = assignment;
-        desc.getWriteMethod().invoke(assignee, assignArg);
-    }
+	private void assign(PropertyDescriptor desc, Object assignee,
+			Object assignment) throws IllegalAccessException,
+			InvocationTargetException {
+		Object[] assignArg = new Object[1];
+		assignArg[0] = assignment;
+		desc.getWriteMethod().invoke(assignee, assignArg);
+	}
 
-    public void assignValues(Object assignee, MultiStatus status) {
-        assignValues(new Object[] { assignee }, status);
-    }
+	public void assignValues(Object assignee, MultiStatus status) {
+		assignValues(new Object[] { assignee }, status);
+	}
 
-    public void assignValues(Object[] assignees, MultiStatus status) {
-        Map<PropertyDescriptor, Object> assigneeForProperty = new HashMap<PropertyDescriptor, Object>();
-        Map<String, PropertyDescriptor> propertyForID = new HashMap<String, PropertyDescriptor>();
-        for (Object assignee : assignees) {
-            PropertyDescriptor[] infoProperties;
-            try {
-                infoProperties = Introspector.getBeanInfo(assignee.getClass()).getPropertyDescriptors();
-                for (PropertyDescriptor propertyDescriptor : infoProperties) {
-                    propertyForID.put(StringUtils.capitalize(propertyDescriptor.getName()), propertyDescriptor);
-                    assigneeForProperty.put(propertyDescriptor, assignee);
-                }
-            } catch (IntrospectionException e) {
-                warn(status, "Could not introspect on \"" + assignee + ". Continuing.", e);
-            }
-        }
-        for (Parameter param : getParameters()) {
-            SAttribute attribute = param.getAttribute();
-            try {
-                try {
-                    String attrName = StringUtils.capitalize(attribute.getID());
-                    PropertyDescriptor desc = propertyForID.get(attrName);
-                    if (desc == null && attribute.getOwner() != getRootContext()) {
-                        // We need to qualify name
-                        attrName = StringUtils.capitalize(attribute.getOwner().getID()) + attrName;
-                        desc = propertyForID.get(attrName);
-                    }
-                    if (desc == null) {
-                        warn(status, "Could not find attribute \"" + attrName + "\" in " + assignees, null);
-                    } else {
-                        Object assignee = assigneeForProperty.get(desc);
-                        if (attribute.getSType() == SAttributeType.REAL_LITERAL) {
-                            assign(desc, assignee, Double.valueOf(AParInterpreter.value(param.getValue())));
-                        } else if (attribute.getSType() == SAttributeType.INTEGER_LITERAL) {
-                            assign(desc, assignee, Integer.valueOf(AParInterpreter.value(param.getValue())));
-                        } else if (attribute.getSType() == SAttributeType.BOOLEAN_LITERAL) {
-                            assign(desc, assignee, (((BooleanValue) param.getValue()).getValue() == BOOLEAN.TRUE));
-                        } else if (attribute.getSType() == SAttributeType.SYMBOL_LITERAL) {
-                            String string = AParInterpreter.value(param.getValue());
-                            string = StringUtils.replace(string, "|", getLocalPath() + "/");
-                            assign(desc, assignee, string);
-                        } else {
-                            status.add(new Status(Status.WARNING, "org.eclipse.amp.amf.testing.ide",
-                                                  "Unrecognized type: " + attribute.getSType()));
-                        }
-                    }
-                } catch (Exception e) {
-                    status.add(new Status(Status.WARNING, "org.eclipse.amp.amf.testing.ide",
-                                          "Problem assigning parameter: " + attribute, e));
-                    continue;
-                }
-            } catch (Exception e) {
-                status.add(new Status(Status.WARNING, "org.eclipse.amp.amf.testing.ide",
-                                      "Couldn't obtain property descriptors for \"" + getModelClass() + "\"", e));
-            }
-        }
-    }
+	public void assignValues(Object[] assignees, MultiStatus status) {
+		Map<PropertyDescriptor, Object> assigneeForProperty = new HashMap<PropertyDescriptor, Object>();
+		Map<String, PropertyDescriptor> propertyForID = new HashMap<String, PropertyDescriptor>();
+		for (Object assignee : assignees) {
+			PropertyDescriptor[] infoProperties;
+			try {
+				infoProperties = Introspector.getBeanInfo(assignee.getClass())
+						.getPropertyDescriptors();
+				for (PropertyDescriptor propertyDescriptor : infoProperties) {
+					propertyForID.put(StringUtils.capitalize(propertyDescriptor
+							.getName()), propertyDescriptor);
+					assigneeForProperty.put(propertyDescriptor, assignee);
+				}
+			} catch (IntrospectionException e) {
+				warn(status, "Could not introspect on \"" + assignee
+						+ ". Continuing.", e);
+			}
+		}
+		for (Parameter param : getParameters()) {
+			if (param instanceof SingleParameter) {
+				SingleParameter sp = (SingleParameter) param;
+				SAttribute attribute = sp.getAttribute();
+				try {
+					try {
+						String attrName = StringUtils.capitalize(attribute
+								.getID());
+						PropertyDescriptor desc = propertyForID.get(attrName);
+						if (desc == null
+								&& attribute.getOwner() != getRootContext()) {
+							// We need to qualify name
+							attrName = StringUtils.capitalize(attribute
+									.getOwner().getID()) + attrName;
+							desc = propertyForID.get(attrName);
+						}
+						if (desc == null) {
+							warn(status, "Could not find attribute \""
+									+ attrName + "\" in " + assignees, null);
+						} else {
+							Object assignee = assigneeForProperty.get(desc);
+							if (attribute.getSType() == SAttributeType.REAL_LITERAL) {
+								assign(desc, assignee,
+										Double.valueOf(AParInterpreter.value(sp
+												.getValue())));
+							} else if (attribute.getSType() == SAttributeType.INTEGER_LITERAL) {
+								assign(desc, assignee,
+										Integer.valueOf(AParInterpreter
+												.value(sp.getValue())));
+							} else if (attribute.getSType() == SAttributeType.BOOLEAN_LITERAL) {
+								assign(desc, assignee,
+										(((BooleanValue) sp.getValue())
+												.getValue() == BOOLEAN.TRUE));
+							} else if (attribute.getSType() == SAttributeType.SYMBOL_LITERAL) {
+								String string = AParInterpreter.value(sp
+										.getValue());
+								string = StringUtils.replace(string, "|",
+										getLocalPath() + "/");
+								assign(desc, assignee, string);
+							} else {
+								status.add(new Status(Status.WARNING,
+										"org.eclipse.amp.amf.testing.ide",
+										"Unrecognized type: "
+												+ attribute.getSType()));
+							}
+						}
+					} catch (Exception e) {
+						status.add(new Status(Status.WARNING,
+								"org.eclipse.amp.amf.testing.ide",
+								"Problem assigning parameter: " + attribute, e));
+						continue;
+					}
+				} catch (Exception e) {
+					status.add(new Status(Status.WARNING,
+							"org.eclipse.amp.amf.testing.ide",
+							"Couldn't obtain property descriptors for \""
+									+ getModelClass() + "\"", e));
+				}
+			}
+		}
+	}
 
-    private void warn(MultiStatus status, String msg, Exception e) {
-        if (status != null) {
-            status.add(new Status(Status.WARNING, "org.eclipse.amp.amf.testing.ide", msg, e));
-        } else {
-            System.err.println(msg);
-        }
-    }
+	private void warn(MultiStatus status, String msg, Exception e) {
+		if (status != null) {
+			status.add(new Status(Status.WARNING,
+					"org.eclipse.amp.amf.testing.ide", msg, e));
+		} else {
+			System.err.println(msg);
+		}
+	}
 
-    public Model getModel() {
-        return aparModel;
-    }
+	public Model getModel() {
+		return aparModel;
+	}
 
-    public Resource getResource() {
-        return emfResource;
-    }
+	public Resource getResource() {
+		return emfResource;
+	}
 
-    public void setCache(IInterpreterProvider cache) {
-        this.cache = cache;
-    }
+	public void setCache(IInterpreterProvider cache) {
+		this.cache = cache;
+	}
 
-    public List<Parameter> getParameters() {
-        return parameters;
-    }
+	public List<Parameter> getParameters() {
+		return parameters;
+	}
 
-    public String getLocalPath() {
-        return localPath;
-    }
+	public String getLocalPath() {
+		return localPath;
+	}
 
-    public static String convertURI(Incorporates incorporateModel) {
-        return convertURI(incorporateModel, incorporateModel.getImportURI());
-    }
+	public static String convertURI(Incorporates incorporateModel) {
+		return convertURI(incorporateModel, incorporateModel.getImportURI());
+	}
 
-    // poor man's interfaces!
-    public static String convertURI(Import importModel) {
-        return convertURI(importModel, importModel.getImportURI());
-    }
+	// poor man's interfaces!
+	public static String convertURI(Import importModel) {
+		return convertURI(importModel, importModel.getImportURI());
+	}
 
-    public static String convertURI(EObject projectObject, String uri) {
-        URI fileURI = projectObject.eResource().getURI();
-        if (uri.startsWith("|")) {
-            // Project relative
-            String platformString = "platform:/" + fileURI.segment(0) + "/" + fileURI.segment(1);
-            return platformString + "/" + uri.substring(1);
-        } else if (!uri.startsWith("/") && !uri.startsWith("platform")) {
-            // this is really ugly..
-            fileURI = fileURI.trimSegments(1).resolve(fileURI);
-            String platformString = fileURI + "/" + uri;
-            return platformString;
-        }
-        // } else if (!uri.startsWith("platform")) {
-        // // file relative
-        // String projectURI = fileURI.trimSegments(fileURI.segmentCount() - 2).toPlatformString(true);
-        // fileURI.
-        // System.err.println("file " + fileURI);
-        // System.err.println("folder " + folderURI);
-        // System.err.println("uri " + uri);
-        // System.err.println("res " + folderURI + "/" + uri);
-        // return folderURI + "/" + uri;
-        // }
-        return uri;
-    }
+	public static String convertURI(EObject projectObject, String uri) {
+		URI fileURI = projectObject.eResource().getURI();
+		if (uri.startsWith("|")) {
+			// Project relative
+			String platformString = "platform:/" + fileURI.segment(0) + "/"
+					+ fileURI.segment(1);
+			return platformString + "/" + uri.substring(1);
+		} else if (!uri.startsWith("/") && !uri.startsWith("platform")) {
+			// this is really ugly..
+			fileURI = fileURI.trimSegments(1).resolve(fileURI);
+			String platformString = fileURI + "/" + uri;
+			return platformString;
+		}
+		// } else if (!uri.startsWith("platform")) {
+		// // file relative
+		// String projectURI = fileURI.trimSegments(fileURI.segmentCount() -
+		// 2).toPlatformString(true);
+		// fileURI.
+		// System.err.println("file " + fileURI);
+		// System.err.println("folder " + folderURI);
+		// System.err.println("uri " + uri);
+		// System.err.println("res " + folderURI + "/" + uri);
+		// return folderURI + "/" + uri;
+		// }
+		return uri;
+	}
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/AresEditPlugin.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/AresEditPlugin.java
index bc894d6..b598192 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/AresEditPlugin.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/AresEditPlugin.java
@@ -6,6 +6,7 @@
  */
 package org.eclipse.amp.amf.testing.ares.provider;
 
+import org.eclipse.amp.amf.abase.aBase.provider.ABaseEditPlugin;
 import org.eclipse.amp.amf.parameters.aPar.provider.AParEditPlugin;
 import org.eclipse.amp.amf.testing.aTest.provider.ATestEditPlugin;
 import org.eclipse.emf.common.EMFPlugin;
@@ -20,79 +21,80 @@
  */
 public final class AresEditPlugin 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 AresEditPlugin INSTANCE = new AresEditPlugin();
 
     /**
-     * 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 AresEditPlugin() {
-        super
-          (new ResourceLocator [] {
-             AParEditPlugin.INSTANCE,
-             ATestEditPlugin.INSTANCE,
-             MetaABMEditPlugin.INSTANCE,
-           });
-    }
+		super
+		  (new ResourceLocator [] {
+		     AParEditPlugin.INSTANCE,
+		     ATestEditPlugin.INSTANCE,
+		     MetaABMEditPlugin.INSTANCE,
+		     ABaseEditPlugin.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.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/AresItemProviderAdapterFactory.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/AresItemProviderAdapterFactory.java
index a437733..102d66f 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/AresItemProviderAdapterFactory.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/AresItemProviderAdapterFactory.java
@@ -36,214 +36,214 @@
  */
 public class AresItemProviderAdapterFactory extends AresAdapterFactory 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 AresItemProviderAdapterFactory() {
-        supportedTypes.add(IEditingDomainItemProvider.class);
-        supportedTypes.add(IStructuredItemContentProvider.class);
-        supportedTypes.add(ITreeItemContentProvider.class);
-        supportedTypes.add(IItemLabelProvider.class);
-        supportedTypes.add(IItemPropertySource.class);
-    }
+		supportedTypes.add(IEditingDomainItemProvider.class);
+		supportedTypes.add(IStructuredItemContentProvider.class);
+		supportedTypes.add(ITreeItemContentProvider.class);
+		supportedTypes.add(IItemLabelProvider.class);
+		supportedTypes.add(IItemPropertySource.class);
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.testing.ares.Run} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.testing.ares.Run} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected RunItemProvider runItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.testing.ares.Run}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.testing.ares.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.testing.ares.ConstraintTest} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.testing.ares.ConstraintTest} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ConstraintTestItemProvider constraintTestItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.testing.ares.ConstraintTest}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.testing.ares.ConstraintTest}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createConstraintTestAdapter() {
-        if (constraintTestItemProvider == null) {
-            constraintTestItemProvider = new ConstraintTestItemProvider(this);
-        }
+		if (constraintTestItemProvider == null) {
+			constraintTestItemProvider = new ConstraintTestItemProvider(this);
+		}
 
-        return constraintTestItemProvider;
-    }
+		return constraintTestItemProvider;
+	}
 
     /**
-     * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.testing.ares.RunSet} instances.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the one adapter used for all {@link org.eclipse.amp.amf.testing.ares.RunSet} instances.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected RunSetItemProvider runSetItemProvider;
 
     /**
-     * This creates an adapter for a {@link org.eclipse.amp.amf.testing.ares.RunSet}.
-     * <!-- begin-user-doc -->
+	 * This creates an adapter for a {@link org.eclipse.amp.amf.testing.ares.RunSet}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Adapter createRunSetAdapter() {
-        if (runSetItemProvider == null) {
-            runSetItemProvider = new RunSetItemProvider(this);
-        }
+		if (runSetItemProvider == null) {
+			runSetItemProvider = new RunSetItemProvider(this);
+		}
 
-        return runSetItemProvider;
-    }
+		return runSetItemProvider;
+	}
 
     /**
-     * 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 (constraintTestItemProvider != null) constraintTestItemProvider.dispose();
-        if (runSetItemProvider != null) runSetItemProvider.dispose();
-    }
+		if (runItemProvider != null) runItemProvider.dispose();
+		if (constraintTestItemProvider != null) constraintTestItemProvider.dispose();
+		if (runSetItemProvider != null) runSetItemProvider.dispose();
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/ConstraintTestItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/ConstraintTestItemProvider.java
index bb0216c..7645d44 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/ConstraintTestItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/ConstraintTestItemProvider.java
@@ -36,115 +36,115 @@
 public class ConstraintTestItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider,
 IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
     /**
-     * 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 ConstraintTestItemProvider(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);
 
-            addConstraintPropertyDescriptor(object);
-            addIssuePropertyDescriptor(object);
-            addActualValuePropertyDescriptor(object);
-            addFailurePropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addConstraintPropertyDescriptor(object);
+			addIssuePropertyDescriptor(object);
+			addActualValuePropertyDescriptor(object);
+			addFailurePropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This adds a property descriptor for the Constraint feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Constraint feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addConstraintPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_ConstraintTest_constraint_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_ConstraintTest_constraint_feature", "_UI_ConstraintTest_type"),
-                 AresPackage.Literals.CONSTRAINT_TEST__CONSTRAINT,
-                 true,
-                 false,
-                 true,
-                 null,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConstraintTest_constraint_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConstraintTest_constraint_feature", "_UI_ConstraintTest_type"),
+				 AresPackage.Literals.CONSTRAINT_TEST__CONSTRAINT,
+				 true,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Issue feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Issue feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addIssuePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_ConstraintTest_issue_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_ConstraintTest_issue_feature", "_UI_ConstraintTest_type"),
-                 AresPackage.Literals.CONSTRAINT_TEST__ISSUE,
-                 true,
-                 false,
-                 false,
-                 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConstraintTest_issue_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConstraintTest_issue_feature", "_UI_ConstraintTest_type"),
+				 AresPackage.Literals.CONSTRAINT_TEST__ISSUE,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Actual Value feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Actual Value feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addActualValuePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_ConstraintTest_actualValue_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_ConstraintTest_actualValue_feature", "_UI_ConstraintTest_type"),
-                 AresPackage.Literals.CONSTRAINT_TEST__ACTUAL_VALUE,
-                 true,
-                 false,
-                 false,
-                 ItemPropertyDescriptor.REAL_VALUE_IMAGE,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConstraintTest_actualValue_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConstraintTest_actualValue_feature", "_UI_ConstraintTest_type"),
+				 AresPackage.Literals.CONSTRAINT_TEST__ACTUAL_VALUE,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.REAL_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Failure feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Failure feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addFailurePropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_ConstraintTest_failure_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_ConstraintTest_failure_feature", "_UI_ConstraintTest_type"),
-                 AresPackage.Literals.CONSTRAINT_TEST__FAILURE,
-                 false,
-                 false,
-                 false,
-                 ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_ConstraintTest_failure_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_ConstraintTest_failure_feature", "_UI_ConstraintTest_type"),
+				 AresPackage.Literals.CONSTRAINT_TEST__FAILURE,
+				 false,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
      * This returns Failure.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -199,37 +199,37 @@
      */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(ConstraintTest.class)) {
-            case AresPackage.CONSTRAINT_TEST__ISSUE:
-            case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
-            case AresPackage.CONSTRAINT_TEST__FAILURE:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(ConstraintTest.class)) {
+			case AresPackage.CONSTRAINT_TEST__ISSUE:
+			case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
+			case AresPackage.CONSTRAINT_TEST__FAILURE:
+				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 AresEditPlugin.INSTANCE;
-    }
+		return AresEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/RunItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/RunItemProvider.java
index 60b78cd..d2c52af 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/RunItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/RunItemProvider.java
@@ -38,256 +38,256 @@
 public class RunItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider,
 IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
     /**
-     * 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 RunItemProvider(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);
 
-            addModelPropertyDescriptor(object);
-            addTestPropertyDescriptor(object);
-            addParameterizationPropertyDescriptor(object);
-            addResultPropertyDescriptor(object);
-            addParametersPropertyDescriptor(object);
-            addConstraintsPropertyDescriptor(object);
-            addStartedPropertyDescriptor(object);
-            addFinishedPropertyDescriptor(object);
-            addResultsPropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addModelPropertyDescriptor(object);
+			addTestPropertyDescriptor(object);
+			addParameterizationPropertyDescriptor(object);
+			addResultPropertyDescriptor(object);
+			addParametersPropertyDescriptor(object);
+			addConstraintsPropertyDescriptor(object);
+			addStartedPropertyDescriptor(object);
+			addFinishedPropertyDescriptor(object);
+			addResultsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This adds a property descriptor for the Model feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Model feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @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"),
-          AresPackage.Literals.RUN__MODEL,
-          false,
-          false,
-          false,
-          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"),
+				 AresPackage.Literals.RUN__MODEL,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Test feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Test feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addTestPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_test_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_test_feature", "_UI_Run_type"),
-          AresPackage.Literals.RUN__TEST,
-          false,
-          false,
-          false,
-          null,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_test_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_test_feature", "_UI_Run_type"),
+				 AresPackage.Literals.RUN__TEST,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Parameterization feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Parameterization feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addParameterizationPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_parameterization_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_parameterization_feature", "_UI_Run_type"),
-          AresPackage.Literals.RUN__PARAMETERIZATION,
-          false,
-          false,
-          false,
-          null,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_parameterization_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_parameterization_feature", "_UI_Run_type"),
+				 AresPackage.Literals.RUN__PARAMETERIZATION,
+				 false,
+				 false,
+				 false,
+				 null,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Result feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Result feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addResultPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_result_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_result_feature", "_UI_Run_type"),
-          AresPackage.Literals.RUN__RESULT,
-          true,
-          false,
-          false,
-          ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_result_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_result_feature", "_UI_Run_type"),
+				 AresPackage.Literals.RUN__RESULT,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Parameters feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Parameters feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addParametersPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_parameters_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_parameters_feature", "_UI_Run_type"),
-          AresPackage.Literals.RUN__PARAMETERS,
-          false,
-          false,
-          true,
-          null,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_parameters_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_parameters_feature", "_UI_Run_type"),
+				 AresPackage.Literals.RUN__PARAMETERS,
+				 false,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Constraints feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Constraints feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addConstraintsPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_constraints_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_constraints_feature", "_UI_Run_type"),
-          AresPackage.Literals.RUN__CONSTRAINTS,
-          false,
-          false,
-          true,
-          null,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_constraints_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_constraints_feature", "_UI_Run_type"),
+				 AresPackage.Literals.RUN__CONSTRAINTS,
+				 false,
+				 false,
+				 true,
+				 null,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Started feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Started feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @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"),
-          AresPackage.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"),
+				 AresPackage.Literals.RUN__STARTED,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Finished feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Finished feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @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"),
-          AresPackage.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"),
+				 AresPackage.Literals.RUN__FINISHED,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Results feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Results feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addResultsPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-        (createItemPropertyDescriptor
-         (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-          getResourceLocator(),
-          getString("_UI_Run_results_feature"),
-          getString("_UI_PropertyDescriptor_description", "_UI_Run_results_feature", "_UI_Run_type"),
-          AresPackage.Literals.RUN__RESULTS,
-          false,
-          false,
-          true,
-          null,
-          null,
-          null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Run_results_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Run_results_feature", "_UI_Run_type"),
+				 AresPackage.Literals.RUN__RESULTS,
+				 false,
+				 false,
+				 true,
+				 null,
+				 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(AresPackage.Literals.RUN__TEST);
-            childrenFeatures.add(AresPackage.Literals.RUN__PARAMETERIZATION);
-            childrenFeatures.add(AresPackage.Literals.RUN__RESULTS);
-        }
-        return childrenFeatures;
-    }
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(AresPackage.Literals.RUN__TEST);
+			childrenFeatures.add(AresPackage.Literals.RUN__PARAMETERIZATION);
+			childrenFeatures.add(AresPackage.Literals.RUN__RESULTS);
+		}
+		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);
+	}
 
     /**
      * This returns Run.gif. <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -336,40 +336,40 @@
      */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(Run.class)) {
-            case AresPackage.RUN__RESULT:
-            case AresPackage.RUN__STARTED:
-            case AresPackage.RUN__FINISHED:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-                return;
-            case AresPackage.RUN__RESULTS:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(Run.class)) {
+			case AresPackage.RUN__RESULT:
+			case AresPackage.RUN__STARTED:
+			case AresPackage.RUN__FINISHED:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case AresPackage.RUN__RESULTS:
+				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 --> <!-- 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 AresEditPlugin.INSTANCE;
-    }
+		return AresEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/RunSetItemProvider.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/RunSetItemProvider.java
index fe9e0cb..1c5fb6e 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/RunSetItemProvider.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.edit/src/org/eclipse/amp/amf/testing/ares/provider/RunSetItemProvider.java
@@ -37,144 +37,144 @@
 public class RunSetItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider,
 IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
     /**
-     * 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 RunSetItemProvider(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);
 
-            addResultPropertyDescriptor(object);
-            addStartedPropertyDescriptor(object);
-            addFinishedPropertyDescriptor(object);
-            addRunsPropertyDescriptor(object);
-        }
-        return itemPropertyDescriptors;
-    }
+			addResultPropertyDescriptor(object);
+			addStartedPropertyDescriptor(object);
+			addFinishedPropertyDescriptor(object);
+			addRunsPropertyDescriptor(object);
+		}
+		return itemPropertyDescriptors;
+	}
 
     /**
-     * This adds a property descriptor for the Result feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Result feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addResultPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_RunSet_result_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_RunSet_result_feature", "_UI_RunSet_type"),
-                 AresPackage.Literals.RUN_SET__RESULT,
-                 false,
-                 false,
-                 false,
-                 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_RunSet_result_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_RunSet_result_feature", "_UI_RunSet_type"),
+				 AresPackage.Literals.RUN_SET__RESULT,
+				 false,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Started feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Started feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addStartedPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_RunSet_started_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_RunSet_started_feature", "_UI_RunSet_type"),
-                 AresPackage.Literals.RUN_SET__STARTED,
-                 false,
-                 false,
-                 true,
-                 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_RunSet_started_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_RunSet_started_feature", "_UI_RunSet_type"),
+				 AresPackage.Literals.RUN_SET__STARTED,
+				 false,
+				 false,
+				 true,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Finished feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Finished feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addFinishedPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_RunSet_finished_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_RunSet_finished_feature", "_UI_RunSet_type"),
-                 AresPackage.Literals.RUN_SET__FINISHED,
-                 false,
-                 false,
-                 false,
-                 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_RunSet_finished_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_RunSet_finished_feature", "_UI_RunSet_type"),
+				 AresPackage.Literals.RUN_SET__FINISHED,
+				 false,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
 
     /**
-     * This adds a property descriptor for the Runs feature.
-     * <!-- begin-user-doc --> <!-- end-user-doc -->
-     * @generated
-     */
+	 * This adds a property descriptor for the Runs feature.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected void addRunsPropertyDescriptor(Object object) {
-        itemPropertyDescriptors.add
-            (createItemPropertyDescriptor
-                (((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-                 getResourceLocator(),
-                 getString("_UI_RunSet_runs_feature"),
-                 getString("_UI_PropertyDescriptor_description", "_UI_RunSet_runs_feature", "_UI_RunSet_type"),
-                 AresPackage.Literals.RUN_SET__RUNS,
-                 true,
-                 false,
-                 false,
-                 null,
-                 null,
-                 null));
-    }
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_RunSet_runs_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_RunSet_runs_feature", "_UI_RunSet_type"),
+				 AresPackage.Literals.RUN_SET__RUNS,
+				 true,
+				 false,
+				 false,
+				 null,
+				 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(AresPackage.Literals.RUN_SET__RUNS);
-        }
-        return childrenFeatures;
-    }
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures.add(AresPackage.Literals.RUN_SET__RUNS);
+		}
+		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);
+	}
 
     /**
      * This returns RunSet.gif.
@@ -219,35 +219,35 @@
      */
     @Override
     public void notifyChanged(Notification notification) {
-        updateChildren(notification);
+		updateChildren(notification);
 
-        switch (notification.getFeatureID(RunSet.class)) {
-            case AresPackage.RUN_SET__RUNS:
-                fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
-                return;
-        }
-        super.notifyChanged(notification);
-    }
+		switch (notification.getFeatureID(RunSet.class)) {
+			case AresPackage.RUN_SET__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 --> <!-- 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 AresEditPlugin.INSTANCE;
-    }
+		return AresEditPlugin.INSTANCE;
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresActionBarContributor.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresActionBarContributor.java
index 647b559..03d72b5 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresActionBarContributor.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresActionBarContributor.java
@@ -48,349 +48,349 @@
 extends EditingDomainActionBarContributor
 implements ISelectionChangedListener {
     /**
-     * This keeps track of the active editor.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the active editor.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IEditorPart activeEditorPart;
 
     /**
-     * This keeps track of the current selection provider.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the current selection provider.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ISelectionProvider selectionProvider;
 
 
     /**
-     * This action opens the Properties view. <!-- begin-user-doc --> <!-- end-user-doc -->
-     * 
-     * @generated
-     */
+	 * This action opens the Properties view.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @generated
+	 */
     protected IAction showPropertiesViewAction =
         new Action(AresEditorPlugin.INSTANCE.getString("_UI_ShowPropertiesView_menu_item")) {
-        @Override
-        public void run() {
-            try {
-                getPage().showView("org.eclipse.ui.views.PropertySheet");
-            }
-            catch (PartInitException exception) {
-                AresEditorPlugin.INSTANCE.log(exception);
-            }
-        }
-    };
+			@Override
+			public void run() {
+				try {
+					getPage().showView("org.eclipse.ui.views.PropertySheet");
+				}
+				catch (PartInitException exception) {
+					AresEditorPlugin.INSTANCE.log(exception);
+				}
+			}
+		};
 
 
     /**
-     * This action refreshes the viewer of the current editor if the editor
-     * implements {@link org.eclipse.emf.common.ui.viewer.IViewerProvider}.
-     * <!-- begin-user-doc -->
+	 * This action refreshes the viewer of the current editor if the editor
+	 * implements {@link org.eclipse.emf.common.ui.viewer.IViewerProvider}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IAction refreshViewerAction =
         new Action(AresEditorPlugin.INSTANCE.getString("_UI_RefreshViewer_menu_item")) {
-        @Override
-        public boolean isEnabled() {
-            return activeEditorPart instanceof IViewerProvider;
-        }
+			@Override
+			public boolean isEnabled() {
+				return activeEditorPart instanceof IViewerProvider;
+			}
 
-        @Override
-        public void run() {
-            if (activeEditorPart instanceof IViewerProvider) {
-                Viewer viewer = ((IViewerProvider)activeEditorPart).getViewer();
-                if (viewer != null) {
-                    viewer.refresh();
-                }
-            }
-        }
-    };
+			@Override
+			public void run() {
+				if (activeEditorPart instanceof IViewerProvider) {
+					Viewer viewer = ((IViewerProvider)activeEditorPart).getViewer();
+					if (viewer != null) {
+						viewer.refresh();
+					}
+				}
+			}
+		};
 
     /**
-     * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateChildAction} corresponding to each descriptor
-     * generated for the current selection by the item provider.
-     * <!-- begin-user-doc -->
+	 * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateChildAction} corresponding to each descriptor
+	 * generated for the current selection by the item provider.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Collection<IAction> createChildActions;
 
     /**
-     * This is the menu manager into which menu contribution items should be added for CreateChild actions.
-     * <!-- begin-user-doc -->
+	 * This is the menu manager into which menu contribution items should be added for CreateChild actions.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IMenuManager createChildMenuManager;
 
     /**
-     * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} corresponding to each descriptor
-     * generated for the current selection by the item provider.
-     * <!-- begin-user-doc -->
+	 * This will contain one {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} corresponding to each descriptor
+	 * generated for the current selection by the item provider.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Collection<IAction> createSiblingActions;
 
     /**
-     * This is the menu manager into which menu contribution items should be added for CreateSibling actions.
-     * <!-- begin-user-doc -->
+	 * This is the menu manager into which menu contribution items should be added for CreateSibling actions.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IMenuManager createSiblingMenuManager;
 
     /**
-     * This creates an instance of the contributor.
-     * <!-- begin-user-doc -->
+	 * This creates an instance of the contributor.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public AresActionBarContributor() {
-        super(ADDITIONS_LAST_STYLE);
-        loadResourceAction = new LoadResourceAction();
-        validateAction = new ValidateAction();
-        controlAction = new ControlAction();
-    }
+		super(ADDITIONS_LAST_STYLE);
+		loadResourceAction = new LoadResourceAction();
+		validateAction = new ValidateAction();
+		controlAction = new ControlAction();
+	}
 
     /**
-     * This adds Separators for editor additions to the tool bar.
-     * <!-- begin-user-doc -->
+	 * This adds Separators for editor additions to the tool bar.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void contributeToToolBar(IToolBarManager toolBarManager) {
-        toolBarManager.add(new Separator("ares-settings"));
-        toolBarManager.add(new Separator("ares-additions"));
-    }
+		toolBarManager.add(new Separator("ares-settings"));
+		toolBarManager.add(new Separator("ares-additions"));
+	}
 
     /**
-     * This adds to the menu bar a menu and some separators for editor additions,
-     * as well as the sub-menus for object creation items.
-     * <!-- begin-user-doc -->
+	 * This adds to the menu bar a menu and some separators for editor additions,
+	 * as well as the sub-menus for object creation items.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void contributeToMenu(IMenuManager menuManager) {
-        super.contributeToMenu(menuManager);
+		super.contributeToMenu(menuManager);
 
-        IMenuManager submenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_AresEditor_menu"), "org.eclipse.amp.amf.testing.aresMenuID");
-        menuManager.insertAfter("additions", submenuManager);
-        submenuManager.add(new Separator("settings"));
-        submenuManager.add(new Separator("actions"));
-        submenuManager.add(new Separator("additions"));
-        submenuManager.add(new Separator("additions-end"));
+		IMenuManager submenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_AresEditor_menu"), "org.eclipse.amp.amf.testing.aresMenuID");
+		menuManager.insertAfter("additions", submenuManager);
+		submenuManager.add(new Separator("settings"));
+		submenuManager.add(new Separator("actions"));
+		submenuManager.add(new Separator("additions"));
+		submenuManager.add(new Separator("additions-end"));
 
-        // Prepare for CreateChild item addition or removal.
-        //
-        createChildMenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
-        submenuManager.insertBefore("additions", createChildMenuManager);
+		// Prepare for CreateChild item addition or removal.
+		//
+		createChildMenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
+		submenuManager.insertBefore("additions", createChildMenuManager);
 
-        // Prepare for CreateSibling item addition or removal.
-        //
-        createSiblingMenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
-        submenuManager.insertBefore("additions", createSiblingMenuManager);
+		// Prepare for CreateSibling item addition or removal.
+		//
+		createSiblingMenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
+		submenuManager.insertBefore("additions", createSiblingMenuManager);
 
-        // Force an update because Eclipse hides empty menus now.
-        //
-        submenuManager.addMenuListener
-        (new IMenuListener() {
-            public void menuAboutToShow(IMenuManager menuManager) {
-                menuManager.updateAll(true);
-            }
-        });
+		// Force an update because Eclipse hides empty menus now.
+		//
+		submenuManager.addMenuListener
+			(new IMenuListener() {
+				 public void menuAboutToShow(IMenuManager menuManager) {
+					 menuManager.updateAll(true);
+				 }
+			 });
 
-        addGlobalActions(submenuManager);
-    }
+		addGlobalActions(submenuManager);
+	}
 
     /**
-     * When the active editor changes, this remembers the change and registers with it as a selection provider.
-     * <!-- begin-user-doc -->
+	 * When the active editor changes, this remembers the change and registers with it as a selection provider.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void setActiveEditor(IEditorPart part) {
-        super.setActiveEditor(part);
-        activeEditorPart = part;
+		super.setActiveEditor(part);
+		activeEditorPart = part;
 
-        // Switch to the new selection provider.
-        //
-        if (selectionProvider != null) {
-            selectionProvider.removeSelectionChangedListener(this);
-        }
-        if (part == null) {
-            selectionProvider = null;
-        }
-        else {
-            selectionProvider = part.getSite().getSelectionProvider();
-            selectionProvider.addSelectionChangedListener(this);
+		// Switch to the new selection provider.
+		//
+		if (selectionProvider != null) {
+			selectionProvider.removeSelectionChangedListener(this);
+		}
+		if (part == null) {
+			selectionProvider = null;
+		}
+		else {
+			selectionProvider = part.getSite().getSelectionProvider();
+			selectionProvider.addSelectionChangedListener(this);
 
-            // Fake a selection changed event to update the menus.
-            //
-            if (selectionProvider.getSelection() != null) {
-                selectionChanged(new SelectionChangedEvent(selectionProvider, selectionProvider.getSelection()));
-            }
-        }
-    }
+			// Fake a selection changed event to update the menus.
+			//
+			if (selectionProvider.getSelection() != null) {
+				selectionChanged(new SelectionChangedEvent(selectionProvider, selectionProvider.getSelection()));
+			}
+		}
+	}
 
     /**
-     * This implements {@link org.eclipse.jface.viewers.ISelectionChangedListener},
-     * handling {@link org.eclipse.jface.viewers.SelectionChangedEvent}s by querying for the children and siblings
-     * that can be added to the selected object and updating the menus accordingly.
-     * <!-- begin-user-doc -->
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionChangedListener},
+	 * handling {@link org.eclipse.jface.viewers.SelectionChangedEvent}s by querying for the children and siblings
+	 * that can be added to the selected object and updating the menus accordingly.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void selectionChanged(SelectionChangedEvent event) {
-        // Remove any menu items for old selection.
-        //
-        if (createChildMenuManager != null) {
-            depopulateManager(createChildMenuManager, createChildActions);
-        }
-        if (createSiblingMenuManager != null) {
-            depopulateManager(createSiblingMenuManager, createSiblingActions);
-        }
+		// Remove any menu items for old selection.
+		//
+		if (createChildMenuManager != null) {
+			depopulateManager(createChildMenuManager, createChildActions);
+		}
+		if (createSiblingMenuManager != null) {
+			depopulateManager(createSiblingMenuManager, createSiblingActions);
+		}
 
-        // Query the new selection for appropriate new child/sibling descriptors
-        //
-        Collection<?> newChildDescriptors = null;
-        Collection<?> newSiblingDescriptors = null;
+		// Query the new selection for appropriate new child/sibling descriptors
+		//
+		Collection<?> newChildDescriptors = null;
+		Collection<?> newSiblingDescriptors = null;
 
-        ISelection selection = event.getSelection();
-        if (selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) {
-            Object object = ((IStructuredSelection)selection).getFirstElement();
+		ISelection selection = event.getSelection();
+		if (selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) {
+			Object object = ((IStructuredSelection)selection).getFirstElement();
 
-            EditingDomain domain = ((IEditingDomainProvider)activeEditorPart).getEditingDomain();
+			EditingDomain domain = ((IEditingDomainProvider)activeEditorPart).getEditingDomain();
 
-            newChildDescriptors = domain.getNewChildDescriptors(object, null);
-            newSiblingDescriptors = domain.getNewChildDescriptors(null, object);
-        }
+			newChildDescriptors = domain.getNewChildDescriptors(object, null);
+			newSiblingDescriptors = domain.getNewChildDescriptors(null, object);
+		}
 
-        // Generate actions for selection; populate and redraw the menus.
-        //
-        createChildActions = generateCreateChildActions(newChildDescriptors, selection);
-        createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection);
+		// Generate actions for selection; populate and redraw the menus.
+		//
+		createChildActions = generateCreateChildActions(newChildDescriptors, selection);
+		createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection);
 
-        if (createChildMenuManager != null) {
-            populateManager(createChildMenuManager, createChildActions, null);
-            createChildMenuManager.update(true);
-        }
-        if (createSiblingMenuManager != null) {
-            populateManager(createSiblingMenuManager, createSiblingActions, null);
-            createSiblingMenuManager.update(true);
-        }
-    }
+		if (createChildMenuManager != null) {
+			populateManager(createChildMenuManager, createChildActions, null);
+			createChildMenuManager.update(true);
+		}
+		if (createSiblingMenuManager != null) {
+			populateManager(createSiblingMenuManager, createSiblingActions, null);
+			createSiblingMenuManager.update(true);
+		}
+	}
 
     /**
-     * This generates a {@link org.eclipse.emf.edit.ui.action.CreateChildAction} for each object in <code>descriptors</code>,
-     * and returns the collection of these actions.
-     * <!-- begin-user-doc -->
+	 * This generates a {@link org.eclipse.emf.edit.ui.action.CreateChildAction} for each object in <code>descriptors</code>,
+	 * and returns the collection of these actions.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Collection<IAction> generateCreateChildActions(Collection<?> descriptors, ISelection selection) {
-        Collection<IAction> actions = new ArrayList<IAction>();
-        if (descriptors != null) {
-            for (Object descriptor : descriptors) {
-                actions.add(new CreateChildAction(activeEditorPart, selection, descriptor));
-            }
-        }
-        return actions;
-    }
+		Collection<IAction> actions = new ArrayList<IAction>();
+		if (descriptors != null) {
+			for (Object descriptor : descriptors) {
+				actions.add(new CreateChildAction(activeEditorPart, selection, descriptor));
+			}
+		}
+		return actions;
+	}
 
     /**
-     * This generates a {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} for each object in <code>descriptors</code>,
-     * and returns the collection of these actions.
-     * <!-- begin-user-doc -->
+	 * This generates a {@link org.eclipse.emf.edit.ui.action.CreateSiblingAction} for each object in <code>descriptors</code>,
+	 * and returns the collection of these actions.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Collection<IAction> generateCreateSiblingActions(Collection<?> descriptors, ISelection selection) {
-        Collection<IAction> actions = new ArrayList<IAction>();
-        if (descriptors != null) {
-            for (Object descriptor : descriptors) {
-                actions.add(new CreateSiblingAction(activeEditorPart, selection, descriptor));
-            }
-        }
-        return actions;
-    }
+		Collection<IAction> actions = new ArrayList<IAction>();
+		if (descriptors != null) {
+			for (Object descriptor : descriptors) {
+				actions.add(new CreateSiblingAction(activeEditorPart, selection, descriptor));
+			}
+		}
+		return actions;
+	}
 
     /**
-     * This populates the specified <code>manager</code> with {@link org.eclipse.jface.action.ActionContributionItem}s
-     * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection,
-     * by inserting them before the specified contribution item <code>contributionID</code>.
-     * If <code>contributionID</code> is <code>null</code>, they are simply added.
-     * <!-- begin-user-doc -->
+	 * This populates the specified <code>manager</code> with {@link org.eclipse.jface.action.ActionContributionItem}s
+	 * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection,
+	 * by inserting them before the specified contribution item <code>contributionID</code>.
+	 * If <code>contributionID</code> is <code>null</code>, they are simply added.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void populateManager(IContributionManager manager, Collection<? extends IAction> actions, String contributionID) {
-        if (actions != null) {
-            for (IAction action : actions) {
-                if (contributionID != null) {
-                    manager.insertBefore(contributionID, action);
-                }
-                else {
-                    manager.add(action);
-                }
-            }
-        }
-    }
+		if (actions != null) {
+			for (IAction action : actions) {
+				if (contributionID != null) {
+					manager.insertBefore(contributionID, action);
+				}
+				else {
+					manager.add(action);
+				}
+			}
+		}
+	}
 
     /**
-     * This removes from the specified <code>manager</code> all {@link org.eclipse.jface.action.ActionContributionItem}s
-     * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection.
-     * <!-- begin-user-doc -->
+	 * This removes from the specified <code>manager</code> all {@link org.eclipse.jface.action.ActionContributionItem}s
+	 * based on the {@link org.eclipse.jface.action.IAction}s contained in the <code>actions</code> collection.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void depopulateManager(IContributionManager manager, Collection<? extends IAction> actions) {
-        if (actions != null) {
-            IContributionItem[] items = manager.getItems();
-            for (int i = 0; i < items.length; i++) {
-                // Look into SubContributionItems
-                //
-                IContributionItem contributionItem = items[i];
-                while (contributionItem instanceof SubContributionItem) {
-                    contributionItem = ((SubContributionItem)contributionItem).getInnerItem();
-                }
+		if (actions != null) {
+			IContributionItem[] items = manager.getItems();
+			for (int i = 0; i < items.length; i++) {
+				// Look into SubContributionItems
+				//
+				IContributionItem contributionItem = items[i];
+				while (contributionItem instanceof SubContributionItem) {
+					contributionItem = ((SubContributionItem)contributionItem).getInnerItem();
+				}
 
-                // Delete the ActionContributionItems with matching action.
-                //
-                if (contributionItem instanceof ActionContributionItem) {
-                    IAction action = ((ActionContributionItem)contributionItem).getAction();
-                    if (actions.contains(action)) {
-                        manager.remove(contributionItem);
-                    }
-                }
-            }
-        }
-    }
+				// Delete the ActionContributionItems with matching action.
+				//
+				if (contributionItem instanceof ActionContributionItem) {
+					IAction action = ((ActionContributionItem)contributionItem).getAction();
+					if (actions.contains(action)) {
+						manager.remove(contributionItem);
+					}
+				}
+			}
+		}
+	}
 
     /**
-     * This populates the pop-up menu before it appears.
-     * <!-- begin-user-doc -->
+	 * This populates the pop-up menu before it appears.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void menuAboutToShow(IMenuManager menuManager) {
-        super.menuAboutToShow(menuManager);
-        MenuManager submenuManager = null;
+		super.menuAboutToShow(menuManager);
+		MenuManager submenuManager = null;
 
-        submenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
-        populateManager(submenuManager, createChildActions, null);
-        menuManager.insertBefore("edit", submenuManager);
+		submenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_CreateChild_menu_item"));
+		populateManager(submenuManager, createChildActions, null);
+		menuManager.insertBefore("edit", submenuManager);
 
-        submenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
-        populateManager(submenuManager, createSiblingActions, null);
-        menuManager.insertBefore("edit", submenuManager);
-    }
+		submenuManager = new MenuManager(AresEditorPlugin.INSTANCE.getString("_UI_CreateSibling_menu_item"));
+		populateManager(submenuManager, createSiblingActions, null);
+		menuManager.insertBefore("edit", submenuManager);
+	}
 
     /**
      * This inserts global actions before the "additions-end" separator. <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -409,14 +409,14 @@
     }
 
     /**
-     * This ensures that a delete action will clean up all references to deleted objects.
-     * <!-- begin-user-doc -->
+	 * This ensures that a delete action will clean up all references to deleted objects.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected boolean removeAllReferencesOnDelete() {
-        return true;
-    }
+		return true;
+	}
 
 }
\ No newline at end of file
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresEditor.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresEditor.java
index 76abb99..628b98c 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresEditor.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresEditor.java
@@ -22,6 +22,7 @@
 import org.eclipse.amp.amf.parameters.aPar.provider.AParItemProviderAdapterFactory;
 import org.eclipse.amp.amf.testing.aTest.provider.ATestItemProviderAdapterFactory;
 import org.eclipse.amp.amf.testing.ares.provider.AresItemProviderAdapterFactory;
+import org.eclipse.amp.amf.abase.aBase.provider.ABaseItemProviderAdapterFactory;
 import org.eclipse.core.resources.IFile;
 import org.eclipse.core.resources.IMarker;
 import org.eclipse.core.resources.IResource;
@@ -139,827 +140,828 @@
 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 -->
+	 * This keeps track of the editing domain that is used to track all changes to the model.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected AdapterFactoryEditingDomain editingDomain;
 
     /**
-     * This is the one adapter factory used for providing views of the model.
-     * <!-- begin-user-doc -->
+	 * This is the one adapter factory used for providing views of the model.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ComposedAdapterFactory adapterFactory;
 
     /**
-     * This is the content outline page.
-     * <!-- begin-user-doc -->
+	 * This is the content outline page.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IContentOutlinePage contentOutlinePage;
 
     /**
-     * This is a kludge...
-     * <!-- begin-user-doc -->
+	 * This is a kludge...
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IStatusLineManager contentOutlineStatusLineManager;
 
     /**
-     * This is the content outline page's viewer.
-     * <!-- begin-user-doc -->
+	 * This is the content outline page's viewer.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected TreeViewer contentOutlineViewer;
 
     /**
-     * This is the property sheet page.
-     * <!-- begin-user-doc -->
+	 * This is the property sheet page.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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 -->
+	 * 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
-     */
+	 * @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 -->
+	 * 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
-     */
+	 * @generated
+	 */
     protected TreeViewer parentViewer;
 
     /**
-     * This shows how a tree view works.
-     * <!-- begin-user-doc -->
+	 * This shows how a tree view works.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected TreeViewer treeViewer;
 
     /**
-     * This shows how a list view works.
-     * A list viewer doesn't support icons.
-     * <!-- begin-user-doc -->
+	 * This shows how a list view works.
+	 * A list viewer doesn't support icons.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ListViewer listViewer;
 
     /**
-     * This shows how a table view works.
-     * A table can be used as a list with icons.
-     * <!-- begin-user-doc -->
+	 * This shows how a table view works.
+	 * A table can be used as a list with icons.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected TableViewer tableViewer;
 
     /**
-     * This shows how a tree view with columns works.
-     * <!-- begin-user-doc -->
+	 * This shows how a tree view with columns works.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected TreeViewer treeViewerWithColumns;
 
     /**
-     * This keeps track of the active viewer pane, in the book.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the active viewer pane, in the book.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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 -->
+	 * 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
-     */
+	 * @generated
+	 */
     protected Viewer currentViewer;
 
     /**
-     * This listens to which ever viewer is active.
-     * <!-- begin-user-doc -->
+	 * This listens to which ever viewer is active.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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 -->
+	 * 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
-     */
+	 * @generated
+	 */
     protected Collection<ISelectionChangedListener> selectionChangedListeners = new ArrayList<ISelectionChangedListener>();
 
     /**
-     * This keeps track of the selection of the editor as a whole.
-     * <!-- begin-user-doc -->
+	 * This keeps track of the selection of the editor as a whole.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ISelection editorSelection = StructuredSelection.EMPTY;
 
     /**
-     * The MarkerHelper is responsible for creating workspace resource markers presented
-     * in Eclipse's Problems View.
-     * <!-- begin-user-doc -->
+	 * The MarkerHelper is responsible for creating workspace resource markers presented
+	 * in Eclipse's Problems View.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected MarkerHelper markerHelper = new EditUIMarkerHelper();
 
     /**
-     * This listens for when the outline becomes active
-     * <!-- begin-user-doc -->
+	 * This listens for when the outline becomes active
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IPartListener partListener =
         new IPartListener() {
-            public void partActivated(IWorkbenchPart p) {
-                if (p instanceof ContentOutline) {
-                    if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
-                        getActionBarContributor().setActiveEditor(AresEditor.this);
+			public void partActivated(IWorkbenchPart p) {
+				if (p instanceof ContentOutline) {
+					if (((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
+						getActionBarContributor().setActiveEditor(AresEditor.this);
 
-                        setCurrentViewer(contentOutlineViewer);
-                    }
-                }
-                else if (p instanceof PropertySheet) {
-                    if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
-                        getActionBarContributor().setActiveEditor(AresEditor.this);
-                        handleActivate();
-                    }
-                }
-                else if (p == AresEditor.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(AresEditor.this);
+						handleActivate();
+					}
+				}
+				else if (p == AresEditor.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.
+			}
+		};
 
     /**
-     * Resources that have been removed since last activation.
-     * <!-- begin-user-doc -->
+	 * Resources that have been removed since last activation.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Collection<Resource> removedResources = new ArrayList<Resource>();
 
     /**
-     * Resources that have been changed since last activation.
-     * <!-- begin-user-doc -->
+	 * Resources that have been changed since last activation.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Collection<Resource> changedResources = new ArrayList<Resource>();
 
     /**
-     * Resources that have been saved.
-     * <!-- begin-user-doc -->
+	 * Resources that have been saved.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Collection<Resource> savedResources = new ArrayList<Resource>();
 
     /**
-     * Map to store the diagnostic associated with a resource.
-     * <!-- begin-user-doc -->
+	 * Map to store the diagnostic associated with a resource.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Map<Resource, Diagnostic> resourceToDiagnosticMap = new LinkedHashMap<Resource, Diagnostic>();
 
     /**
-     * Controls whether the problem indication should be updated.
-     * <!-- begin-user-doc -->
+	 * Controls whether the problem indication should be updated.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected boolean updateProblemIndication = true;
 
     /**
-     * Adapter used to update the problem indication when resources are demanded loaded.
-     * <!-- begin-user-doc -->
+	 * Adapter used to update the problem indication when resources are demanded loaded.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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);
-                            }
+			@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);
+							}
 
-                            if (updateProblemIndication) {
-                                getSite().getShell().getDisplay().asyncExec
-                                    (new Runnable() {
-                                         public void run() {
-                                             updateProblemIndication();
-                                         }
-                                     });
-                            }
-                            break;
-                        }
-                    }
-                }
-                else {
-                    super.notifyChanged(notification);
-                }
-            }
+							if (updateProblemIndication) {
+								getSite().getShell().getDisplay().asyncExec
+									(new Runnable() {
+										 public void run() {
+											 updateProblemIndication();
+										 }
+									 });
+							}
+							break;
+						}
+					}
+				}
+				else {
+					super.notifyChanged(notification);
+				}
+			}
 
-            @Override
-            protected void setTarget(Resource target) {
-                basicSetTarget(target);
-            }
+			@Override
+			protected void setTarget(Resource target) {
+				basicSetTarget(target);
+			}
 
-            @Override
-            protected void unsetTarget(Resource target) {
-                basicUnsetTarget(target);
-            }
-        };
+			@Override
+			protected void unsetTarget(Resource target) {
+				basicUnsetTarget(target);
+			}
+		};
 
     /**
-     * This listens for workspace changes.
-     * <!-- begin-user-doc -->
+	 * This listens for workspace changes.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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>();
+			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>();
 
-                        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);
-                                        }
-                                    }
-                                }
-                            }
+						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);
+										}
+									}
+								}
+							}
 
-                            return true;
-                        }
+							return true;
+						}
 
-                        public Collection<Resource> getChangedResources() {
-                            return changedResources;
-                        }
+						public Collection<Resource> getChangedResources() {
+							return changedResources;
+						}
 
-                        public Collection<Resource> getRemovedResources() {
-                            return removedResources;
-                        }
-                    }
+						public Collection<Resource> getRemovedResources() {
+							return removedResources;
+						}
+					}
 
-                    final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor();
-                    delta.accept(visitor);
+					final ResourceDeltaVisitor visitor = new ResourceDeltaVisitor();
+					delta.accept(visitor);
 
-                    if (!visitor.getRemovedResources().isEmpty()) {
-                        getSite().getShell().getDisplay().asyncExec
-                            (new Runnable() {
-                                 public void run() {
-                                     removedResources.addAll(visitor.getRemovedResources());
-                                     if (!isDirty()) {
-                                         getSite().getPage().closeEditor(AresEditor.this, false);
-                                     }
-                                 }
-                             });
-                    }
+					if (!visitor.getRemovedResources().isEmpty()) {
+						getSite().getShell().getDisplay().asyncExec
+							(new Runnable() {
+								 public void run() {
+									 removedResources.addAll(visitor.getRemovedResources());
+									 if (!isDirty()) {
+										 getSite().getPage().closeEditor(AresEditor.this, false);
+									 }
+								 }
+							 });
+					}
 
-                    if (!visitor.getChangedResources().isEmpty()) {
-                        getSite().getShell().getDisplay().asyncExec
-                            (new Runnable() {
-                                 public void run() {
-                                     changedResources.addAll(visitor.getChangedResources());
-                                     if (getSite().getPage().getActiveEditor() == AresEditor.this) {
-                                         handleActivate();
-                                     }
-                                 }
-                             });
-                    }
-                }
-                catch (CoreException exception) {
-                    AresEditorPlugin.INSTANCE.log(exception);
-                }
-            }
-        };
+					if (!visitor.getChangedResources().isEmpty()) {
+						getSite().getShell().getDisplay().asyncExec
+							(new Runnable() {
+								 public void run() {
+									 changedResources.addAll(visitor.getChangedResources());
+									 if (getSite().getPage().getActiveEditor() == AresEditor.this) {
+										 handleActivate();
+									 }
+								 }
+							 });
+					}
+				}
+				catch (CoreException exception) {
+					AresEditorPlugin.INSTANCE.log(exception);
+				}
+			}
+		};
 
     /**
-     * Handles activation of the editor or it's associated views.
-     * <!-- begin-user-doc -->
+	 * Handles activation of the editor or it's associated views.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void handleActivate() {
-        // Recompute the read only state.
-        //
-        if (editingDomain.getResourceToReadOnlyMap() != null) {
-          editingDomain.getResourceToReadOnlyMap().clear();
+		// Recompute the read only state.
+		//
+		if (editingDomain.getResourceToReadOnlyMap() != null) {
+		  editingDomain.getResourceToReadOnlyMap().clear();
 
-          // Refresh any actions that may become enabled or disabled.
-          //
-          setSelection(getSelection());
-        }
+		  // Refresh any actions that may become enabled or disabled.
+		  //
+		  setSelection(getSelection());
+		}
 
-        if (!removedResources.isEmpty()) {
-            if (handleDirtyConflict()) {
-                getSite().getPage().closeEditor(AresEditor.this, false);
-            }
-            else {
-                removedResources.clear();
-                changedResources.clear();
-                savedResources.clear();
-            }
-        }
-        else if (!changedResources.isEmpty()) {
-            changedResources.removeAll(savedResources);
-            handleChangedResources();
-            changedResources.clear();
-            savedResources.clear();
-        }
-    }
+		if (!removedResources.isEmpty()) {
+			if (handleDirtyConflict()) {
+				getSite().getPage().closeEditor(AresEditor.this, false);
+			}
+			else {
+				removedResources.clear();
+				changedResources.clear();
+				savedResources.clear();
+			}
+		}
+		else if (!changedResources.isEmpty()) {
+			changedResources.removeAll(savedResources);
+			handleChangedResources();
+			changedResources.clear();
+			savedResources.clear();
+		}
+	}
 
     /**
-     * Handles what to do with changed resources on activation.
-     * <!-- begin-user-doc -->
+	 * Handles what to do with changed resources on activation.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void handleChangedResources() {
-        if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
-            if (isDirty()) {
-                changedResources.addAll(editingDomain.getResourceSet().getResources());
-            }
-            editingDomain.getCommandStack().flush();
+		if (!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
+			if (isDirty()) {
+				changedResources.addAll(editingDomain.getResourceSet().getResources());
+			}
+			editingDomain.getCommandStack().flush();
 
-            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));
-                        }
-                    }
-                }
-            }
+			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));
+						}
+					}
+				}
+			}
 
-            if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
-                setSelection(StructuredSelection.EMPTY);
-            }
+			if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
+				setSelection(StructuredSelection.EMPTY);
+			}
 
-            updateProblemIndication = true;
-            updateProblemIndication();
-        }
-    }
+			updateProblemIndication = true;
+			updateProblemIndication();
+		}
+	}
 
     /**
-     * Updates the problems indication with the information described in the specified diagnostic.
-     * <!-- begin-user-doc -->
+	 * Updates the problems indication with the information described in the specified diagnostic.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void updateProblemIndication() {
-        if (updateProblemIndication) {
-            BasicDiagnostic diagnostic =
-                new BasicDiagnostic
-                    (Diagnostic.OK,
-                     "org.eclipse.amp.amf.testing.editor",
-                     0,
-                     null,
-                     new Object [] { editingDomain.getResourceSet() });
-            for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
-                if (childDiagnostic.getSeverity() != Diagnostic.OK) {
-                    diagnostic.add(childDiagnostic);
-                }
-            }
+		if (updateProblemIndication) {
+			BasicDiagnostic diagnostic =
+				new BasicDiagnostic
+					(Diagnostic.OK,
+					 "org.eclipse.amp.amf.testing.editor",
+					 0,
+					 null,
+					 new Object [] { editingDomain.getResourceSet() });
+			for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
+				if (childDiagnostic.getSeverity() != Diagnostic.OK) {
+					diagnostic.add(childDiagnostic);
+				}
+			}
 
-            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) {
-                    AresEditorPlugin.INSTANCE.log(exception);
-                }
-            }
+			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) {
+					AresEditorPlugin.INSTANCE.log(exception);
+				}
+			}
 
-            if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
-                markerHelper.deleteMarkers(editingDomain.getResourceSet());
-                if (diagnostic.getSeverity() != Diagnostic.OK) {
-                    try {
-                        markerHelper.createMarkers(diagnostic);
-                    }
-                    catch (CoreException exception) {
-                        AresEditorPlugin.INSTANCE.log(exception);
-                    }
-                }
-            }
-        }
-    }
+			if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
+				markerHelper.deleteMarkers(editingDomain.getResourceSet());
+				if (diagnostic.getSeverity() != Diagnostic.OK) {
+					try {
+						markerHelper.createMarkers(diagnostic);
+					}
+					catch (CoreException exception) {
+						AresEditorPlugin.INSTANCE.log(exception);
+					}
+				}
+			}
+		}
+	}
 
     /**
-     * Shows a dialog that asks if conflicting changes should be discarded.
-     * <!-- begin-user-doc -->
+	 * Shows a dialog that asks if conflicting changes should be discarded.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected boolean handleDirtyConflict() {
-        return
-            MessageDialog.openQuestion
-                (getSite().getShell(),
-                 getString("_UI_FileConflict_label"),
-                 getString("_WARN_FileConflict"));
-    }
+		return
+			MessageDialog.openQuestion
+				(getSite().getShell(),
+				 getString("_UI_FileConflict_label"),
+				 getString("_WARN_FileConflict"));
+	}
 
     /**
-     * This creates a model editor.
-     * <!-- begin-user-doc -->
+	 * This creates a model editor.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public AresEditor() {
-        super();
-        initializeEditingDomain();
-    }
+		super();
+		initializeEditingDomain();
+	}
 
     /**
-     * This sets up the editing domain for the model editor.
-     * <!-- begin-user-doc -->
+	 * This sets up the editing domain for the model editor.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected void initializeEditingDomain() {
-        // Create an adapter factory that yields item providers.
-        //
-        adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
+		// Create an adapter factory that yields item providers.
+		//
+		adapterFactory = new ComposedAdapterFactory(ComposedAdapterFactory.Descriptor.Registry.INSTANCE);
 
-        adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new AresItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new AParItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new ATestItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new MetaABMItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new MetaABMFunctionItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new MetaABMActItemProviderAdapterFactory());
-        adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new ResourceItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new AresItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new AParItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new ATestItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new MetaABMItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new MetaABMFunctionItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new MetaABMActItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new ABaseItemProviderAdapterFactory());
+		adapterFactory.addAdapterFactory(new ReflectiveItemProviderAdapterFactory());
 
-        // Create the command stack that will notify this editor as commands are executed.
-        //
-        BasicCommandStack commandStack = new BasicCommandStack();
+		// Create the command stack that will notify this editor as commands are executed.
+		//
+		BasicCommandStack commandStack = new BasicCommandStack();
 
-        // 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);
+		// 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);
 
-                                  // 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();
-                                  }
-                              }
-                          });
-                 }
-             });
+								  // 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();
+								  }
+							  }
+						  });
+				 }
+			 });
 
-        // Create the editing domain with a special command stack.
-        //
-        editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new HashMap<Resource, Boolean>());
-    }
+		// Create the editing domain with a special command stack.
+		//
+		editingDomain = new AdapterFactoryEditingDomain(adapterFactory, commandStack, new HashMap<Resource, Boolean>());
+	}
 
     /**
-     * This is here for the listener to be able to call it.
-     * <!-- begin-user-doc -->
+	 * This is here for the listener to be able to call it.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected void firePropertyChange(int action) {
-        super.firePropertyChange(action);
-    }
+		super.firePropertyChange(action);
+	}
 
     /**
-     * This sets the selection into whichever viewer is active.
-     * <!-- begin-user-doc -->
+	 * This sets the selection into whichever viewer is active.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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);
-        }
-    }
+		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 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 -->
+	 * 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
-     */
+	 * @generated
+	 */
     public EditingDomain getEditingDomain() {
-        return editingDomain;
-    }
+		return editingDomain;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public class ReverseAdapterFactoryContentProvider extends AdapterFactoryContentProvider {
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         public ReverseAdapterFactoryContentProvider(AdapterFactory adapterFactory) {
-            super(adapterFactory);
-        }
+			super(adapterFactory);
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         @Override
         public Object [] getElements(Object object) {
-            Object parent = super.getParent(object);
-            return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
-        }
+			Object parent = super.getParent(object);
+			return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         @Override
         public Object [] getChildren(Object object) {
-            Object parent = super.getParent(object);
-            return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
-        }
+			Object parent = super.getParent(object);
+			return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         @Override
         public boolean hasChildren(Object object) {
-            Object parent = super.getParent(object);
-            return parent != null;
-        }
+			Object parent = super.getParent(object);
+			return parent != null;
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         @Override
         public Object getParent(Object object) {
-            return null;
-        }
+			return null;
+		}
     }
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setCurrentViewerPane(ViewerPane viewerPane) {
-        if (currentViewerPane != viewerPane) {
-            if (currentViewerPane != null) {
-                currentViewerPane.showFocus(false);
-            }
-            currentViewerPane = viewerPane;
-        }
-        setCurrentViewer(currentViewerPane.getViewer());
-    }
+		if (currentViewerPane != viewerPane) {
+			if (currentViewerPane != null) {
+				currentViewerPane.showFocus(false);
+			}
+			currentViewerPane = viewerPane;
+		}
+		setCurrentViewer(currentViewerPane.getViewer());
+	}
 
     /**
-     * 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 -->
+	 * 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
-     */
+	 * @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());
-                        }
-                    };
-            }
+		// 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());
+						}
+					};
+			}
 
-            // Stop listening to the old one.
-            //
-            if (currentViewer != null) {
-                currentViewer.removeSelectionChangedListener(selectionChangedListener);
-            }
+			// Stop listening to the old one.
+			//
+			if (currentViewer != null) {
+				currentViewer.removeSelectionChangedListener(selectionChangedListener);
+			}
 
-            // Start listening to the new one.
-            //
-            if (viewer != null) {
-                viewer.addSelectionChangedListener(selectionChangedListener);
-            }
+			// Start listening to the new one.
+			//
+			if (viewer != null) {
+				viewer.addSelectionChangedListener(selectionChangedListener);
+			}
 
-            // Remember it.
-            //
-            currentViewer = viewer;
+			// Remember it.
+			//
+			currentViewer = viewer;
 
-            // Set the editors selection based on the current viewer's selection.
-            //
-            setSelection(currentViewer == null ? StructuredSelection.EMPTY : currentViewer.getSelection());
-        }
-    }
+			// 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 -->
+	 * This returns the viewer as required by the {@link IViewerProvider} interface.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Viewer getViewer() {
-        return currentViewer;
-    }
+		return currentViewer;
+	}
 
     /**
-     * This creates a context menu for the viewer and adds a listener as well registering the menu for extension.
-     * <!-- begin-user-doc -->
+	 * 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
-     */
+	 * @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));
+		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));
-    }
+		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 -->
+	 * 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
-     */
+	 * @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);
-        }
+		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);
-    }
+		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 -->
+	 * 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
-     */
+	 * @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.testing.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.testing.editor",
-                     0,
-                     getString("_UI_CreateModelError_message", resource.getURI()),
-                     new Object[] { exception });
-        }
-        else {
-            return Diagnostic.OK_INSTANCE;
-        }
-    }
+		if (!resource.getErrors().isEmpty() || !resource.getWarnings().isEmpty()) {
+			BasicDiagnostic basicDiagnostic =
+				new BasicDiagnostic
+					(Diagnostic.ERROR,
+					 "org.eclipse.amp.amf.testing.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.testing.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.
@@ -1210,579 +1212,579 @@
     }
 
     /**
-     * If there is just one page in the multi-page editor part,
-     * this hides the single tab at the bottom.
-     * <!-- begin-user-doc -->
+	 * 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
-     */
+	 * @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 (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 -->
+	 * 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
-     */
+	 * @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 (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 -->
+	 * This is used to track the active viewer.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected void pageChange(int pageIndex) {
-        super.pageChange(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 -->
+	 * This is how the framework determines which interfaces we implement.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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);
-        }
-    }
+		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 -->
+	 * This accesses a cached version of the content outliner.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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);
+		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(adapterFactory));
-                    contentOutlineViewer.setInput(editingDomain.getResourceSet());
+					// Set up the tree viewer.
+					//
+					contentOutlineViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
+					contentOutlineViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+					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 -->
+	 * This accesses a cached version of the property sheet.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public IPropertySheetPage getPropertySheetPage() {
-        if (propertySheetPage == null) {
-            propertySheetPage =
-                new ExtendedPropertySheetPage(editingDomain) {
-                    @Override
-                    public void setSelectionToViewer(List<?> selection) {
-                        AresEditor.this.setSelectionToViewer(selection);
-                        AresEditor.this.setFocus();
-                    }
+		if (propertySheetPage == null) {
+			propertySheetPage =
+				new ExtendedPropertySheetPage(editingDomain) {
+					@Override
+					public void setSelectionToViewer(List<?> selection) {
+						AresEditor.this.setSelectionToViewer(selection);
+						AresEditor.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 -->
+	 * This deals with how we want selection in the outliner to affect the other views.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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 (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 -->
+	 * This is for implementing {@link IEditorPart} and simply tests the command stack.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean isDirty() {
-        return ((BasicCommandStack)editingDomain.getCommandStack()).isSaveNeeded();
-    }
+		return ((BasicCommandStack)editingDomain.getCommandStack()).isSaveNeeded();
+	}
 
     /**
-     * This is for implementing {@link IEditorPart} and simply saves the model file.
-     * <!-- begin-user-doc -->
+	 * This is for implementing {@link IEditorPart} and simply saves the model file.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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);
+		// 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.
-            //
-            AresEditorPlugin.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.
+			//
+			AresEditorPlugin.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 -->
+	 * 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
-     */
+	 * @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;
-    }
+		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 -->
+	 * This always returns true because it is not currently supported.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean isSaveAsAllowed() {
-        return true;
-    }
+		return true;
+	}
 
     /**
-     * This also changes the editor's input.
-     * <!-- begin-user-doc -->
+	 * This also changes the editor's input.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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));
-            }
-        }
-    }
+		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 -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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);
-    }
+		(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 -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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) {
-            AresEditorPlugin.INSTANCE.log(exception);
-        }
-    }
+		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) {
+			AresEditorPlugin.INSTANCE.log(exception);
+		}
+	}
 
     /**
-     * This is called during startup.
-     * <!-- begin-user-doc -->
+	 * This is called during startup.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @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);
-    }
+		setSite(site);
+		setInputWithNotify(editorInput);
+		setPartName(editorInput.getName());
+		site.setSelectionProvider(this);
+		site.getPage().addPartListener(partListener);
+		ResourcesPlugin.getWorkspace().addResourceChangeListener(resourceChangeListener, IResourceChangeEvent.POST_CHANGE);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void setFocus() {
-        if (currentViewerPane != null) {
-            currentViewerPane.setFocus();
-        }
-        else {
-            getControl(getActivePage()).setFocus();
-        }
-    }
+		if (currentViewerPane != null) {
+			currentViewerPane.setFocus();
+		}
+		else {
+			getControl(getActivePage()).setFocus();
+		}
+	}
 
     /**
-     * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
-     * <!-- begin-user-doc -->
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void addSelectionChangedListener(ISelectionChangedListener listener) {
-        selectionChangedListeners.add(listener);
-    }
+		selectionChangedListeners.add(listener);
+	}
 
     /**
-     * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
-     * <!-- begin-user-doc -->
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void removeSelectionChangedListener(ISelectionChangedListener listener) {
-        selectionChangedListeners.remove(listener);
-    }
+		selectionChangedListeners.remove(listener);
+	}
 
     /**
-     * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to return this editor's overall selection.
-     * <!-- begin-user-doc -->
+	 * This implements {@link org.eclipse.jface.viewers.ISelectionProvider} to return this editor's overall selection.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ISelection getSelection() {
-        return editorSelection;
-    }
+		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 -->
+	 * 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
-     */
+	 * @generated
+	 */
     public void setSelection(ISelection selection) {
-        editorSelection = 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 -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setStatusLineManager(ISelection selection) {
-        IStatusLineManager statusLineManager = currentViewer != null && currentViewer == contentOutlineViewer ?
-            contentOutlineStatusLineManager : getActionBars().getStatusLineManager();
+		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 -->
+	 * This looks up a string in the plugin's plugin.properties file.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private static String getString(String key) {
-        return AresEditorPlugin.INSTANCE.getString(key);
-    }
+		return AresEditorPlugin.INSTANCE.getString(key);
+	}
 
     /**
-     * This looks up a string in plugin.properties, making a substitution.
-     * <!-- begin-user-doc -->
+	 * This looks up a string in plugin.properties, making a substitution.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private static String getString(String key, Object s1) {
-        return AresEditorPlugin.INSTANCE.getString(key, new Object [] { s1 });
-    }
+		return AresEditorPlugin.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 -->
+	 * 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
-     */
+	 * @generated
+	 */
     public void menuAboutToShow(IMenuManager menuManager) {
-        ((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
-    }
+		((IMenuListener)getEditorSite().getActionBarContributor()).menuAboutToShow(menuManager);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EditingDomainActionBarContributor getActionBarContributor() {
-        return (EditingDomainActionBarContributor)getEditorSite().getActionBarContributor();
-    }
+		return (EditingDomainActionBarContributor)getEditorSite().getActionBarContributor();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public IActionBars getActionBars() {
-        return getActionBarContributor().getActionBars();
-    }
+		return getActionBarContributor().getActionBars();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public AdapterFactory getAdapterFactory() {
-        return adapterFactory;
-    }
+		return adapterFactory;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public void dispose() {
-        updateProblemIndication = false;
+		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 -->
+	 * Returns whether the outline view should be presented to the user.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected boolean showOutlineView() {
-        return true;
-    }
+		return true;
+	}
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresEditorPlugin.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresEditorPlugin.java
index 01045be..18c67ab 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresEditorPlugin.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresEditorPlugin.java
@@ -6,6 +6,7 @@
  */
 package org.eclipse.amp.amf.testing.ares.presentation;
 
+import org.eclipse.amp.amf.abase.aBase.provider.ABaseEditPlugin;
 import org.eclipse.amp.amf.parameters.aPar.provider.AParEditPlugin;
 import org.eclipse.amp.amf.testing.aTest.provider.ATestEditPlugin;
 import org.eclipse.emf.common.EMFPlugin;
@@ -21,79 +22,80 @@
  */
 public final class AresEditorPlugin 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 AresEditorPlugin INSTANCE = new AresEditorPlugin();
     
     /**
-     * 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 AresEditorPlugin() {
-        super
-            (new ResourceLocator [] {
-                AParEditPlugin.INSTANCE,
-                ATestEditPlugin.INSTANCE,
-                MetaABMEditPlugin.INSTANCE,
-            });
-    }
+		super
+			(new ResourceLocator [] {
+				AParEditPlugin.INSTANCE,
+				ATestEditPlugin.INSTANCE,
+				MetaABMEditPlugin.INSTANCE,
+				ABaseEditPlugin.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 EclipseUIPlugin {
         /**
-         * Creates an instance.
-         * <!-- begin-user-doc -->
+		 * Creates an instance.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         public Implementation() {
-            super();
-    
-            // Remember the static instance.
-            //
-            plugin = this;
-        }
+			super();
+	
+			// Remember the static instance.
+			//
+			plugin = this;
+		}
     }
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresModelWizard.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresModelWizard.java
index 33e74a8..20be9b6 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresModelWizard.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing.editor/src/org/eclipse/amp/amf/testing/ares/presentation/AresModelWizard.java
@@ -97,535 +97,535 @@
  */
 public class AresModelWizard extends Wizard implements INewWizard {
     /**
-     * The supported extensions for created files.
-     * <!-- begin-user-doc -->
+	 * The supported extensions for created files.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static final List<String> FILE_EXTENSIONS =
         Collections.unmodifiableList(Arrays.asList(AresEditorPlugin.INSTANCE.getString("_UI_AresEditorFilenameExtensions").split("\\s*,\\s*")));
 
     /**
-     * A formatted list of supported file extensions, suitable for display.
-     * <!-- begin-user-doc -->
+	 * A formatted list of supported file extensions, suitable for display.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static final String FORMATTED_FILE_EXTENSIONS =
         AresEditorPlugin.INSTANCE.getString("_UI_AresEditorFilenameExtensions").replaceAll("\\s*,\\s*", ", ");
 
     /**
-     * This caches an instance of the model package.
-     * <!-- begin-user-doc -->
+	 * This caches an instance of the model package.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected AresPackage aresPackage = AresPackage.eINSTANCE;
 
     /**
-     * This caches an instance of the model factory.
-     * <!-- begin-user-doc -->
+	 * This caches an instance of the model factory.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected AresFactory aresFactory = aresPackage.getAresFactory();
 
     /**
-     * This is the file creation page.
-     * <!-- begin-user-doc -->
+	 * This is the file creation page.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected AresModelWizardNewFileCreationPage newFileCreationPage;
 
     /**
-     * This is the initial object creation page.
-     * <!-- begin-user-doc -->
+	 * This is the initial object creation page.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected AresModelWizardInitialObjectCreationPage initialObjectCreationPage;
 
     /**
-     * Remember the selection during initialization for populating the default container.
-     * <!-- begin-user-doc -->
+	 * Remember the selection during initialization for populating the default container.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IStructuredSelection selection;
 
     /**
-     * Remember the workbench during initialization.
-     * <!-- begin-user-doc -->
+	 * Remember the workbench during initialization.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected IWorkbench workbench;
 
     /**
-     * Caches the names of the types that can be created as the root object.
-     * <!-- begin-user-doc -->
+	 * Caches the names of the types that can be created as the root object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected List<String> initialObjectNames;
 
     /**
-     * This just records the information.
-     * <!-- begin-user-doc -->
+	 * This just records the information.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void init(IWorkbench workbench, IStructuredSelection selection) {
-        this.workbench = workbench;
-        this.selection = selection;
-        setWindowTitle(AresEditorPlugin.INSTANCE.getString("_UI_Wizard_label"));
-        setDefaultPageImageDescriptor(ExtendedImageRegistry.INSTANCE.getImageDescriptor(AresEditorPlugin.INSTANCE.getImage("full/wizban/NewAres")));
-    }
+		this.workbench = workbench;
+		this.selection = selection;
+		setWindowTitle(AresEditorPlugin.INSTANCE.getString("_UI_Wizard_label"));
+		setDefaultPageImageDescriptor(ExtendedImageRegistry.INSTANCE.getImageDescriptor(AresEditorPlugin.INSTANCE.getImage("full/wizban/NewAres")));
+	}
 
     /**
-     * Returns the names of the types that can be created as the root object.
-     * <!-- begin-user-doc -->
+	 * Returns the names of the types that can be created as the root object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected Collection<String> getInitialObjectNames() {
-        if (initialObjectNames == null) {
-            initialObjectNames = new ArrayList<String>();
-            for (EClassifier eClassifier : aresPackage.getEClassifiers()) {
-                if (eClassifier instanceof EClass) {
-                    EClass eClass = (EClass)eClassifier;
-                    if (!eClass.isAbstract()) {
-                        initialObjectNames.add(eClass.getName());
-                    }
-                }
-            }
-            Collections.sort(initialObjectNames, CommonPlugin.INSTANCE.getComparator());
-        }
-        return initialObjectNames;
-    }
+		if (initialObjectNames == null) {
+			initialObjectNames = new ArrayList<String>();
+			for (EClassifier eClassifier : aresPackage.getEClassifiers()) {
+				if (eClassifier instanceof EClass) {
+					EClass eClass = (EClass)eClassifier;
+					if (!eClass.isAbstract()) {
+						initialObjectNames.add(eClass.getName());
+					}
+				}
+			}
+			Collections.sort(initialObjectNames, CommonPlugin.INSTANCE.getComparator());
+		}
+		return initialObjectNames;
+	}
 
     /**
-     * Create a new model.
-     * <!-- begin-user-doc -->
+	 * Create a new model.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected EObject createInitialModel() {
-        EClass eClass = (EClass)aresPackage.getEClassifier(initialObjectCreationPage.getInitialObjectName());
-        EObject rootObject = aresFactory.create(eClass);
-        return rootObject;
-    }
+		EClass eClass = (EClass)aresPackage.getEClassifier(initialObjectCreationPage.getInitialObjectName());
+		EObject rootObject = aresFactory.create(eClass);
+		return rootObject;
+	}
 
     /**
-     * Do the work after everything is specified.
-     * <!-- begin-user-doc -->
+	 * Do the work after everything is specified.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public boolean performFinish() {
-        try {
-            // Remember the file.
-            //
-            final IFile modelFile = getModelFile();
+		try {
+			// Remember the file.
+			//
+			final IFile modelFile = getModelFile();
 
-            // Do the work within an operation.
-            //
-            WorkspaceModifyOperation operation =
-                new WorkspaceModifyOperation() {
-                    @Override
-                    protected void execute(IProgressMonitor progressMonitor) {
-                        try {
-                            // Create a resource set
-                            //
-                            ResourceSet resourceSet = new ResourceSetImpl();
+			// Do the work within an operation.
+			//
+			WorkspaceModifyOperation operation =
+				new WorkspaceModifyOperation() {
+					@Override
+					protected void execute(IProgressMonitor progressMonitor) {
+						try {
+							// Create a resource set
+							//
+							ResourceSet resourceSet = new ResourceSetImpl();
 
-                            // Get the URI of the model file.
-                            //
-                            URI fileURI = URI.createPlatformResourceURI(modelFile.getFullPath().toString(), true);
+							// Get the URI of the model file.
+							//
+							URI fileURI = URI.createPlatformResourceURI(modelFile.getFullPath().toString(), true);
 
-                            // Create a resource for this file.
-                            //
-                            Resource resource = resourceSet.createResource(fileURI);
+							// Create a resource for this file.
+							//
+							Resource resource = resourceSet.createResource(fileURI);
 
-                            // Add the initial model object to the contents.
-                            //
-                            EObject rootObject = createInitialModel();
-                            if (rootObject != null) {
-                                resource.getContents().add(rootObject);
-                            }
+							// Add the initial model object to the contents.
+							//
+							EObject rootObject = createInitialModel();
+							if (rootObject != null) {
+								resource.getContents().add(rootObject);
+							}
 
-                            // Save the contents of the resource to the file system.
-                            //
-                            Map<Object, Object> options = new HashMap<Object, Object>();
-                            options.put(XMLResource.OPTION_ENCODING, initialObjectCreationPage.getEncoding());
-                            resource.save(options);
-                        }
-                        catch (Exception exception) {
-                            AresEditorPlugin.INSTANCE.log(exception);
-                        }
-                        finally {
-                            progressMonitor.done();
-                        }
-                    }
-                };
+							// Save the contents of the resource to the file system.
+							//
+							Map<Object, Object> options = new HashMap<Object, Object>();
+							options.put(XMLResource.OPTION_ENCODING, initialObjectCreationPage.getEncoding());
+							resource.save(options);
+						}
+						catch (Exception exception) {
+							AresEditorPlugin.INSTANCE.log(exception);
+						}
+						finally {
+							progressMonitor.done();
+						}
+					}
+				};
 
-            getContainer().run(false, false, operation);
+			getContainer().run(false, false, operation);
 
-            // Select the new file resource in the current view.
-            //
-            IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
-            IWorkbenchPage page = workbenchWindow.getActivePage();
-            final IWorkbenchPart activePart = page.getActivePart();
-            if (activePart instanceof ISetSelectionTarget) {
-                final ISelection targetSelection = new StructuredSelection(modelFile);
-                getShell().getDisplay().asyncExec
-                    (new Runnable() {
-                         public void run() {
-                             ((ISetSelectionTarget)activePart).selectReveal(targetSelection);
-                         }
-                     });
-            }
+			// Select the new file resource in the current view.
+			//
+			IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
+			IWorkbenchPage page = workbenchWindow.getActivePage();
+			final IWorkbenchPart activePart = page.getActivePart();
+			if (activePart instanceof ISetSelectionTarget) {
+				final ISelection targetSelection = new StructuredSelection(modelFile);
+				getShell().getDisplay().asyncExec
+					(new Runnable() {
+						 public void run() {
+							 ((ISetSelectionTarget)activePart).selectReveal(targetSelection);
+						 }
+					 });
+			}
 
-            // Open an editor on the new file.
-            //
-            try {
-                page.openEditor
-                    (new FileEditorInput(modelFile),
-                     workbench.getEditorRegistry().getDefaultEditor(modelFile.getFullPath().toString()).getId());
-            }
-            catch (PartInitException exception) {
-                MessageDialog.openError(workbenchWindow.getShell(), AresEditorPlugin.INSTANCE.getString("_UI_OpenEditorError_label"), exception.getMessage());
-                return false;
-            }
+			// Open an editor on the new file.
+			//
+			try {
+				page.openEditor
+					(new FileEditorInput(modelFile),
+					 workbench.getEditorRegistry().getDefaultEditor(modelFile.getFullPath().toString()).getId());					 	 
+			}
+			catch (PartInitException exception) {
+				MessageDialog.openError(workbenchWindow.getShell(), AresEditorPlugin.INSTANCE.getString("_UI_OpenEditorError_label"), exception.getMessage());
+				return false;
+			}
 
-            return true;
-        }
-        catch (Exception exception) {
-            AresEditorPlugin.INSTANCE.log(exception);
-            return false;
-        }
-    }
+			return true;
+		}
+		catch (Exception exception) {
+			AresEditorPlugin.INSTANCE.log(exception);
+			return false;
+		}
+	}
 
     /**
-     * This is the one page of the wizard.
-     * <!-- begin-user-doc -->
+	 * This is the one page of the wizard.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public class AresModelWizardNewFileCreationPage extends WizardNewFileCreationPage {
         /**
-         * Pass in the selection.
-         * <!-- begin-user-doc -->
+		 * Pass in the selection.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         public AresModelWizardNewFileCreationPage(String pageId, IStructuredSelection selection) {
-            super(pageId, selection);
-        }
+			super(pageId, selection);
+		}
 
         /**
-         * The framework calls this to see if the file is correct.
-         * <!-- begin-user-doc -->
+		 * The framework calls this to see if the file is correct.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         @Override
         protected boolean validatePage() {
-            if (super.validatePage()) {
-                String extension = new Path(getFileName()).getFileExtension();
-                if (extension == null || !FILE_EXTENSIONS.contains(extension)) {
-                    String key = FILE_EXTENSIONS.size() > 1 ? "_WARN_FilenameExtensions" : "_WARN_FilenameExtension";
-                    setErrorMessage(AresEditorPlugin.INSTANCE.getString(key, new Object [] { FORMATTED_FILE_EXTENSIONS }));
-                    return false;
-                }
-                return true;
-            }
-            return false;
-        }
+			if (super.validatePage()) {
+				String extension = new Path(getFileName()).getFileExtension();
+				if (extension == null || !FILE_EXTENSIONS.contains(extension)) {
+					String key = FILE_EXTENSIONS.size() > 1 ? "_WARN_FilenameExtensions" : "_WARN_FilenameExtension";
+					setErrorMessage(AresEditorPlugin.INSTANCE.getString(key, new Object [] { FORMATTED_FILE_EXTENSIONS }));
+					return false;
+				}
+				return true;
+			}
+			return false;
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         public IFile getModelFile() {
-            return ResourcesPlugin.getWorkspace().getRoot().getFile(getContainerFullPath().append(getFileName()));
-        }
+			return ResourcesPlugin.getWorkspace().getRoot().getFile(getContainerFullPath().append(getFileName()));
+		}
     }
 
     /**
-     * This is the page where the type of object to create is selected.
-     * <!-- begin-user-doc -->
+	 * This is the page where the type of object to create is selected.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public class AresModelWizardInitialObjectCreationPage extends WizardPage {
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         protected Combo initialObjectField;
 
         /**
-         * @generated
-         * <!-- begin-user-doc -->
+		 * @generated
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         */
+		 */
         protected List<String> encodings;
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         protected Combo encodingField;
 
         /**
-         * Pass in the selection.
-         * <!-- begin-user-doc -->
+		 * Pass in the selection.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         public AresModelWizardInitialObjectCreationPage(String pageId) {
-            super(pageId);
-        }
+			super(pageId);
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         public void createControl(Composite parent) {
-            Composite composite = new Composite(parent, SWT.NONE); {
-                GridLayout layout = new GridLayout();
-                layout.numColumns = 1;
-                layout.verticalSpacing = 12;
-                composite.setLayout(layout);
+			Composite composite = new Composite(parent, SWT.NONE); {
+				GridLayout layout = new GridLayout();
+				layout.numColumns = 1;
+				layout.verticalSpacing = 12;
+				composite.setLayout(layout);
 
-                GridData data = new GridData();
-                data.verticalAlignment = GridData.FILL;
-                data.grabExcessVerticalSpace = true;
-                data.horizontalAlignment = GridData.FILL;
-                composite.setLayoutData(data);
-            }
+				GridData data = new GridData();
+				data.verticalAlignment = GridData.FILL;
+				data.grabExcessVerticalSpace = true;
+				data.horizontalAlignment = GridData.FILL;
+				composite.setLayoutData(data);
+			}
 
-            Label containerLabel = new Label(composite, SWT.LEFT);
-            {
-                containerLabel.setText(AresEditorPlugin.INSTANCE.getString("_UI_ModelObject"));
+			Label containerLabel = new Label(composite, SWT.LEFT);
+			{
+				containerLabel.setText(AresEditorPlugin.INSTANCE.getString("_UI_ModelObject"));
 
-                GridData data = new GridData();
-                data.horizontalAlignment = GridData.FILL;
-                containerLabel.setLayoutData(data);
-            }
+				GridData data = new GridData();
+				data.horizontalAlignment = GridData.FILL;
+				containerLabel.setLayoutData(data);
+			}
 
-            initialObjectField = new Combo(composite, SWT.BORDER);
-            {
-                GridData data = new GridData();
-                data.horizontalAlignment = GridData.FILL;
-                data.grabExcessHorizontalSpace = true;
-                initialObjectField.setLayoutData(data);
-            }
+			initialObjectField = new Combo(composite, SWT.BORDER);
+			{
+				GridData data = new GridData();
+				data.horizontalAlignment = GridData.FILL;
+				data.grabExcessHorizontalSpace = true;
+				initialObjectField.setLayoutData(data);
+			}
 
-            for (String objectName : getInitialObjectNames()) {
-                initialObjectField.add(getLabel(objectName));
-            }
+			for (String objectName : getInitialObjectNames()) {
+				initialObjectField.add(getLabel(objectName));
+			}
 
-            if (initialObjectField.getItemCount() == 1) {
-                initialObjectField.select(0);
-            }
-            initialObjectField.addModifyListener(validator);
+			if (initialObjectField.getItemCount() == 1) {
+				initialObjectField.select(0);
+			}
+			initialObjectField.addModifyListener(validator);
 
-            Label encodingLabel = new Label(composite, SWT.LEFT);
-            {
-                encodingLabel.setText(AresEditorPlugin.INSTANCE.getString("_UI_XMLEncoding"));
+			Label encodingLabel = new Label(composite, SWT.LEFT);
+			{
+				encodingLabel.setText(AresEditorPlugin.INSTANCE.getString("_UI_XMLEncoding"));
 
-                GridData data = new GridData();
-                data.horizontalAlignment = GridData.FILL;
-                encodingLabel.setLayoutData(data);
-            }
-            encodingField = new Combo(composite, SWT.BORDER);
-            {
-                GridData data = new GridData();
-                data.horizontalAlignment = GridData.FILL;
-                data.grabExcessHorizontalSpace = true;
-                encodingField.setLayoutData(data);
-            }
+				GridData data = new GridData();
+				data.horizontalAlignment = GridData.FILL;
+				encodingLabel.setLayoutData(data);
+			}
+			encodingField = new Combo(composite, SWT.BORDER);
+			{
+				GridData data = new GridData();
+				data.horizontalAlignment = GridData.FILL;
+				data.grabExcessHorizontalSpace = true;
+				encodingField.setLayoutData(data);
+			}
 
-            for (String encoding : getEncodings()) {
-                encodingField.add(encoding);
-            }
+			for (String encoding : getEncodings()) {
+				encodingField.add(encoding);
+			}
 
-            encodingField.select(0);
-            encodingField.addModifyListener(validator);
+			encodingField.select(0);
+			encodingField.addModifyListener(validator);
 
-            setPageComplete(validatePage());
-            setControl(composite);
-        }
+			setPageComplete(validatePage());
+			setControl(composite);
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         protected ModifyListener validator =
             new ModifyListener() {
-                public void modifyText(ModifyEvent e) {
-                    setPageComplete(validatePage());
-                }
-            };
+				public void modifyText(ModifyEvent e) {
+					setPageComplete(validatePage());
+				}
+			};
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         protected boolean validatePage() {
-            return getInitialObjectName() != null && getEncodings().contains(encodingField.getText());
-        }
+			return getInitialObjectName() != null && getEncodings().contains(encodingField.getText());
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         @Override
         public void setVisible(boolean visible) {
-            super.setVisible(visible);
-            if (visible) {
-                if (initialObjectField.getItemCount() == 1) {
-                    initialObjectField.clearSelection();
-                    encodingField.setFocus();
-                }
-                else {
-                    encodingField.clearSelection();
-                    initialObjectField.setFocus();
-                }
-            }
-        }
+			super.setVisible(visible);
+			if (visible) {
+				if (initialObjectField.getItemCount() == 1) {
+					initialObjectField.clearSelection();
+					encodingField.setFocus();
+				}
+				else {
+					encodingField.clearSelection();
+					initialObjectField.setFocus();
+				}
+			}
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         public String getInitialObjectName() {
-            String label = initialObjectField.getText();
+			String label = initialObjectField.getText();
 
-            for (String name : getInitialObjectNames()) {
-                if (getLabel(name).equals(label)) {
-                    return name;
-                }
-            }
-            return null;
-        }
+			for (String name : getInitialObjectNames()) {
+				if (getLabel(name).equals(label)) {
+					return name;
+				}
+			}
+			return null;
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         public String getEncoding() {
-            return encodingField.getText();
-        }
+			return encodingField.getText();
+		}
 
         /**
-         * Returns the label for the specified type name.
-         * <!-- begin-user-doc -->
+		 * Returns the label for the specified type name.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         protected String getLabel(String typeName) {
-            try {
-                return AresEditPlugin.INSTANCE.getString("_UI_" + typeName + "_type");
-            }
-            catch(MissingResourceException mre) {
-                AresEditorPlugin.INSTANCE.log(mre);
-            }
-            return typeName;
-        }
+			try {
+				return AresEditPlugin.INSTANCE.getString("_UI_" + typeName + "_type");
+			}
+			catch(MissingResourceException mre) {
+				AresEditorPlugin.INSTANCE.log(mre);
+			}
+			return typeName;
+		}
 
         /**
-         * <!-- begin-user-doc -->
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         protected Collection<String> getEncodings() {
-            if (encodings == null) {
-                encodings = new ArrayList<String>();
-                for (StringTokenizer stringTokenizer = new StringTokenizer(AresEditorPlugin.INSTANCE.getString("_UI_XMLEncodingChoices")); stringTokenizer.hasMoreTokens(); ) {
-                    encodings.add(stringTokenizer.nextToken());
-                }
-            }
-            return encodings;
-        }
+			if (encodings == null) {
+				encodings = new ArrayList<String>();
+				for (StringTokenizer stringTokenizer = new StringTokenizer(AresEditorPlugin.INSTANCE.getString("_UI_XMLEncodingChoices")); stringTokenizer.hasMoreTokens(); ) {
+					encodings.add(stringTokenizer.nextToken());
+				}
+			}
+			return encodings;
+		}
     }
 
     /**
-     * The framework calls this to create the contents of the wizard.
-     * <!-- begin-user-doc -->
+	 * The framework calls this to create the contents of the wizard.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
         @Override
     public void addPages() {
-        // Create a page, set the title, and the initial model file name.
-        //
-        newFileCreationPage = new AresModelWizardNewFileCreationPage("Whatever", selection);
-        newFileCreationPage.setTitle(AresEditorPlugin.INSTANCE.getString("_UI_AresModelWizard_label"));
-        newFileCreationPage.setDescription(AresEditorPlugin.INSTANCE.getString("_UI_AresModelWizard_description"));
-        newFileCreationPage.setFileName(AresEditorPlugin.INSTANCE.getString("_UI_AresEditorFilenameDefaultBase") + "." + FILE_EXTENSIONS.get(0));
-        addPage(newFileCreationPage);
+		// Create a page, set the title, and the initial model file name.
+		//
+		newFileCreationPage = new AresModelWizardNewFileCreationPage("Whatever", selection);
+		newFileCreationPage.setTitle(AresEditorPlugin.INSTANCE.getString("_UI_AresModelWizard_label"));
+		newFileCreationPage.setDescription(AresEditorPlugin.INSTANCE.getString("_UI_AresModelWizard_description"));
+		newFileCreationPage.setFileName(AresEditorPlugin.INSTANCE.getString("_UI_AresEditorFilenameDefaultBase") + "." + FILE_EXTENSIONS.get(0));
+		addPage(newFileCreationPage);
 
-        // Try and get the resource selection to determine a current directory for the file dialog.
-        //
-        if (selection != null && !selection.isEmpty()) {
-            // Get the resource...
-            //
-            Object selectedElement = selection.iterator().next();
-            if (selectedElement instanceof IResource) {
-                // Get the resource parent, if its a file.
-                //
-                IResource selectedResource = (IResource)selectedElement;
-                if (selectedResource.getType() == IResource.FILE) {
-                    selectedResource = selectedResource.getParent();
-                }
+		// Try and get the resource selection to determine a current directory for the file dialog.
+		//
+		if (selection != null && !selection.isEmpty()) {
+			// Get the resource...
+			//
+			Object selectedElement = selection.iterator().next();
+			if (selectedElement instanceof IResource) {
+				// Get the resource parent, if its a file.
+				//
+				IResource selectedResource = (IResource)selectedElement;
+				if (selectedResource.getType() == IResource.FILE) {
+					selectedResource = selectedResource.getParent();
+				}
 
-                // This gives us a directory...
-                //
-                if (selectedResource instanceof IFolder || selectedResource instanceof IProject) {
-                    // Set this for the container.
-                    //
-                    newFileCreationPage.setContainerFullPath(selectedResource.getFullPath());
+				// This gives us a directory...
+				//
+				if (selectedResource instanceof IFolder || selectedResource instanceof IProject) {
+					// Set this for the container.
+					//
+					newFileCreationPage.setContainerFullPath(selectedResource.getFullPath());
 
-                    // Make up a unique new name here.
-                    //
-                    String defaultModelBaseFilename = AresEditorPlugin.INSTANCE.getString("_UI_AresEditorFilenameDefaultBase");
-                    String defaultModelFilenameExtension = FILE_EXTENSIONS.get(0);
-                    String modelFilename = defaultModelBaseFilename + "." + defaultModelFilenameExtension;
-                    for (int i = 1; ((IContainer)selectedResource).findMember(modelFilename) != null; ++i) {
-                        modelFilename = defaultModelBaseFilename + i + "." + defaultModelFilenameExtension;
-                    }
-                    newFileCreationPage.setFileName(modelFilename);
-                }
-            }
-        }
-        initialObjectCreationPage = new AresModelWizardInitialObjectCreationPage("Whatever2");
-        initialObjectCreationPage.setTitle(AresEditorPlugin.INSTANCE.getString("_UI_AresModelWizard_label"));
-        initialObjectCreationPage.setDescription(AresEditorPlugin.INSTANCE.getString("_UI_Wizard_initial_object_description"));
-        addPage(initialObjectCreationPage);
-    }
+					// Make up a unique new name here.
+					//
+					String defaultModelBaseFilename = AresEditorPlugin.INSTANCE.getString("_UI_AresEditorFilenameDefaultBase");
+					String defaultModelFilenameExtension = FILE_EXTENSIONS.get(0);
+					String modelFilename = defaultModelBaseFilename + "." + defaultModelFilenameExtension;
+					for (int i = 1; ((IContainer)selectedResource).findMember(modelFilename) != null; ++i) {
+						modelFilename = defaultModelBaseFilename + i + "." + defaultModelFilenameExtension;
+					}
+					newFileCreationPage.setFileName(modelFilename);
+				}
+			}
+		}
+		initialObjectCreationPage = new AresModelWizardInitialObjectCreationPage("Whatever2");
+		initialObjectCreationPage.setTitle(AresEditorPlugin.INSTANCE.getString("_UI_AresModelWizard_label"));
+		initialObjectCreationPage.setDescription(AresEditorPlugin.INSTANCE.getString("_UI_Wizard_initial_object_description"));
+		addPage(initialObjectCreationPage);
+	}
 
     /**
-     * Get the file from the page.
-     * <!-- begin-user-doc -->
+	 * Get the file from the page.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public IFile getModelFile() {
-        return newFileCreationPage.getModelFile();
-    }
+		return newFileCreationPage.getModelFile();
+	}
 
 }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/model/ares.ecore b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/model/ares.ecore
index 22100ac..9ea9862 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/model/ares.ecore
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/model/ares.ecore
@@ -11,7 +11,7 @@
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="result" eType="#//ResultType"
         defaultValueLiteral=""/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="parameters" upperBound="-1"
-        eType="ecore:EClass ../../../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.ecore#//Parameter"
+        eType="ecore:EClass ../../../org.eclipse.amp.amf.parameters/src-gen/org/eclipse/amp/amf/parameters/APar.ecore#//SingleParameter"
         containment="true"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="constraints" upperBound="-1"
         eType="ecore:EClass ../../src-gen/org/eclipse/amp/amf/testing/ATest.ecore#//Constraint"
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/AresFactory.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/AresFactory.java
index a51f984..52987e6 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/AresFactory.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/AresFactory.java
@@ -18,47 +18,47 @@
  */
 public interface AresFactory 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
+	 */
     AresFactory eINSTANCE = org.eclipse.amp.amf.testing.ares.impl.AresFactoryImpl.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>Constraint Test</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Constraint Test</em>'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return a new object of class '<em>Constraint Test</em>'.
-     * @generated
-     */
+	 * @return a new object of class '<em>Constraint Test</em>'.
+	 * @generated
+	 */
     ConstraintTest createConstraintTest();
 
     /**
-     * Returns a new object of class '<em>Run Set</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns a new object of class '<em>Run Set</em>'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return a new object of class '<em>Run Set</em>'.
-     * @generated
-     */
+	 * @return a new object of class '<em>Run Set</em>'.
+	 * @generated
+	 */
     RunSet createRunSet();
 
     /**
-     * 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
+	 */
     AresPackage getAresPackage();
 
 } //AresFactory
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/AresPackage.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/AresPackage.java
index 9186bb8..cef9900 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/AresPackage.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/AresPackage.java
@@ -29,516 +29,516 @@
  */
 public interface AresPackage extends EPackage {
     /**
-     * The package name.
-     * <!-- begin-user-doc -->
+	 * The package name.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     String eNAME = "ares";
 
     /**
-     * The package namespace URI.
-     * <!-- begin-user-doc -->
+	 * The package namespace URI.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
-    String eNS_URI = "http://eclipse.org.eclipse.amp/ares";
+	 * @generated
+	 */
+    String eNS_URI = "http://eclipse.org/amp/ares";
 
     /**
-     * The package namespace name.
-     * <!-- begin-user-doc -->
+	 * The package namespace name.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     String eNS_PREFIX = "ares";
 
     /**
-     * The singleton instance of the package.
-     * <!-- begin-user-doc -->
+	 * The singleton instance of the package.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     AresPackage eINSTANCE = org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl.init();
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.impl.RunImpl <em>Run</em>}' class.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.impl.RunImpl <em>Run</em>}' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.testing.ares.impl.RunImpl
-     * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getRun()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.testing.ares.impl.RunImpl
+	 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#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>Test</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Test</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN__TEST = 1;
 
     /**
-     * The feature id for the '<em><b>Parameterization</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Parameterization</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN__PARAMETERIZATION = 2;
 
     /**
-     * The feature id for the '<em><b>Result</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Result</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN__RESULT = 3;
 
     /**
-     * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Parameters</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN__PARAMETERS = 4;
 
     /**
-     * The feature id for the '<em><b>Constraints</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Constraints</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN__CONSTRAINTS = 5;
 
     /**
-     * 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 = 6;
 
     /**
-     * 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 = 7;
 
     /**
-     * The feature id for the '<em><b>Results</b></em>' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Results</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN__RESULTS = 8;
 
     /**
-     * The number of structural features of the '<em>Run</em>' class.
-     * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Run</em>' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN_FEATURE_COUNT = 9;
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.impl.ConstraintTestImpl <em>Constraint Test</em>}' class.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.impl.ConstraintTestImpl <em>Constraint Test</em>}' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.testing.ares.impl.ConstraintTestImpl
-     * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getConstraintTest()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.testing.ares.impl.ConstraintTestImpl
+	 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getConstraintTest()
+	 * @generated
+	 */
     int CONSTRAINT_TEST = 1;
 
     /**
-     * The feature id for the '<em><b>Constraint</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Constraint</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int CONSTRAINT_TEST__CONSTRAINT = 0;
 
     /**
-     * The feature id for the '<em><b>Issue</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Issue</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int CONSTRAINT_TEST__ISSUE = 1;
 
     /**
-     * The feature id for the '<em><b>Actual Value</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Actual Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int CONSTRAINT_TEST__ACTUAL_VALUE = 2;
 
     /**
-     * The feature id for the '<em><b>Failure</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Failure</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int CONSTRAINT_TEST__FAILURE = 3;
 
     /**
-     * The number of structural features of the '<em>Constraint Test</em>' class.
-     * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Constraint Test</em>' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int CONSTRAINT_TEST_FEATURE_COUNT = 4;
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.impl.RunSetImpl <em>Run Set</em>}' class.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.impl.RunSetImpl <em>Run Set</em>}' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.testing.ares.impl.RunSetImpl
-     * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getRunSet()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.testing.ares.impl.RunSetImpl
+	 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getRunSet()
+	 * @generated
+	 */
     int RUN_SET = 2;
 
     /**
-     * The feature id for the '<em><b>Result</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * The feature id for the '<em><b>Result</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN_SET__RESULT = 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_SET__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_SET__FINISHED = 2;
 
     /**
-     * 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 RUN_SET__RUNS = 3;
 
     /**
-     * The number of structural features of the '<em>Run Set</em>' class.
-     * <!-- begin-user-doc -->
+	 * The number of structural features of the '<em>Run Set</em>' class.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     * @ordered
-     */
+	 * @generated
+	 * @ordered
+	 */
     int RUN_SET_FEATURE_COUNT = 4;
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.ResultType <em>Result Type</em>}' enum.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.ResultType <em>Result Type</em>}' enum.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.testing.ares.ResultType
-     * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getResultType()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.testing.ares.ResultType
+	 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getResultType()
+	 * @generated
+	 */
     int RESULT_TYPE = 3;
 
     /**
-     * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.Issue <em>Issue</em>}' enum.
-     * <!-- begin-user-doc -->
+	 * The meta object id for the '{@link org.eclipse.amp.amf.testing.ares.Issue <em>Issue</em>}' enum.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see org.eclipse.amp.amf.testing.ares.Issue
-     * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getIssue()
-     * @generated
-     */
+	 * @see org.eclipse.amp.amf.testing.ares.Issue
+	 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getIssue()
+	 * @generated
+	 */
     int ISSUE = 4;
 
 
     /**
-     * Returns the meta object for class '{@link org.eclipse.amp.amf.testing.ares.Run <em>Run</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.testing.ares.Run <em>Run</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Run</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.Run
-     * @generated
-     */
+	 * @return the meta object for class '<em>Run</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run
+	 * @generated
+	 */
     EClass getRun();
 
     /**
-     * Returns the meta object for the reference '{@link org.eclipse.amp.amf.testing.ares.Run#getModel <em>Model</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the reference '{@link org.eclipse.amp.amf.testing.ares.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.testing.ares.Run#getModel()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the reference '<em>Model</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run#getModel()
+	 * @see #getRun()
+	 * @generated
+	 */
     EReference getRun_Model();
 
     /**
-     * Returns the meta object for the reference '{@link org.eclipse.amp.amf.testing.ares.Run#getTest <em>Test</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the reference '{@link org.eclipse.amp.amf.testing.ares.Run#getTest <em>Test</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the reference '<em>Test</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.Run#getTest()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the reference '<em>Test</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run#getTest()
+	 * @see #getRun()
+	 * @generated
+	 */
     EReference getRun_Test();
 
     /**
-     * Returns the meta object for the reference '{@link org.eclipse.amp.amf.testing.ares.Run#getParameterization <em>Parameterization</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the reference '{@link org.eclipse.amp.amf.testing.ares.Run#getParameterization <em>Parameterization</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the reference '<em>Parameterization</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.Run#getParameterization()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the reference '<em>Parameterization</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run#getParameterization()
+	 * @see #getRun()
+	 * @generated
+	 */
     EReference getRun_Parameterization();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.Run#getResult <em>Result</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.Run#getResult <em>Result</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Result</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.Run#getResult()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Result</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run#getResult()
+	 * @see #getRun()
+	 * @generated
+	 */
     EAttribute getRun_Result();
 
     /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.testing.ares.Run#getParameters <em>Parameters</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.testing.ares.Run#getParameters <em>Parameters</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Parameters</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.Run#getParameters()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the containment reference list '<em>Parameters</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run#getParameters()
+	 * @see #getRun()
+	 * @generated
+	 */
     EReference getRun_Parameters();
 
     /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.testing.ares.Run#getConstraints <em>Constraints</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.testing.ares.Run#getConstraints <em>Constraints</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Constraints</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.Run#getConstraints()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the containment reference list '<em>Constraints</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run#getConstraints()
+	 * @see #getRun()
+	 * @generated
+	 */
     EReference getRun_Constraints();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.Run#getStarted <em>Started</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.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.testing.ares.Run#getStarted()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Started</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run#getStarted()
+	 * @see #getRun()
+	 * @generated
+	 */
     EAttribute getRun_Started();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.Run#getFinished <em>Finished</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.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.testing.ares.Run#getFinished()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Finished</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run#getFinished()
+	 * @see #getRun()
+	 * @generated
+	 */
     EAttribute getRun_Finished();
 
     /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.testing.ares.Run#getResults <em>Results</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.testing.ares.Run#getResults <em>Results</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the containment reference list '<em>Results</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.Run#getResults()
-     * @see #getRun()
-     * @generated
-     */
+	 * @return the meta object for the containment reference list '<em>Results</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Run#getResults()
+	 * @see #getRun()
+	 * @generated
+	 */
     EReference getRun_Results();
 
     /**
-     * Returns the meta object for class '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest <em>Constraint Test</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest <em>Constraint Test</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Constraint Test</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.ConstraintTest
-     * @generated
-     */
+	 * @return the meta object for class '<em>Constraint Test</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.ConstraintTest
+	 * @generated
+	 */
     EClass getConstraintTest();
 
     /**
-     * Returns the meta object for the reference '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getConstraint <em>Constraint</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the reference '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getConstraint <em>Constraint</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the reference '<em>Constraint</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.ConstraintTest#getConstraint()
-     * @see #getConstraintTest()
-     * @generated
-     */
+	 * @return the meta object for the reference '<em>Constraint</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.ConstraintTest#getConstraint()
+	 * @see #getConstraintTest()
+	 * @generated
+	 */
     EReference getConstraintTest_Constraint();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getIssue <em>Issue</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getIssue <em>Issue</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Issue</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.ConstraintTest#getIssue()
-     * @see #getConstraintTest()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Issue</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.ConstraintTest#getIssue()
+	 * @see #getConstraintTest()
+	 * @generated
+	 */
     EAttribute getConstraintTest_Issue();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getActualValue <em>Actual Value</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getActualValue <em>Actual Value</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Actual Value</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.ConstraintTest#getActualValue()
-     * @see #getConstraintTest()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Actual Value</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.ConstraintTest#getActualValue()
+	 * @see #getConstraintTest()
+	 * @generated
+	 */
     EAttribute getConstraintTest_ActualValue();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#isFailure <em>Failure</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#isFailure <em>Failure</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Failure</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.ConstraintTest#isFailure()
-     * @see #getConstraintTest()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Failure</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.ConstraintTest#isFailure()
+	 * @see #getConstraintTest()
+	 * @generated
+	 */
     EAttribute getConstraintTest_Failure();
 
     /**
-     * Returns the meta object for class '{@link org.eclipse.amp.amf.testing.ares.RunSet <em>Run Set</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for class '{@link org.eclipse.amp.amf.testing.ares.RunSet <em>Run Set</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for class '<em>Run Set</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.RunSet
-     * @generated
-     */
+	 * @return the meta object for class '<em>Run Set</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.RunSet
+	 * @generated
+	 */
     EClass getRunSet();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.RunSet#getResult <em>Result</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.RunSet#getResult <em>Result</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for the attribute '<em>Result</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.RunSet#getResult()
-     * @see #getRunSet()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Result</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.RunSet#getResult()
+	 * @see #getRunSet()
+	 * @generated
+	 */
     EAttribute getRunSet_Result();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.RunSet#getStarted <em>Started</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.RunSet#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.testing.ares.RunSet#getStarted()
-     * @see #getRunSet()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Started</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.RunSet#getStarted()
+	 * @see #getRunSet()
+	 * @generated
+	 */
     EAttribute getRunSet_Started();
 
     /**
-     * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.RunSet#getFinished <em>Finished</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the attribute '{@link org.eclipse.amp.amf.testing.ares.RunSet#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.testing.ares.RunSet#getFinished()
-     * @see #getRunSet()
-     * @generated
-     */
+	 * @return the meta object for the attribute '<em>Finished</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.RunSet#getFinished()
+	 * @see #getRunSet()
+	 * @generated
+	 */
     EAttribute getRunSet_Finished();
 
     /**
-     * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.testing.ares.RunSet#getRuns <em>Runs</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.amp.amf.testing.ares.RunSet#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.testing.ares.RunSet#getRuns()
-     * @see #getRunSet()
-     * @generated
-     */
+	 * @return the meta object for the containment reference list '<em>Runs</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.RunSet#getRuns()
+	 * @see #getRunSet()
+	 * @generated
+	 */
     EReference getRunSet_Runs();
 
     /**
-     * Returns the meta object for enum '{@link org.eclipse.amp.amf.testing.ares.ResultType <em>Result Type</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for enum '{@link org.eclipse.amp.amf.testing.ares.ResultType <em>Result Type</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for enum '<em>Result Type</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.ResultType
-     * @generated
-     */
+	 * @return the meta object for enum '<em>Result Type</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.ResultType
+	 * @generated
+	 */
     EEnum getResultType();
 
     /**
-     * Returns the meta object for enum '{@link org.eclipse.amp.amf.testing.ares.Issue <em>Issue</em>}'.
-     * <!-- begin-user-doc -->
+	 * Returns the meta object for enum '{@link org.eclipse.amp.amf.testing.ares.Issue <em>Issue</em>}'.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @return the meta object for enum '<em>Issue</em>'.
-     * @see org.eclipse.amp.amf.testing.ares.Issue
-     * @generated
-     */
+	 * @return the meta object for enum '<em>Issue</em>'.
+	 * @see org.eclipse.amp.amf.testing.ares.Issue
+	 * @generated
+	 */
     EEnum getIssue();
 
     /**
-     * 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
+	 */
     AresFactory getAresFactory();
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * Defines literals for the meta objects that represent
      * <ul>
      *   <li>each class,</li>
@@ -547,193 +547,193 @@
      *   <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.testing.ares.impl.RunImpl <em>Run</em>}' class.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.testing.ares.impl.RunImpl <em>Run</em>}' class.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.testing.ares.impl.RunImpl
-         * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getRun()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.testing.ares.impl.RunImpl
+		 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#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>Test</b></em>' reference feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Test</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference RUN__TEST = eINSTANCE.getRun_Test();
 
         /**
-         * The meta object literal for the '<em><b>Parameterization</b></em>' reference feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Parameterization</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference RUN__PARAMETERIZATION = eINSTANCE.getRun_Parameterization();
 
         /**
-         * The meta object literal for the '<em><b>Result</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Result</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute RUN__RESULT = eINSTANCE.getRun_Result();
 
         /**
-         * The meta object literal for the '<em><b>Parameters</b></em>' containment reference list feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Parameters</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference RUN__PARAMETERS = eINSTANCE.getRun_Parameters();
 
         /**
-         * The meta object literal for the '<em><b>Constraints</b></em>' containment reference list feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Constraints</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference RUN__CONSTRAINTS = eINSTANCE.getRun_Constraints();
 
         /**
-         * 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>Results</b></em>' containment reference list feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Results</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference RUN__RESULTS = eINSTANCE.getRun_Results();
 
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.testing.ares.impl.ConstraintTestImpl <em>Constraint Test</em>}' class.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.testing.ares.impl.ConstraintTestImpl <em>Constraint Test</em>}' class.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.testing.ares.impl.ConstraintTestImpl
-         * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getConstraintTest()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.testing.ares.impl.ConstraintTestImpl
+		 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getConstraintTest()
+		 * @generated
+		 */
         EClass CONSTRAINT_TEST = eINSTANCE.getConstraintTest();
 
         /**
-         * The meta object literal for the '<em><b>Constraint</b></em>' reference feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Constraint</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EReference CONSTRAINT_TEST__CONSTRAINT = eINSTANCE.getConstraintTest_Constraint();
 
         /**
-         * The meta object literal for the '<em><b>Issue</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Issue</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute CONSTRAINT_TEST__ISSUE = eINSTANCE.getConstraintTest_Issue();
 
         /**
-         * The meta object literal for the '<em><b>Actual Value</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Actual Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute CONSTRAINT_TEST__ACTUAL_VALUE = eINSTANCE.getConstraintTest_ActualValue();
 
         /**
-         * The meta object literal for the '<em><b>Failure</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Failure</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute CONSTRAINT_TEST__FAILURE = eINSTANCE.getConstraintTest_Failure();
 
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.testing.ares.impl.RunSetImpl <em>Run Set</em>}' class.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.testing.ares.impl.RunSetImpl <em>Run Set</em>}' class.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.testing.ares.impl.RunSetImpl
-         * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getRunSet()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.testing.ares.impl.RunSetImpl
+		 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getRunSet()
+		 * @generated
+		 */
         EClass RUN_SET = eINSTANCE.getRunSet();
 
         /**
-         * The meta object literal for the '<em><b>Result</b></em>' attribute feature.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '<em><b>Result</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @generated
-         */
+		 * @generated
+		 */
         EAttribute RUN_SET__RESULT = eINSTANCE.getRunSet_Result();
 
         /**
-         * 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_SET__STARTED = eINSTANCE.getRunSet_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_SET__FINISHED = eINSTANCE.getRunSet_Finished();
 
         /**
-         * 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 RUN_SET__RUNS = eINSTANCE.getRunSet_Runs();
 
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.testing.ares.ResultType <em>Result Type</em>}' enum.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.testing.ares.ResultType <em>Result Type</em>}' enum.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.testing.ares.ResultType
-         * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getResultType()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.testing.ares.ResultType
+		 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getResultType()
+		 * @generated
+		 */
         EEnum RESULT_TYPE = eINSTANCE.getResultType();
 
         /**
-         * The meta object literal for the '{@link org.eclipse.amp.amf.testing.ares.Issue <em>Issue</em>}' enum.
-         * <!-- begin-user-doc -->
+		 * The meta object literal for the '{@link org.eclipse.amp.amf.testing.ares.Issue <em>Issue</em>}' enum.
+		 * <!-- begin-user-doc -->
          * <!-- end-user-doc -->
-         * @see org.eclipse.amp.amf.testing.ares.Issue
-         * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getIssue()
-         * @generated
-         */
+		 * @see org.eclipse.amp.amf.testing.ares.Issue
+		 * @see org.eclipse.amp.amf.testing.ares.impl.AresPackageImpl#getIssue()
+		 * @generated
+		 */
         EEnum ISSUE = eINSTANCE.getIssue();
 
     }
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/ConstraintTest.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/ConstraintTest.java
index f277103..97a626b 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/ConstraintTest.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/ConstraintTest.java
@@ -30,99 +30,99 @@
  */
 public interface ConstraintTest extends EObject {
     /**
-     * Returns the value of the '<em><b>Constraint</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Constraint</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Constraint</em>' reference isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Constraint</em>' reference.
-     * @see #setConstraint(Constraint)
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getConstraintTest_Constraint()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Constraint</em>' reference.
+	 * @see #setConstraint(Constraint)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getConstraintTest_Constraint()
+	 * @model
+	 * @generated
+	 */
     Constraint getConstraint();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getConstraint <em>Constraint</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getConstraint <em>Constraint</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Constraint</em>' reference.
-     * @see #getConstraint()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Constraint</em>' reference.
+	 * @see #getConstraint()
+	 * @generated
+	 */
     void setConstraint(Constraint value);
 
     /**
-     * Returns the value of the '<em><b>Issue</b></em>' attribute.
-     * The literals are from the enumeration {@link org.eclipse.amp.amf.testing.ares.Issue}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Issue</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.amp.amf.testing.ares.Issue}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Issue</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Issue</em>' attribute.
-     * @see org.eclipse.amp.amf.testing.ares.Issue
-     * @see #setIssue(Issue)
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getConstraintTest_Issue()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Issue</em>' attribute.
+	 * @see org.eclipse.amp.amf.testing.ares.Issue
+	 * @see #setIssue(Issue)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getConstraintTest_Issue()
+	 * @model required="true"
+	 * @generated
+	 */
     Issue getIssue();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getIssue <em>Issue</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getIssue <em>Issue</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Issue</em>' attribute.
-     * @see org.eclipse.amp.amf.testing.ares.Issue
-     * @see #getIssue()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Issue</em>' attribute.
+	 * @see org.eclipse.amp.amf.testing.ares.Issue
+	 * @see #getIssue()
+	 * @generated
+	 */
     void setIssue(Issue value);
 
     /**
-     * Returns the value of the '<em><b>Actual Value</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Actual Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Actual 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>Actual Value</em>' attribute.
-     * @see #setActualValue(double)
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getConstraintTest_ActualValue()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Actual Value</em>' attribute.
+	 * @see #setActualValue(double)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getConstraintTest_ActualValue()
+	 * @model required="true"
+	 * @generated
+	 */
     double getActualValue();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getActualValue <em>Actual Value</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest#getActualValue <em>Actual Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Actual Value</em>' attribute.
-     * @see #getActualValue()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Actual Value</em>' attribute.
+	 * @see #getActualValue()
+	 * @generated
+	 */
     void setActualValue(double value);
 
     /**
-     * Returns the value of the '<em><b>Failure</b></em>' attribute.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Failure</b></em>' attribute.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Failure</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Failure</em>' attribute.
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getConstraintTest_Failure()
-     * @model required="true" transient="true" changeable="false" volatile="true" derived="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Failure</em>' attribute.
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getConstraintTest_Failure()
+	 * @model required="true" transient="true" changeable="false" volatile="true" derived="true"
+	 * @generated
+	 */
     boolean isFailure();
 
 } // ConstraintTest
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/Issue.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/Issue.java
index e8f9604..d0e106c 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/Issue.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/Issue.java
@@ -23,240 +23,240 @@
  */
 public enum Issue implements Enumerator {
     /**
-     * The '<em><b>Below Range</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Below Range</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #BELOW_RANGE_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #BELOW_RANGE_VALUE
+	 * @generated
+	 * @ordered
+	 */
     BELOW_RANGE(10, "BelowRange", "BELOW_RANGE"),
 
     /**
-     * The '<em><b>Above Range</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Above Range</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #ABOVE_RANGE_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #ABOVE_RANGE_VALUE
+	 * @generated
+	 * @ordered
+	 */
     ABOVE_RANGE(15, "AboveRange", "ABOVE_RANGE"), /**
-     * The '<em><b>None</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>None</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #NONE_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #NONE_VALUE
+	 * @generated
+	 * @ordered
+	 */
     NONE(1, "None", "NONE"), /**
-     * The '<em><b>Not Found</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Not Found</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #NOT_FOUND_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #NOT_FOUND_VALUE
+	 * @generated
+	 * @ordered
+	 */
     NOT_FOUND(-1, "NotFound", "NOT_FOUND");
 
     /**
-     * The '<em><b>Below Range</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Below Range</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Below Range</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #BELOW_RANGE
-     * @model name="BelowRange" literal="BELOW_RANGE"
-     * @generated
-     * @ordered
-     */
+	 * @see #BELOW_RANGE
+	 * @model name="BelowRange" literal="BELOW_RANGE"
+	 * @generated
+	 * @ordered
+	 */
     public static final int BELOW_RANGE_VALUE = 10;
 
     /**
-     * The '<em><b>Above Range</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Above Range</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Above Range</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #ABOVE_RANGE
-     * @model name="AboveRange" literal="ABOVE_RANGE"
-     * @generated
-     * @ordered
-     */
+	 * @see #ABOVE_RANGE
+	 * @model name="AboveRange" literal="ABOVE_RANGE"
+	 * @generated
+	 * @ordered
+	 */
     public static final int ABOVE_RANGE_VALUE = 15;
 
     /**
-     * The '<em><b>None</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>None</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>None</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #NONE
-     * @model name="None" literal="NONE"
-     * @generated
-     * @ordered
-     */
+	 * @see #NONE
+	 * @model name="None" literal="NONE"
+	 * @generated
+	 * @ordered
+	 */
     public static final int NONE_VALUE = 1;
 
     /**
-     * The '<em><b>Not Found</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Not Found</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Not Found</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #NOT_FOUND
-     * @model name="NotFound" literal="NOT_FOUND"
-     * @generated
-     * @ordered
-     */
+	 * @see #NOT_FOUND
+	 * @model name="NotFound" literal="NOT_FOUND"
+	 * @generated
+	 * @ordered
+	 */
     public static final int NOT_FOUND_VALUE = -1;
 
     /**
-     * An array of all the '<em><b>Issue</b></em>' enumerators.
-     * <!-- begin-user-doc -->
+	 * An array of all the '<em><b>Issue</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private static final Issue[] VALUES_ARRAY =
         new Issue[] {
-            BELOW_RANGE,
-            ABOVE_RANGE,
-            NONE,
-            NOT_FOUND,
-        };
+			BELOW_RANGE,
+			ABOVE_RANGE,
+			NONE,
+			NOT_FOUND,
+		};
 
     /**
-     * A public read-only list of all the '<em><b>Issue</b></em>' enumerators.
-     * <!-- begin-user-doc -->
+	 * A public read-only list of all the '<em><b>Issue</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static final List<Issue> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
     /**
-     * Returns the '<em><b>Issue</b></em>' literal with the specified literal value.
-     * <!-- begin-user-doc -->
+	 * Returns the '<em><b>Issue</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static Issue get(String literal) {
-        for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-            Issue result = VALUES_ARRAY[i];
-            if (result.toString().equals(literal)) {
-                return result;
-            }
-        }
-        return null;
-    }
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Issue result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
 
     /**
-     * Returns the '<em><b>Issue</b></em>' literal with the specified name.
-     * <!-- begin-user-doc -->
+	 * Returns the '<em><b>Issue</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static Issue getByName(String name) {
-        for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-            Issue result = VALUES_ARRAY[i];
-            if (result.getName().equals(name)) {
-                return result;
-            }
-        }
-        return null;
-    }
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			Issue result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
 
     /**
-     * Returns the '<em><b>Issue</b></em>' literal with the specified integer value.
-     * <!-- begin-user-doc -->
+	 * Returns the '<em><b>Issue</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static Issue get(int value) {
-        switch (value) {
-            case BELOW_RANGE_VALUE: return BELOW_RANGE;
-            case ABOVE_RANGE_VALUE: return ABOVE_RANGE;
-            case NONE_VALUE: return NONE;
-            case NOT_FOUND_VALUE: return NOT_FOUND;
-        }
-        return null;
-    }
+		switch (value) {
+			case BELOW_RANGE_VALUE: return BELOW_RANGE;
+			case ABOVE_RANGE_VALUE: return ABOVE_RANGE;
+			case NONE_VALUE: return NONE;
+			case NOT_FOUND_VALUE: return NOT_FOUND;
+		}
+		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 Issue(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;
+	}
     
 } //Issue
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/ResultType.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/ResultType.java
index 6886a2a..19ccdae 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/ResultType.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/ResultType.java
@@ -23,242 +23,242 @@
  */
 public enum ResultType implements Enumerator {
     /**
-     * The '<em><b>Incomplete</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Incomplete</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #INCOMPLETE_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #INCOMPLETE_VALUE
+	 * @generated
+	 * @ordered
+	 */
     INCOMPLETE(1, "Incomplete", "INCOMPLETE"),
 
     /**
-     * The '<em><b>Success</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Success</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #SUCCESS_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #SUCCESS_VALUE
+	 * @generated
+	 * @ordered
+	 */
     SUCCESS(2, "Success", "SUCCESS"),
 
     /**
-     * The '<em><b>Failure</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Failure</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #FAILURE_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #FAILURE_VALUE
+	 * @generated
+	 * @ordered
+	 */
     FAILURE(3, "Failure", "FAILURE"), /**
-     * The '<em><b>Error</b></em>' literal object.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Error</b></em>' literal object.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #ERROR_VALUE
-     * @generated
-     * @ordered
-     */
+	 * @see #ERROR_VALUE
+	 * @generated
+	 * @ordered
+	 */
     ERROR(-1, "Error", "ERROR");
 
     /**
-     * The '<em><b>Incomplete</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Incomplete</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Incomplete</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #INCOMPLETE
-     * @model name="Incomplete" literal="INCOMPLETE"
-     * @generated
-     * @ordered
-     */
+	 * @see #INCOMPLETE
+	 * @model name="Incomplete" literal="INCOMPLETE"
+	 * @generated
+	 * @ordered
+	 */
     public static final int INCOMPLETE_VALUE = 1;
 
     /**
-     * The '<em><b>Success</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Success</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Success</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #SUCCESS
-     * @model name="Success" literal="SUCCESS"
-     * @generated
-     * @ordered
-     */
+	 * @see #SUCCESS
+	 * @model name="Success" literal="SUCCESS"
+	 * @generated
+	 * @ordered
+	 */
     public static final int SUCCESS_VALUE = 2;
 
     /**
-     * The '<em><b>Failure</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Failure</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Failure</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #FAILURE
-     * @model name="Failure" literal="FAILURE"
-     * @generated
-     * @ordered
-     */
+	 * @see #FAILURE
+	 * @model name="Failure" literal="FAILURE"
+	 * @generated
+	 * @ordered
+	 */
     public static final int FAILURE_VALUE = 3;
 
     /**
-     * The '<em><b>Error</b></em>' literal value.
-     * <!-- begin-user-doc -->
+	 * The '<em><b>Error</b></em>' literal value.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of '<em><b>Error</b></em>' literal object isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @see #ERROR
-     * @model name="Error" literal="ERROR"
-     * @generated
-     * @ordered
-     */
+	 * @see #ERROR
+	 * @model name="Error" literal="ERROR"
+	 * @generated
+	 * @ordered
+	 */
     public static final int ERROR_VALUE = -1;
 
     /**
-     * An array of all the '<em><b>Result Type</b></em>' enumerators.
-     * <!-- begin-user-doc -->
+	 * An array of all the '<em><b>Result Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private static final ResultType[] VALUES_ARRAY =
         new ResultType[] {
-            INCOMPLETE,
-            SUCCESS,
-            FAILURE,
-            ERROR,
-        };
+			INCOMPLETE,
+			SUCCESS,
+			FAILURE,
+			ERROR,
+		};
 
     /**
-     * A public read-only list of all the '<em><b>Result Type</b></em>' enumerators.
-     * <!-- begin-user-doc -->
+	 * A public read-only list of all the '<em><b>Result Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static final List<ResultType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
 
     /**
-     * Returns the '<em><b>Result Type</b></em>' literal with the specified literal value.
-     * <!-- begin-user-doc -->
+	 * Returns the '<em><b>Result Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static ResultType get(String literal) {
-        for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-            ResultType result = VALUES_ARRAY[i];
-            if (result.toString().equals(literal)) {
-                return result;
-            }
-        }
-        return null;
-    }
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ResultType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
 
     /**
-     * Returns the '<em><b>Result Type</b></em>' literal with the specified name.
-     * <!-- begin-user-doc -->
+	 * Returns the '<em><b>Result Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static ResultType getByName(String name) {
-        for (int i = 0; i < VALUES_ARRAY.length; ++i) {
-            ResultType result = VALUES_ARRAY[i];
-            if (result.getName().equals(name)) {
-                return result;
-            }
-        }
-        return null;
-    }
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ResultType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
 
     /**
-     * Returns the '<em><b>Result Type</b></em>' literal with the specified integer value.
-     * <!-- begin-user-doc -->
+	 * Returns the '<em><b>Result Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static ResultType get(int value) {
-        switch (value) {
-            case INCOMPLETE_VALUE: return INCOMPLETE;
-            case SUCCESS_VALUE: return SUCCESS;
-            case FAILURE_VALUE: return FAILURE;
-            case ERROR_VALUE: return ERROR;
-        }
-        return null;
-    }
+		switch (value) {
+			case INCOMPLETE_VALUE: return INCOMPLETE;
+			case SUCCESS_VALUE: return SUCCESS;
+			case FAILURE_VALUE: return FAILURE;
+			case ERROR_VALUE: return ERROR;
+		}
+		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 ResultType(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;
+	}
     
 } //ResultType
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/Run.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/Run.java
index 06701b6..44a1478 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/Run.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/Run.java
@@ -8,6 +8,7 @@
 
 import java.util.Date;
 
+import org.eclipse.amp.amf.parameters.aPar.SingleParameter;
 import org.eclipse.amp.amf.parameters.aPar.Parameter;
 import org.eclipse.amp.amf.testing.aTest.Constraint;
 import org.eclipse.amp.amf.testing.aTest.Model;
@@ -41,211 +42,211 @@
  */
 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.testing.ares.AresPackage#getRun_Model()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Model</em>' reference.
+	 * @see #setModel(SContext)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Model()
+	 * @model required="true"
+	 * @generated
+	 */
     SContext getModel();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.Run#getModel <em>Model</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.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>Test</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Test</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Test</em>' reference isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Test</em>' reference.
-     * @see #setTest(Model)
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Test()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Test</em>' reference.
+	 * @see #setTest(Model)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Test()
+	 * @model required="true"
+	 * @generated
+	 */
     Model getTest();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.Run#getTest <em>Test</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.Run#getTest <em>Test</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Test</em>' reference.
-     * @see #getTest()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Test</em>' reference.
+	 * @see #getTest()
+	 * @generated
+	 */
     void setTest(Model value);
 
     /**
-     * Returns the value of the '<em><b>Parameterization</b></em>' reference.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Parameterization</b></em>' reference.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Parameterization</em>' reference isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Parameterization</em>' reference.
-     * @see #setParameterization(org.eclipse.amp.amf.parameters.aPar.Model)
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Parameterization()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Parameterization</em>' reference.
+	 * @see #setParameterization(org.eclipse.amp.amf.parameters.aPar.Model)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Parameterization()
+	 * @model required="true"
+	 * @generated
+	 */
     org.eclipse.amp.amf.parameters.aPar.Model getParameterization();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.Run#getParameterization <em>Parameterization</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.Run#getParameterization <em>Parameterization</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Parameterization</em>' reference.
-     * @see #getParameterization()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Parameterization</em>' reference.
+	 * @see #getParameterization()
+	 * @generated
+	 */
     void setParameterization(org.eclipse.amp.amf.parameters.aPar.Model value);
 
     /**
-     * Returns the value of the '<em><b>Result</b></em>' attribute.
-     * The default value is <code>""</code>.
-     * The literals are from the enumeration {@link org.eclipse.amp.amf.testing.ares.ResultType}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Result</b></em>' attribute.
+	 * The default value is <code>""</code>.
+	 * The literals are from the enumeration {@link org.eclipse.amp.amf.testing.ares.ResultType}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Result</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Result</em>' attribute.
-     * @see org.eclipse.amp.amf.testing.ares.ResultType
-     * @see #setResult(ResultType)
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Result()
-     * @model default=""
-     * @generated
-     */
+	 * @return the value of the '<em>Result</em>' attribute.
+	 * @see org.eclipse.amp.amf.testing.ares.ResultType
+	 * @see #setResult(ResultType)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Result()
+	 * @model default=""
+	 * @generated
+	 */
     ResultType getResult();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.Run#getResult <em>Result</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.Run#getResult <em>Result</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Result</em>' attribute.
-     * @see org.eclipse.amp.amf.testing.ares.ResultType
-     * @see #getResult()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Result</em>' attribute.
+	 * @see org.eclipse.amp.amf.testing.ares.ResultType
+	 * @see #getResult()
+	 * @generated
+	 */
     void setResult(ResultType value);
 
     /**
-     * Returns the value of the '<em><b>Parameters</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.parameters.aPar.Parameter}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Parameters</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.parameters.aPar.SingleParameter}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Parameters</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>Parameters</em>' containment reference list.
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Parameters()
-     * @model containment="true"
-     * @generated
-     */
-    EList<Parameter> getParameters();
+	 * @return the value of the '<em>Parameters</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Parameters()
+	 * @model containment="true"
+	 * @generated
+	 */
+    EList<SingleParameter> getParameters();
 
     /**
-     * Returns the value of the '<em><b>Constraints</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.testing.aTest.Constraint}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Constraints</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.testing.aTest.Constraint}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Constraints</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>Constraints</em>' containment reference list.
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Constraints()
-     * @model containment="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Constraints</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Constraints()
+	 * @model containment="true"
+	 * @generated
+	 */
     EList<Constraint> getConstraints();
 
     /**
-     * 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.testing.ares.AresPackage#getRun_Started()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Started</em>' attribute.
+	 * @see #setStarted(Date)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Started()
+	 * @model
+	 * @generated
+	 */
     Date getStarted();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.Run#getStarted <em>Started</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.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.testing.ares.AresPackage#getRun_Finished()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Finished</em>' attribute.
+	 * @see #setFinished(Date)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Finished()
+	 * @model
+	 * @generated
+	 */
     Date getFinished();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.Run#getFinished <em>Finished</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.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>Results</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.testing.ares.ConstraintTest}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Results</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.amp.amf.testing.ares.ConstraintTest}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Results</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>Results</em>' containment reference list.
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Results()
-     * @model containment="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Results</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRun_Results()
+	 * @model containment="true"
+	 * @generated
+	 */
     EList<ConstraintTest> getResults();
 
 } // Run
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/RunSet.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/RunSet.java
index 4fb0230..56b45ad 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/RunSet.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/RunSet.java
@@ -32,100 +32,100 @@
  */
 public interface RunSet extends EObject {
     /**
-     * Returns the value of the '<em><b>Result</b></em>' attribute.
-     * The literals are from the enumeration {@link org.eclipse.amp.amf.testing.ares.ResultType}.
-     * <!-- begin-user-doc -->
+	 * Returns the value of the '<em><b>Result</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.amp.amf.testing.ares.ResultType}.
+	 * <!-- begin-user-doc -->
      * <p>
      * If the meaning of the '<em>Result</em>' attribute isn't clear,
      * there really should be more of a description here...
      * </p>
      * <!-- end-user-doc -->
-     * @return the value of the '<em>Result</em>' attribute.
-     * @see org.eclipse.amp.amf.testing.ares.ResultType
-     * @see #setResult(ResultType)
-     * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRunSet_Result()
-     * @model required="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Result</em>' attribute.
+	 * @see org.eclipse.amp.amf.testing.ares.ResultType
+	 * @see #setResult(ResultType)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRunSet_Result()
+	 * @model required="true"
+	 * @generated
+	 */
     ResultType getResult();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.RunSet#getResult <em>Result</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.RunSet#getResult <em>Result</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @param value the new value of the '<em>Result</em>' attribute.
-     * @see org.eclipse.amp.amf.testing.ares.ResultType
-     * @see #getResult()
-     * @generated
-     */
+	 * @param value the new value of the '<em>Result</em>' attribute.
+	 * @see org.eclipse.amp.amf.testing.ares.ResultType
+	 * @see #getResult()
+	 * @generated
+	 */
     void setResult(ResultType 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.testing.ares.AresPackage#getRunSet_Started()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Started</em>' attribute.
+	 * @see #setStarted(Date)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRunSet_Started()
+	 * @model
+	 * @generated
+	 */
     Date getStarted();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.RunSet#getStarted <em>Started</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.RunSet#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.testing.ares.AresPackage#getRunSet_Finished()
-     * @model
-     * @generated
-     */
+	 * @return the value of the '<em>Finished</em>' attribute.
+	 * @see #setFinished(Date)
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRunSet_Finished()
+	 * @model
+	 * @generated
+	 */
     Date getFinished();
 
     /**
-     * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.RunSet#getFinished <em>Finished</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * Sets the value of the '{@link org.eclipse.amp.amf.testing.ares.RunSet#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>Runs</b></em>' containment reference list.
-     * The list contents are of type {@link org.eclipse.amp.amf.testing.ares.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.testing.ares.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.testing.ares.AresPackage#getRunSet_Runs()
-     * @model containment="true"
-     * @generated
-     */
+	 * @return the value of the '<em>Runs</em>' containment reference list.
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#getRunSet_Runs()
+	 * @model containment="true"
+	 * @generated
+	 */
     EList<Run> getRuns();
 
 } // RunSet
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/AresFactoryImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/AresFactoryImpl.java
index a170f4a..4e7f4fd 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/AresFactoryImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/AresFactoryImpl.java
@@ -29,172 +29,172 @@
  */
 public class AresFactoryImpl extends EFactoryImpl implements AresFactory {
     /**
-     * Creates the default factory implementation.
-     * <!-- begin-user-doc -->
+	 * Creates the default factory implementation.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public static AresFactory init() {
-        try {
-            AresFactory theAresFactory = (AresFactory)EPackage.Registry.INSTANCE.getEFactory("http://eclipse.org.eclipse.amp/ares"); 
-            if (theAresFactory != null) {
-                return theAresFactory;
-            }
-        }
-        catch (Exception exception) {
-            EcorePlugin.INSTANCE.log(exception);
-        }
-        return new AresFactoryImpl();
-    }
+		try {
+			AresFactory theAresFactory = (AresFactory)EPackage.Registry.INSTANCE.getEFactory("http://eclipse.org/amp/ares"); 
+			if (theAresFactory != null) {
+				return theAresFactory;
+			}
+		}
+		catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new AresFactoryImpl();
+	}
 
     /**
-     * Creates an instance of the factory.
-     * <!-- begin-user-doc -->
+	 * Creates an instance of the factory.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public AresFactoryImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public EObject create(EClass eClass) {
-        switch (eClass.getClassifierID()) {
-            case AresPackage.RUN: return createRun();
-            case AresPackage.CONSTRAINT_TEST: return createConstraintTest();
-            case AresPackage.RUN_SET: return createRunSet();
-            default:
-                throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
-        }
-    }
+		switch (eClass.getClassifierID()) {
+			case AresPackage.RUN: return createRun();
+			case AresPackage.CONSTRAINT_TEST: return createConstraintTest();
+			case AresPackage.RUN_SET: return createRunSet();
+			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 AresPackage.RESULT_TYPE:
-                return createResultTypeFromString(eDataType, initialValue);
-            case AresPackage.ISSUE:
-                return createIssueFromString(eDataType, initialValue);
-            default:
-                throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
-        }
-    }
+		switch (eDataType.getClassifierID()) {
+			case AresPackage.RESULT_TYPE:
+				return createResultTypeFromString(eDataType, initialValue);
+			case AresPackage.ISSUE:
+				return createIssueFromString(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 AresPackage.RESULT_TYPE:
-                return convertResultTypeToString(eDataType, instanceValue);
-            case AresPackage.ISSUE:
-                return convertIssueToString(eDataType, instanceValue);
-            default:
-                throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
-        }
-    }
+		switch (eDataType.getClassifierID()) {
+			case AresPackage.RESULT_TYPE:
+				return convertResultTypeToString(eDataType, instanceValue);
+			case AresPackage.ISSUE:
+				return convertIssueToString(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 ConstraintTest createConstraintTest() {
-        ConstraintTestImpl constraintTest = new ConstraintTestImpl();
-        return constraintTest;
-    }
+		ConstraintTestImpl constraintTest = new ConstraintTestImpl();
+		return constraintTest;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public RunSet createRunSet() {
-        RunSetImpl runSet = new RunSetImpl();
-        return runSet;
-    }
+		RunSetImpl runSet = new RunSetImpl();
+		return runSet;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ResultType createResultTypeFromString(EDataType eDataType, String initialValue) {
-        ResultType result = ResultType.get(initialValue);
-        if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
-        return result;
-    }
+		ResultType result = ResultType.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 convertResultTypeToString(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 Issue createIssueFromString(EDataType eDataType, String initialValue) {
-        Issue result = Issue.get(initialValue);
-        if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
-        return result;
-    }
+		Issue result = Issue.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 convertIssueToString(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 AresPackage getAresPackage() {
-        return (AresPackage)getEPackage();
-    }
+		return (AresPackage)getEPackage();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @deprecated
-     * @generated
-     */
+	 * @deprecated
+	 * @generated
+	 */
     @Deprecated
     public static AresPackage getPackage() {
-        return AresPackage.eINSTANCE;
-    }
+		return AresPackage.eINSTANCE;
+	}
 
 } //AresFactoryImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/AresPackageImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/AresPackageImpl.java
index f744cd9..70a401d 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/AresPackageImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/AresPackageImpl.java
@@ -31,432 +31,432 @@
  */
 public class AresPackageImpl extends EPackageImpl implements AresPackage {
     /**
-     * <!-- 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 constraintTestEClass = null;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EClass runSetEClass = null;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EEnum resultTypeEEnum = null;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     private EEnum issueEEnum = 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.testing.ares.AresPackage#eNS_URI
-     * @see #init()
-     * @generated
-     */
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see org.eclipse.amp.amf.testing.ares.AresPackage#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
     private AresPackageImpl() {
-        super(eNS_URI, AresFactory.eINSTANCE);
-    }
+		super(eNS_URI, AresFactory.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 AresPackage#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 AresPackage#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 AresPackage init() {
-        if (isInited) return (AresPackage)EPackage.Registry.INSTANCE.getEPackage(AresPackage.eNS_URI);
+		if (isInited) return (AresPackage)EPackage.Registry.INSTANCE.getEPackage(AresPackage.eNS_URI);
 
-        // Obtain or create and register package
-        AresPackageImpl theAresPackage = (AresPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof AresPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new AresPackageImpl());
+		// Obtain or create and register package
+		AresPackageImpl theAresPackage = (AresPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof AresPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new AresPackageImpl());
 
-        isInited = true;
+		isInited = true;
 
-        // Initialize simple dependencies
-        AParPackage.eINSTANCE.eClass();
-        ATestPackage.eINSTANCE.eClass();
+		// Initialize simple dependencies
+		AParPackage.eINSTANCE.eClass();
+		ATestPackage.eINSTANCE.eClass();
 
-        // Create package meta-data objects
-        theAresPackage.createPackageContents();
+		// Create package meta-data objects
+		theAresPackage.createPackageContents();
 
-        // Initialize created meta-data
-        theAresPackage.initializePackageContents();
+		// Initialize created meta-data
+		theAresPackage.initializePackageContents();
 
-        // Mark meta-data to indicate it can't be changed
-        theAresPackage.freeze();
+		// Mark meta-data to indicate it can't be changed
+		theAresPackage.freeze();
 
   
-        // Update the registry and return the package
-        EPackage.Registry.INSTANCE.put(AresPackage.eNS_URI, theAresPackage);
-        return theAresPackage;
-    }
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(AresPackage.eNS_URI, theAresPackage);
+		return theAresPackage;
+	}
 
     /**
-     * <!-- 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 EReference getRun_Test() {
-        return (EReference)runEClass.getEStructuralFeatures().get(1);
-    }
+		return (EReference)runEClass.getEStructuralFeatures().get(1);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getRun_Parameterization() {
-        return (EReference)runEClass.getEStructuralFeatures().get(2);
-    }
+		return (EReference)runEClass.getEStructuralFeatures().get(2);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getRun_Result() {
-        return (EAttribute)runEClass.getEStructuralFeatures().get(3);
-    }
+		return (EAttribute)runEClass.getEStructuralFeatures().get(3);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getRun_Parameters() {
-        return (EReference)runEClass.getEStructuralFeatures().get(4);
-    }
+		return (EReference)runEClass.getEStructuralFeatures().get(4);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getRun_Constraints() {
-        return (EReference)runEClass.getEStructuralFeatures().get(5);
-    }
+		return (EReference)runEClass.getEStructuralFeatures().get(5);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getRun_Started() {
-        return (EAttribute)runEClass.getEStructuralFeatures().get(6);
-    }
+		return (EAttribute)runEClass.getEStructuralFeatures().get(6);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getRun_Finished() {
-        return (EAttribute)runEClass.getEStructuralFeatures().get(7);
-    }
+		return (EAttribute)runEClass.getEStructuralFeatures().get(7);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getRun_Results() {
-        return (EReference)runEClass.getEStructuralFeatures().get(8);
-    }
+		return (EReference)runEClass.getEStructuralFeatures().get(8);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EClass getConstraintTest() {
-        return constraintTestEClass;
-    }
+		return constraintTestEClass;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getConstraintTest_Constraint() {
-        return (EReference)constraintTestEClass.getEStructuralFeatures().get(0);
-    }
+		return (EReference)constraintTestEClass.getEStructuralFeatures().get(0);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getConstraintTest_Issue() {
-        return (EAttribute)constraintTestEClass.getEStructuralFeatures().get(1);
-    }
+		return (EAttribute)constraintTestEClass.getEStructuralFeatures().get(1);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getConstraintTest_ActualValue() {
-        return (EAttribute)constraintTestEClass.getEStructuralFeatures().get(2);
-    }
+		return (EAttribute)constraintTestEClass.getEStructuralFeatures().get(2);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getConstraintTest_Failure() {
-        return (EAttribute)constraintTestEClass.getEStructuralFeatures().get(3);
-    }
+		return (EAttribute)constraintTestEClass.getEStructuralFeatures().get(3);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EClass getRunSet() {
-        return runSetEClass;
-    }
+		return runSetEClass;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getRunSet_Result() {
-        return (EAttribute)runSetEClass.getEStructuralFeatures().get(0);
-    }
+		return (EAttribute)runSetEClass.getEStructuralFeatures().get(0);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getRunSet_Started() {
-        return (EAttribute)runSetEClass.getEStructuralFeatures().get(1);
-    }
+		return (EAttribute)runSetEClass.getEStructuralFeatures().get(1);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EAttribute getRunSet_Finished() {
-        return (EAttribute)runSetEClass.getEStructuralFeatures().get(2);
-    }
+		return (EAttribute)runSetEClass.getEStructuralFeatures().get(2);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EReference getRunSet_Runs() {
-        return (EReference)runSetEClass.getEStructuralFeatures().get(3);
-    }
+		return (EReference)runSetEClass.getEStructuralFeatures().get(3);
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EEnum getResultType() {
-        return resultTypeEEnum;
-    }
+		return resultTypeEEnum;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EEnum getIssue() {
-        return issueEEnum;
-    }
+		return issueEEnum;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public AresFactory getAresFactory() {
-        return (AresFactory)getEFactoryInstance();
-    }
+		return (AresFactory)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);
-        createEReference(runEClass, RUN__TEST);
-        createEReference(runEClass, RUN__PARAMETERIZATION);
-        createEAttribute(runEClass, RUN__RESULT);
-        createEReference(runEClass, RUN__PARAMETERS);
-        createEReference(runEClass, RUN__CONSTRAINTS);
-        createEAttribute(runEClass, RUN__STARTED);
-        createEAttribute(runEClass, RUN__FINISHED);
-        createEReference(runEClass, RUN__RESULTS);
+		// Create classes and their features
+		runEClass = createEClass(RUN);
+		createEReference(runEClass, RUN__MODEL);
+		createEReference(runEClass, RUN__TEST);
+		createEReference(runEClass, RUN__PARAMETERIZATION);
+		createEAttribute(runEClass, RUN__RESULT);
+		createEReference(runEClass, RUN__PARAMETERS);
+		createEReference(runEClass, RUN__CONSTRAINTS);
+		createEAttribute(runEClass, RUN__STARTED);
+		createEAttribute(runEClass, RUN__FINISHED);
+		createEReference(runEClass, RUN__RESULTS);
 
-        constraintTestEClass = createEClass(CONSTRAINT_TEST);
-        createEReference(constraintTestEClass, CONSTRAINT_TEST__CONSTRAINT);
-        createEAttribute(constraintTestEClass, CONSTRAINT_TEST__ISSUE);
-        createEAttribute(constraintTestEClass, CONSTRAINT_TEST__ACTUAL_VALUE);
-        createEAttribute(constraintTestEClass, CONSTRAINT_TEST__FAILURE);
+		constraintTestEClass = createEClass(CONSTRAINT_TEST);
+		createEReference(constraintTestEClass, CONSTRAINT_TEST__CONSTRAINT);
+		createEAttribute(constraintTestEClass, CONSTRAINT_TEST__ISSUE);
+		createEAttribute(constraintTestEClass, CONSTRAINT_TEST__ACTUAL_VALUE);
+		createEAttribute(constraintTestEClass, CONSTRAINT_TEST__FAILURE);
 
-        runSetEClass = createEClass(RUN_SET);
-        createEAttribute(runSetEClass, RUN_SET__RESULT);
-        createEAttribute(runSetEClass, RUN_SET__STARTED);
-        createEAttribute(runSetEClass, RUN_SET__FINISHED);
-        createEReference(runSetEClass, RUN_SET__RUNS);
+		runSetEClass = createEClass(RUN_SET);
+		createEAttribute(runSetEClass, RUN_SET__RESULT);
+		createEAttribute(runSetEClass, RUN_SET__STARTED);
+		createEAttribute(runSetEClass, RUN_SET__FINISHED);
+		createEReference(runSetEClass, RUN_SET__RUNS);
 
-        // Create enums
-        resultTypeEEnum = createEEnum(RESULT_TYPE);
-        issueEEnum = createEEnum(ISSUE);
-    }
+		// Create enums
+		resultTypeEEnum = createEEnum(RESULT_TYPE);
+		issueEEnum = createEEnum(ISSUE);
+	}
 
     /**
-     * <!-- 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);
-        ATestPackage theATestPackage = (ATestPackage)EPackage.Registry.INSTANCE.getEPackage(ATestPackage.eNS_URI);
-        AParPackage theAParPackage = (AParPackage)EPackage.Registry.INSTANCE.getEPackage(AParPackage.eNS_URI);
+		// Obtain other dependent packages
+		MetaABMPackage theMetaABMPackage = (MetaABMPackage)EPackage.Registry.INSTANCE.getEPackage(MetaABMPackage.eNS_URI);
+		ATestPackage theATestPackage = (ATestPackage)EPackage.Registry.INSTANCE.getEPackage(ATestPackage.eNS_URI);
+		AParPackage theAParPackage = (AParPackage)EPackage.Registry.INSTANCE.getEPackage(AParPackage.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);
-        initEReference(getRun_Test(), theATestPackage.getModel(), null, "test", null, 1, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getRun_Parameterization(), theAParPackage.getModel(), null, "parameterization", 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_Result(), this.getResultType(), "result", "", 0, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getRun_Parameters(), theAParPackage.getParameter(), null, "parameters", 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_Constraints(), theATestPackage.getConstraint(), null, "constraints", 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_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_Results(), this.getConstraintTest(), null, "results", 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);
+		initEReference(getRun_Test(), theATestPackage.getModel(), null, "test", null, 1, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getRun_Parameterization(), theAParPackage.getModel(), null, "parameterization", 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_Result(), this.getResultType(), "result", "", 0, 1, Run.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getRun_Parameters(), theAParPackage.getSingleParameter(), null, "parameters", 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_Constraints(), theATestPackage.getConstraint(), null, "constraints", 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_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_Results(), this.getConstraintTest(), null, "results", 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(constraintTestEClass, ConstraintTest.class, "ConstraintTest", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEReference(getConstraintTest_Constraint(), theATestPackage.getConstraint(), null, "constraint", null, 0, 1, ConstraintTest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getConstraintTest_Issue(), this.getIssue(), "issue", null, 1, 1, ConstraintTest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getConstraintTest_ActualValue(), ecorePackage.getEDouble(), "actualValue", null, 1, 1, ConstraintTest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getConstraintTest_Failure(), ecorePackage.getEBoolean(), "failure", null, 1, 1, ConstraintTest.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEClass(constraintTestEClass, ConstraintTest.class, "ConstraintTest", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getConstraintTest_Constraint(), theATestPackage.getConstraint(), null, "constraint", null, 0, 1, ConstraintTest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getConstraintTest_Issue(), this.getIssue(), "issue", null, 1, 1, ConstraintTest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getConstraintTest_ActualValue(), ecorePackage.getEDouble(), "actualValue", null, 1, 1, ConstraintTest.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getConstraintTest_Failure(), ecorePackage.getEBoolean(), "failure", null, 1, 1, ConstraintTest.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
 
-        initEClass(runSetEClass, RunSet.class, "RunSet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-        initEAttribute(getRunSet_Result(), this.getResultType(), "result", null, 1, 1, RunSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getRunSet_Started(), ecorePackage.getEDate(), "started", null, 0, 1, RunSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEAttribute(getRunSet_Finished(), ecorePackage.getEDate(), "finished", null, 0, 1, RunSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-        initEReference(getRunSet_Runs(), this.getRun(), null, "runs", null, 0, -1, RunSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEClass(runSetEClass, RunSet.class, "RunSet", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getRunSet_Result(), this.getResultType(), "result", null, 1, 1, RunSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getRunSet_Started(), ecorePackage.getEDate(), "started", null, 0, 1, RunSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getRunSet_Finished(), ecorePackage.getEDate(), "finished", null, 0, 1, RunSet.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getRunSet_Runs(), this.getRun(), null, "runs", null, 0, -1, RunSet.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(resultTypeEEnum, ResultType.class, "ResultType");
-        addEEnumLiteral(resultTypeEEnum, ResultType.INCOMPLETE);
-        addEEnumLiteral(resultTypeEEnum, ResultType.SUCCESS);
-        addEEnumLiteral(resultTypeEEnum, ResultType.FAILURE);
-        addEEnumLiteral(resultTypeEEnum, ResultType.ERROR);
+		// Initialize enums and add enum literals
+		initEEnum(resultTypeEEnum, ResultType.class, "ResultType");
+		addEEnumLiteral(resultTypeEEnum, ResultType.INCOMPLETE);
+		addEEnumLiteral(resultTypeEEnum, ResultType.SUCCESS);
+		addEEnumLiteral(resultTypeEEnum, ResultType.FAILURE);
+		addEEnumLiteral(resultTypeEEnum, ResultType.ERROR);
 
-        initEEnum(issueEEnum, Issue.class, "Issue");
-        addEEnumLiteral(issueEEnum, Issue.BELOW_RANGE);
-        addEEnumLiteral(issueEEnum, Issue.ABOVE_RANGE);
-        addEEnumLiteral(issueEEnum, Issue.NONE);
-        addEEnumLiteral(issueEEnum, Issue.NOT_FOUND);
+		initEEnum(issueEEnum, Issue.class, "Issue");
+		addEEnumLiteral(issueEEnum, Issue.BELOW_RANGE);
+		addEEnumLiteral(issueEEnum, Issue.ABOVE_RANGE);
+		addEEnumLiteral(issueEEnum, Issue.NONE);
+		addEEnumLiteral(issueEEnum, Issue.NOT_FOUND);
 
-        // Create resource
-        createResource(eNS_URI);
-    }
+		// Create resource
+		createResource(eNS_URI);
+	}
 
 } //AresPackageImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/ConstraintTestImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/ConstraintTestImpl.java
index a7aed7b..5e96c8a 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/ConstraintTestImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/ConstraintTestImpl.java
@@ -34,163 +34,163 @@
  */
 public class ConstraintTestImpl extends EObjectImpl implements ConstraintTest {
     /**
-     * The cached value of the '{@link #getConstraint() <em>Constraint</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getConstraint() <em>Constraint</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getConstraint()
-     * @generated
-     * @ordered
-     */
+	 * @see #getConstraint()
+	 * @generated
+	 * @ordered
+	 */
     protected Constraint constraint;
 
     /**
-     * The default value of the '{@link #getIssue() <em>Issue</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getIssue() <em>Issue</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getIssue()
-     * @generated
-     * @ordered
-     */
+	 * @see #getIssue()
+	 * @generated
+	 * @ordered
+	 */
     protected static final Issue ISSUE_EDEFAULT = Issue.BELOW_RANGE;
 
     /**
-     * The cached value of the '{@link #getIssue() <em>Issue</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getIssue() <em>Issue</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getIssue()
-     * @generated
-     * @ordered
-     */
+	 * @see #getIssue()
+	 * @generated
+	 * @ordered
+	 */
     protected Issue issue = ISSUE_EDEFAULT;
 
     /**
-     * The default value of the '{@link #getActualValue() <em>Actual Value</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getActualValue() <em>Actual Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getActualValue()
-     * @generated
-     * @ordered
-     */
+	 * @see #getActualValue()
+	 * @generated
+	 * @ordered
+	 */
     protected static final double ACTUAL_VALUE_EDEFAULT = 0.0;
 
     /**
-     * The cached value of the '{@link #getActualValue() <em>Actual Value</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getActualValue() <em>Actual Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getActualValue()
-     * @generated
-     * @ordered
-     */
+	 * @see #getActualValue()
+	 * @generated
+	 * @ordered
+	 */
     protected double actualValue = ACTUAL_VALUE_EDEFAULT;
 
     /**
-     * The default value of the '{@link #isFailure() <em>Failure</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #isFailure() <em>Failure</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #isFailure()
-     * @generated
-     * @ordered
-     */
+	 * @see #isFailure()
+	 * @generated
+	 * @ordered
+	 */
     protected static final boolean FAILURE_EDEFAULT = false;
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected ConstraintTestImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EClass eStaticClass() {
-        return AresPackage.Literals.CONSTRAINT_TEST;
-    }
+		return AresPackage.Literals.CONSTRAINT_TEST;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Constraint getConstraint() {
-        if (constraint != null && constraint.eIsProxy()) {
-            InternalEObject oldConstraint = (InternalEObject)constraint;
-            constraint = (Constraint)eResolveProxy(oldConstraint);
-            if (constraint != oldConstraint) {
-                if (eNotificationRequired())
-                    eNotify(new ENotificationImpl(this, Notification.RESOLVE, AresPackage.CONSTRAINT_TEST__CONSTRAINT, oldConstraint, constraint));
-            }
-        }
-        return constraint;
-    }
+		if (constraint != null && constraint.eIsProxy()) {
+			InternalEObject oldConstraint = (InternalEObject)constraint;
+			constraint = (Constraint)eResolveProxy(oldConstraint);
+			if (constraint != oldConstraint) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AresPackage.CONSTRAINT_TEST__CONSTRAINT, oldConstraint, constraint));
+			}
+		}
+		return constraint;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Constraint basicGetConstraint() {
-        return constraint;
-    }
+		return constraint;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setConstraint(Constraint newConstraint) {
-        Constraint oldConstraint = constraint;
-        constraint = newConstraint;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.CONSTRAINT_TEST__CONSTRAINT, oldConstraint, constraint));
-    }
+		Constraint oldConstraint = constraint;
+		constraint = newConstraint;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.CONSTRAINT_TEST__CONSTRAINT, oldConstraint, constraint));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Issue getIssue() {
-        return issue;
-    }
+		return issue;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setIssue(Issue newIssue) {
-        Issue oldIssue = issue;
-        issue = newIssue == null ? ISSUE_EDEFAULT : newIssue;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.CONSTRAINT_TEST__ISSUE, oldIssue, issue));
-    }
+		Issue oldIssue = issue;
+		issue = newIssue == null ? ISSUE_EDEFAULT : newIssue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.CONSTRAINT_TEST__ISSUE, oldIssue, issue));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public double getActualValue() {
-        return actualValue;
-    }
+		return actualValue;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setActualValue(double newActualValue) {
-        double oldActualValue = actualValue;
-        actualValue = newActualValue;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE, oldActualValue, actualValue));
-    }
+		double oldActualValue = actualValue;
+		actualValue = newActualValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE, oldActualValue, actualValue));
+	}
 
     /**
      * <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -202,104 +202,104 @@
     }
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public Object eGet(int featureID, boolean resolve, boolean coreType) {
-        switch (featureID) {
-            case AresPackage.CONSTRAINT_TEST__CONSTRAINT:
-                if (resolve) return getConstraint();
-                return basicGetConstraint();
-            case AresPackage.CONSTRAINT_TEST__ISSUE:
-                return getIssue();
-            case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
-                return getActualValue();
-            case AresPackage.CONSTRAINT_TEST__FAILURE:
-                return isFailure();
-        }
-        return super.eGet(featureID, resolve, coreType);
-    }
+		switch (featureID) {
+			case AresPackage.CONSTRAINT_TEST__CONSTRAINT:
+				if (resolve) return getConstraint();
+				return basicGetConstraint();
+			case AresPackage.CONSTRAINT_TEST__ISSUE:
+				return getIssue();
+			case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
+				return getActualValue();
+			case AresPackage.CONSTRAINT_TEST__FAILURE:
+				return isFailure();
+		}
+		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 AresPackage.CONSTRAINT_TEST__CONSTRAINT:
-                setConstraint((Constraint)newValue);
-                return;
-            case AresPackage.CONSTRAINT_TEST__ISSUE:
-                setIssue((Issue)newValue);
-                return;
-            case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
-                setActualValue((Double)newValue);
-                return;
-        }
-        super.eSet(featureID, newValue);
-    }
+		switch (featureID) {
+			case AresPackage.CONSTRAINT_TEST__CONSTRAINT:
+				setConstraint((Constraint)newValue);
+				return;
+			case AresPackage.CONSTRAINT_TEST__ISSUE:
+				setIssue((Issue)newValue);
+				return;
+			case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
+				setActualValue((Double)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 AresPackage.CONSTRAINT_TEST__CONSTRAINT:
-                setConstraint((Constraint)null);
-                return;
-            case AresPackage.CONSTRAINT_TEST__ISSUE:
-                setIssue(ISSUE_EDEFAULT);
-                return;
-            case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
-                setActualValue(ACTUAL_VALUE_EDEFAULT);
-                return;
-        }
-        super.eUnset(featureID);
-    }
+		switch (featureID) {
+			case AresPackage.CONSTRAINT_TEST__CONSTRAINT:
+				setConstraint((Constraint)null);
+				return;
+			case AresPackage.CONSTRAINT_TEST__ISSUE:
+				setIssue(ISSUE_EDEFAULT);
+				return;
+			case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
+				setActualValue(ACTUAL_VALUE_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 AresPackage.CONSTRAINT_TEST__CONSTRAINT:
-                return constraint != null;
-            case AresPackage.CONSTRAINT_TEST__ISSUE:
-                return issue != ISSUE_EDEFAULT;
-            case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
-                return actualValue != ACTUAL_VALUE_EDEFAULT;
-            case AresPackage.CONSTRAINT_TEST__FAILURE:
-                return isFailure() != FAILURE_EDEFAULT;
-        }
-        return super.eIsSet(featureID);
-    }
+		switch (featureID) {
+			case AresPackage.CONSTRAINT_TEST__CONSTRAINT:
+				return constraint != null;
+			case AresPackage.CONSTRAINT_TEST__ISSUE:
+				return issue != ISSUE_EDEFAULT;
+			case AresPackage.CONSTRAINT_TEST__ACTUAL_VALUE:
+				return actualValue != ACTUAL_VALUE_EDEFAULT;
+			case AresPackage.CONSTRAINT_TEST__FAILURE:
+				return isFailure() != FAILURE_EDEFAULT;
+		}
+		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(" (issue: ");
-        result.append(issue);
-        result.append(", actualValue: ");
-        result.append(actualValue);
-        result.append(')');
-        return result.toString();
-    }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (issue: ");
+		result.append(issue);
+		result.append(", actualValue: ");
+		result.append(actualValue);
+		result.append(')');
+		return result.toString();
+	}
 
 } //ConstraintTestImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/RunImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/RunImpl.java
index 8e66923..1e9c3c9 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/RunImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/RunImpl.java
@@ -9,6 +9,7 @@
 import java.util.Collection;
 import java.util.Date;
 
+import org.eclipse.amp.amf.parameters.aPar.SingleParameter;
 import org.eclipse.amp.amf.parameters.aPar.Parameter;
 import org.eclipse.amp.amf.testing.aTest.Constraint;
 import org.eclipse.amp.amf.testing.aTest.Model;
@@ -50,538 +51,538 @@
  */
 public class RunImpl extends EObjectImpl 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 cached value of the '{@link #getTest() <em>Test</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getTest() <em>Test</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getTest()
-     * @generated
-     * @ordered
-     */
+	 * @see #getTest()
+	 * @generated
+	 * @ordered
+	 */
     protected Model test;
 
     /**
-     * The cached value of the '{@link #getParameterization() <em>Parameterization</em>}' reference.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getParameterization() <em>Parameterization</em>}' reference.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getParameterization()
-     * @generated
-     * @ordered
-     */
+	 * @see #getParameterization()
+	 * @generated
+	 * @ordered
+	 */
     protected org.eclipse.amp.amf.parameters.aPar.Model parameterization;
 
     /**
-     * The default value of the '{@link #getResult() <em>Result</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getResult() <em>Result</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getResult()
-     * @generated
-     * @ordered
-     */
+	 * @see #getResult()
+	 * @generated
+	 * @ordered
+	 */
     protected static final ResultType RESULT_EDEFAULT = ResultType.INCOMPLETE;
 
     /**
-     * The cached value of the '{@link #getResult() <em>Result</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getResult() <em>Result</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getResult()
-     * @generated
-     * @ordered
-     */
+	 * @see #getResult()
+	 * @generated
+	 * @ordered
+	 */
     protected ResultType result = RESULT_EDEFAULT;
 
     /**
-     * The cached value of the '{@link #getParameters() <em>Parameters</em>}' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getParameters() <em>Parameters</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getParameters()
-     * @generated
-     * @ordered
-     */
-    protected EList<Parameter> parameters;
+	 * @see #getParameters()
+	 * @generated
+	 * @ordered
+	 */
+    protected EList<SingleParameter> parameters;
 
     /**
-     * The cached value of the '{@link #getConstraints() <em>Constraints</em>}' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getConstraints() <em>Constraints</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getConstraints()
-     * @generated
-     * @ordered
-     */
+	 * @see #getConstraints()
+	 * @generated
+	 * @ordered
+	 */
     protected EList<Constraint> constraints;
 
     /**
-     * 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 #getResults() <em>Results</em>}' containment reference list.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getResults() <em>Results</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getResults()
-     * @generated
-     * @ordered
-     */
+	 * @see #getResults()
+	 * @generated
+	 * @ordered
+	 */
     protected EList<ConstraintTest> results;
 
     /**
-     * <!-- 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 AresPackage.Literals.RUN;
-    }
+		return AresPackage.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, AresPackage.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, AresPackage.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, AresPackage.RUN__MODEL, oldModel, model));
-    }
+		SContext oldModel = model;
+		model = newModel;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN__MODEL, oldModel, model));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Model getTest() {
-        if (test != null && test.eIsProxy()) {
-            InternalEObject oldTest = (InternalEObject)test;
-            test = (Model)eResolveProxy(oldTest);
-            if (test != oldTest) {
-                if (eNotificationRequired())
-                    eNotify(new ENotificationImpl(this, Notification.RESOLVE, AresPackage.RUN__TEST, oldTest, test));
-            }
-        }
-        return test;
-    }
+		if (test != null && test.eIsProxy()) {
+			InternalEObject oldTest = (InternalEObject)test;
+			test = (Model)eResolveProxy(oldTest);
+			if (test != oldTest) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AresPackage.RUN__TEST, oldTest, test));
+			}
+		}
+		return test;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public Model basicGetTest() {
-        return test;
-    }
+		return test;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setTest(Model newTest) {
-        Model oldTest = test;
-        test = newTest;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN__TEST, oldTest, test));
-    }
+		Model oldTest = test;
+		test = newTest;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN__TEST, oldTest, test));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public org.eclipse.amp.amf.parameters.aPar.Model getParameterization() {
-        if (parameterization != null && parameterization.eIsProxy()) {
-            InternalEObject oldParameterization = (InternalEObject)parameterization;
-            parameterization = (org.eclipse.amp.amf.parameters.aPar.Model)eResolveProxy(oldParameterization);
-            if (parameterization != oldParameterization) {
-                if (eNotificationRequired())
-                    eNotify(new ENotificationImpl(this, Notification.RESOLVE, AresPackage.RUN__PARAMETERIZATION, oldParameterization, parameterization));
-            }
-        }
-        return parameterization;
-    }
+		if (parameterization != null && parameterization.eIsProxy()) {
+			InternalEObject oldParameterization = (InternalEObject)parameterization;
+			parameterization = (org.eclipse.amp.amf.parameters.aPar.Model)eResolveProxy(oldParameterization);
+			if (parameterization != oldParameterization) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AresPackage.RUN__PARAMETERIZATION, oldParameterization, parameterization));
+			}
+		}
+		return parameterization;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public org.eclipse.amp.amf.parameters.aPar.Model basicGetParameterization() {
-        return parameterization;
-    }
+		return parameterization;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setParameterization(org.eclipse.amp.amf.parameters.aPar.Model newParameterization) {
-        org.eclipse.amp.amf.parameters.aPar.Model oldParameterization = parameterization;
-        parameterization = newParameterization;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN__PARAMETERIZATION, oldParameterization, parameterization));
-    }
+		org.eclipse.amp.amf.parameters.aPar.Model oldParameterization = parameterization;
+		parameterization = newParameterization;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN__PARAMETERIZATION, oldParameterization, parameterization));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ResultType getResult() {
-        return result;
-    }
+		return result;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setResult(ResultType newResult) {
-        ResultType oldResult = result;
-        result = newResult == null ? RESULT_EDEFAULT : newResult;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN__RESULT, oldResult, result));
-    }
+		ResultType oldResult = result;
+		result = newResult == null ? RESULT_EDEFAULT : newResult;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN__RESULT, oldResult, result));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
-    public EList<Parameter> getParameters() {
-        if (parameters == null) {
-            parameters = new EObjectContainmentEList<Parameter>(Parameter.class, this, AresPackage.RUN__PARAMETERS);
-        }
-        return parameters;
-    }
+	 * @generated
+	 */
+    public EList<SingleParameter> getParameters() {
+		if (parameters == null) {
+			parameters = new EObjectContainmentEList<SingleParameter>(SingleParameter.class, this, AresPackage.RUN__PARAMETERS);
+		}
+		return parameters;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EList<Constraint> getConstraints() {
-        if (constraints == null) {
-            constraints = new EObjectContainmentEList<Constraint>(Constraint.class, this, AresPackage.RUN__CONSTRAINTS);
-        }
-        return constraints;
-    }
+		if (constraints == null) {
+			constraints = new EObjectContainmentEList<Constraint>(Constraint.class, this, AresPackage.RUN__CONSTRAINTS);
+		}
+		return constraints;
+	}
 
     /**
-     * <!-- 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, AresPackage.RUN__STARTED, oldStarted, started));
-    }
+		Date oldStarted = started;
+		started = newStarted;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.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, AresPackage.RUN__FINISHED, oldFinished, finished));
-    }
+		Date oldFinished = finished;
+		finished = newFinished;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN__FINISHED, oldFinished, finished));
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public EList<ConstraintTest> getResults() {
-        if (results == null) {
-            results = new EObjectContainmentEList<ConstraintTest>(ConstraintTest.class, this, AresPackage.RUN__RESULTS);
-        }
-        return results;
-    }
+		if (results == null) {
+			results = new EObjectContainmentEList<ConstraintTest>(ConstraintTest.class, this, AresPackage.RUN__RESULTS);
+		}
+		return results;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-        switch (featureID) {
-            case AresPackage.RUN__PARAMETERS:
-                return ((InternalEList<?>)getParameters()).basicRemove(otherEnd, msgs);
-            case AresPackage.RUN__CONSTRAINTS:
-                return ((InternalEList<?>)getConstraints()).basicRemove(otherEnd, msgs);
-            case AresPackage.RUN__RESULTS:
-                return ((InternalEList<?>)getResults()).basicRemove(otherEnd, msgs);
-        }
-        return super.eInverseRemove(otherEnd, featureID, msgs);
-    }
+		switch (featureID) {
+			case AresPackage.RUN__PARAMETERS:
+				return ((InternalEList<?>)getParameters()).basicRemove(otherEnd, msgs);
+			case AresPackage.RUN__CONSTRAINTS:
+				return ((InternalEList<?>)getConstraints()).basicRemove(otherEnd, msgs);
+			case AresPackage.RUN__RESULTS:
+				return ((InternalEList<?>)getResults()).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 AresPackage.RUN__MODEL:
-                if (resolve) return getModel();
-                return basicGetModel();
-            case AresPackage.RUN__TEST:
-                if (resolve) return getTest();
-                return basicGetTest();
-            case AresPackage.RUN__PARAMETERIZATION:
-                if (resolve) return getParameterization();
-                return basicGetParameterization();
-            case AresPackage.RUN__RESULT:
-                return getResult();
-            case AresPackage.RUN__PARAMETERS:
-                return getParameters();
-            case AresPackage.RUN__CONSTRAINTS:
-                return getConstraints();
-            case AresPackage.RUN__STARTED:
-                return getStarted();
-            case AresPackage.RUN__FINISHED:
-                return getFinished();
-            case AresPackage.RUN__RESULTS:
-                return getResults();
-        }
-        return super.eGet(featureID, resolve, coreType);
-    }
+		switch (featureID) {
+			case AresPackage.RUN__MODEL:
+				if (resolve) return getModel();
+				return basicGetModel();
+			case AresPackage.RUN__TEST:
+				if (resolve) return getTest();
+				return basicGetTest();
+			case AresPackage.RUN__PARAMETERIZATION:
+				if (resolve) return getParameterization();
+				return basicGetParameterization();
+			case AresPackage.RUN__RESULT:
+				return getResult();
+			case AresPackage.RUN__PARAMETERS:
+				return getParameters();
+			case AresPackage.RUN__CONSTRAINTS:
+				return getConstraints();
+			case AresPackage.RUN__STARTED:
+				return getStarted();
+			case AresPackage.RUN__FINISHED:
+				return getFinished();
+			case AresPackage.RUN__RESULTS:
+				return getResults();
+		}
+		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 AresPackage.RUN__MODEL:
-                setModel((SContext)newValue);
-                return;
-            case AresPackage.RUN__TEST:
-                setTest((Model)newValue);
-                return;
-            case AresPackage.RUN__PARAMETERIZATION:
-                setParameterization((org.eclipse.amp.amf.parameters.aPar.Model)newValue);
-                return;
-            case AresPackage.RUN__RESULT:
-                setResult((ResultType)newValue);
-                return;
-            case AresPackage.RUN__PARAMETERS:
-                getParameters().clear();
-                getParameters().addAll((Collection<? extends Parameter>)newValue);
-                return;
-            case AresPackage.RUN__CONSTRAINTS:
-                getConstraints().clear();
-                getConstraints().addAll((Collection<? extends Constraint>)newValue);
-                return;
-            case AresPackage.RUN__STARTED:
-                setStarted((Date)newValue);
-                return;
-            case AresPackage.RUN__FINISHED:
-                setFinished((Date)newValue);
-                return;
-            case AresPackage.RUN__RESULTS:
-                getResults().clear();
-                getResults().addAll((Collection<? extends ConstraintTest>)newValue);
-                return;
-        }
-        super.eSet(featureID, newValue);
-    }
+		switch (featureID) {
+			case AresPackage.RUN__MODEL:
+				setModel((SContext)newValue);
+				return;
+			case AresPackage.RUN__TEST:
+				setTest((Model)newValue);
+				return;
+			case AresPackage.RUN__PARAMETERIZATION:
+				setParameterization((org.eclipse.amp.amf.parameters.aPar.Model)newValue);
+				return;
+			case AresPackage.RUN__RESULT:
+				setResult((ResultType)newValue);
+				return;
+			case AresPackage.RUN__PARAMETERS:
+				getParameters().clear();
+				getParameters().addAll((Collection<? extends SingleParameter>)newValue);
+				return;
+			case AresPackage.RUN__CONSTRAINTS:
+				getConstraints().clear();
+				getConstraints().addAll((Collection<? extends Constraint>)newValue);
+				return;
+			case AresPackage.RUN__STARTED:
+				setStarted((Date)newValue);
+				return;
+			case AresPackage.RUN__FINISHED:
+				setFinished((Date)newValue);
+				return;
+			case AresPackage.RUN__RESULTS:
+				getResults().clear();
+				getResults().addAll((Collection<? extends ConstraintTest>)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 AresPackage.RUN__MODEL:
-                setModel((SContext)null);
-                return;
-            case AresPackage.RUN__TEST:
-                setTest((Model)null);
-                return;
-            case AresPackage.RUN__PARAMETERIZATION:
-                setParameterization((org.eclipse.amp.amf.parameters.aPar.Model)null);
-                return;
-            case AresPackage.RUN__RESULT:
-                setResult(RESULT_EDEFAULT);
-                return;
-            case AresPackage.RUN__PARAMETERS:
-                getParameters().clear();
-                return;
-            case AresPackage.RUN__CONSTRAINTS:
-                getConstraints().clear();
-                return;
-            case AresPackage.RUN__STARTED:
-                setStarted(STARTED_EDEFAULT);
-                return;
-            case AresPackage.RUN__FINISHED:
-                setFinished(FINISHED_EDEFAULT);
-                return;
-            case AresPackage.RUN__RESULTS:
-                getResults().clear();
-                return;
-        }
-        super.eUnset(featureID);
-    }
+		switch (featureID) {
+			case AresPackage.RUN__MODEL:
+				setModel((SContext)null);
+				return;
+			case AresPackage.RUN__TEST:
+				setTest((Model)null);
+				return;
+			case AresPackage.RUN__PARAMETERIZATION:
+				setParameterization((org.eclipse.amp.amf.parameters.aPar.Model)null);
+				return;
+			case AresPackage.RUN__RESULT:
+				setResult(RESULT_EDEFAULT);
+				return;
+			case AresPackage.RUN__PARAMETERS:
+				getParameters().clear();
+				return;
+			case AresPackage.RUN__CONSTRAINTS:
+				getConstraints().clear();
+				return;
+			case AresPackage.RUN__STARTED:
+				setStarted(STARTED_EDEFAULT);
+				return;
+			case AresPackage.RUN__FINISHED:
+				setFinished(FINISHED_EDEFAULT);
+				return;
+			case AresPackage.RUN__RESULTS:
+				getResults().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 AresPackage.RUN__MODEL:
-                return model != null;
-            case AresPackage.RUN__TEST:
-                return test != null;
-            case AresPackage.RUN__PARAMETERIZATION:
-                return parameterization != null;
-            case AresPackage.RUN__RESULT:
-                return result != RESULT_EDEFAULT;
-            case AresPackage.RUN__PARAMETERS:
-                return parameters != null && !parameters.isEmpty();
-            case AresPackage.RUN__CONSTRAINTS:
-                return constraints != null && !constraints.isEmpty();
-            case AresPackage.RUN__STARTED:
-                return STARTED_EDEFAULT == null ? started != null : !STARTED_EDEFAULT.equals(started);
-            case AresPackage.RUN__FINISHED:
-                return FINISHED_EDEFAULT == null ? finished != null : !FINISHED_EDEFAULT.equals(finished);
-            case AresPackage.RUN__RESULTS:
-                return results != null && !results.isEmpty();
-        }
-        return super.eIsSet(featureID);
-    }
+		switch (featureID) {
+			case AresPackage.RUN__MODEL:
+				return model != null;
+			case AresPackage.RUN__TEST:
+				return test != null;
+			case AresPackage.RUN__PARAMETERIZATION:
+				return parameterization != null;
+			case AresPackage.RUN__RESULT:
+				return result != RESULT_EDEFAULT;
+			case AresPackage.RUN__PARAMETERS:
+				return parameters != null && !parameters.isEmpty();
+			case AresPackage.RUN__CONSTRAINTS:
+				return constraints != null && !constraints.isEmpty();
+			case AresPackage.RUN__STARTED:
+				return STARTED_EDEFAULT == null ? started != null : !STARTED_EDEFAULT.equals(started);
+			case AresPackage.RUN__FINISHED:
+				return FINISHED_EDEFAULT == null ? finished != null : !FINISHED_EDEFAULT.equals(finished);
+			case AresPackage.RUN__RESULTS:
+				return results != null && !results.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(" (result: ");
-        result.append(result);
-        result.append(", started: ");
-        result.append(started);
-        result.append(", finished: ");
-        result.append(finished);
-        result.append(')');
-        return result.toString();
-    }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (result: ");
+		result.append(result);
+		result.append(", started: ");
+		result.append(started);
+		result.append(", finished: ");
+		result.append(finished);
+		result.append(')');
+		return result.toString();
+	}
 
 } //RunImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/RunSetImpl.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/RunSetImpl.java
index 5664898..f702a37 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/RunSetImpl.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/impl/RunSetImpl.java
@@ -41,291 +41,291 @@
  */
 public class RunSetImpl extends EObjectImpl implements RunSet {
     /**
-     * The default value of the '{@link #getResult() <em>Result</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The default value of the '{@link #getResult() <em>Result</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getResult()
-     * @generated
-     * @ordered
-     */
+	 * @see #getResult()
+	 * @generated
+	 * @ordered
+	 */
     protected static final ResultType RESULT_EDEFAULT = ResultType.INCOMPLETE;
 
     /**
-     * The cached value of the '{@link #getResult() <em>Result</em>}' attribute.
-     * <!-- begin-user-doc -->
+	 * The cached value of the '{@link #getResult() <em>Result</em>}' attribute.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @see #getResult()
-     * @generated
-     * @ordered
-     */
+	 * @see #getResult()
+	 * @generated
+	 * @ordered
+	 */
     protected ResultType result = RESULT_EDEFAULT;
 
     /**
-     * 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 #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 RunSetImpl() {
-        super();
-    }
+		super();
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     @Override
     protected EClass eStaticClass() {
-        return AresPackage.Literals.RUN_SET;
-    }
+		return AresPackage.Literals.RUN_SET;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public ResultType getResult() {
-        return result;
-    }
+		return result;
+	}
 
     /**
-     * <!-- begin-user-doc -->
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     public void setResult(ResultType newResult) {
-        ResultType oldResult = result;
-        result = newResult == null ? RESULT_EDEFAULT : newResult;
-        if (eNotificationRequired())
-            eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN_SET__RESULT, oldResult, result));
-    }
+		ResultType oldResult = result;
+		result = newResult == null ? RESULT_EDEFAULT : newResult;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN_SET__RESULT, oldResult, result));
+	}
 
     /**
-     * <!-- 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, AresPackage.RUN_SET__STARTED, oldStarted, started));
-    }
+		Date oldStarted = started;
+		started = newStarted;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN_SET__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, AresPackage.RUN_SET__FINISHED, oldFinished, finished));
-    }
+		Date oldFinished = finished;
+		finished = newFinished;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AresPackage.RUN_SET__FINISHED, oldFinished, finished));
+	}
 
     /**
-     * <!-- 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, AresPackage.RUN_SET__RUNS);
-        }
-        return runs;
-    }
+		if (runs == null) {
+			runs = new EObjectContainmentEList<Run>(Run.class, this, AresPackage.RUN_SET__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 AresPackage.RUN_SET__RUNS:
-                return ((InternalEList<?>)getRuns()).basicRemove(otherEnd, msgs);
-        }
-        return super.eInverseRemove(otherEnd, featureID, msgs);
-    }
+		switch (featureID) {
+			case AresPackage.RUN_SET__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 AresPackage.RUN_SET__RESULT:
-                return getResult();
-            case AresPackage.RUN_SET__STARTED:
-                return getStarted();
-            case AresPackage.RUN_SET__FINISHED:
-                return getFinished();
-            case AresPackage.RUN_SET__RUNS:
-                return getRuns();
-        }
-        return super.eGet(featureID, resolve, coreType);
-    }
+		switch (featureID) {
+			case AresPackage.RUN_SET__RESULT:
+				return getResult();
+			case AresPackage.RUN_SET__STARTED:
+				return getStarted();
+			case AresPackage.RUN_SET__FINISHED:
+				return getFinished();
+			case AresPackage.RUN_SET__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 AresPackage.RUN_SET__RESULT:
-                setResult((ResultType)newValue);
-                return;
-            case AresPackage.RUN_SET__STARTED:
-                setStarted((Date)newValue);
-                return;
-            case AresPackage.RUN_SET__FINISHED:
-                setFinished((Date)newValue);
-                return;
-            case AresPackage.RUN_SET__RUNS:
-                getRuns().clear();
-                getRuns().addAll((Collection<? extends Run>)newValue);
-                return;
-        }
-        super.eSet(featureID, newValue);
-    }
+		switch (featureID) {
+			case AresPackage.RUN_SET__RESULT:
+				setResult((ResultType)newValue);
+				return;
+			case AresPackage.RUN_SET__STARTED:
+				setStarted((Date)newValue);
+				return;
+			case AresPackage.RUN_SET__FINISHED:
+				setFinished((Date)newValue);
+				return;
+			case AresPackage.RUN_SET__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 AresPackage.RUN_SET__RESULT:
-                setResult(RESULT_EDEFAULT);
-                return;
-            case AresPackage.RUN_SET__STARTED:
-                setStarted(STARTED_EDEFAULT);
-                return;
-            case AresPackage.RUN_SET__FINISHED:
-                setFinished(FINISHED_EDEFAULT);
-                return;
-            case AresPackage.RUN_SET__RUNS:
-                getRuns().clear();
-                return;
-        }
-        super.eUnset(featureID);
-    }
+		switch (featureID) {
+			case AresPackage.RUN_SET__RESULT:
+				setResult(RESULT_EDEFAULT);
+				return;
+			case AresPackage.RUN_SET__STARTED:
+				setStarted(STARTED_EDEFAULT);
+				return;
+			case AresPackage.RUN_SET__FINISHED:
+				setFinished(FINISHED_EDEFAULT);
+				return;
+			case AresPackage.RUN_SET__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 AresPackage.RUN_SET__RESULT:
-                return result != RESULT_EDEFAULT;
-            case AresPackage.RUN_SET__STARTED:
-                return STARTED_EDEFAULT == null ? started != null : !STARTED_EDEFAULT.equals(started);
-            case AresPackage.RUN_SET__FINISHED:
-                return FINISHED_EDEFAULT == null ? finished != null : !FINISHED_EDEFAULT.equals(finished);
-            case AresPackage.RUN_SET__RUNS:
-                return runs != null && !runs.isEmpty();
-        }
-        return super.eIsSet(featureID);
-    }
+		switch (featureID) {
+			case AresPackage.RUN_SET__RESULT:
+				return result != RESULT_EDEFAULT;
+			case AresPackage.RUN_SET__STARTED:
+				return STARTED_EDEFAULT == null ? started != null : !STARTED_EDEFAULT.equals(started);
+			case AresPackage.RUN_SET__FINISHED:
+				return FINISHED_EDEFAULT == null ? finished != null : !FINISHED_EDEFAULT.equals(finished);
+			case AresPackage.RUN_SET__RUNS:
+				return runs != null && !runs.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(" (result: ");
-        result.append(result);
-        result.append(", started: ");
-        result.append(started);
-        result.append(", finished: ");
-        result.append(finished);
-        result.append(')');
-        return result.toString();
-    }
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (result: ");
+		result.append(result);
+		result.append(", started: ");
+		result.append(started);
+		result.append(", finished: ");
+		result.append(finished);
+		result.append(')');
+		return result.toString();
+	}
 
 } //RunSetImpl
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/util/AresAdapterFactory.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/util/AresAdapterFactory.java
index dfc6721..84d98e3 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/util/AresAdapterFactory.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/util/AresAdapterFactory.java
@@ -26,136 +26,136 @@
  */
 public class AresAdapterFactory extends AdapterFactoryImpl {
     /**
-     * The cached model package.
-     * <!-- begin-user-doc -->
+	 * The cached model package.
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected static AresPackage 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 AresAdapterFactory() {
-        if (modelPackage == null) {
-            modelPackage = AresPackage.eINSTANCE;
-        }
-    }
+		if (modelPackage == null) {
+			modelPackage = AresPackage.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 AresSwitch<Adapter> modelSwitch =
         new AresSwitch<Adapter>() {
-            @Override
-            public Adapter caseRun(Run object) {
-                return createRunAdapter();
-            }
-            @Override
-            public Adapter caseConstraintTest(ConstraintTest object) {
-                return createConstraintTestAdapter();
-            }
-            @Override
-            public Adapter caseRunSet(RunSet object) {
-                return createRunSetAdapter();
-            }
-            @Override
-            public Adapter defaultCase(EObject object) {
-                return createEObjectAdapter();
-            }
-        };
+			@Override
+			public Adapter caseRun(Run object) {
+				return createRunAdapter();
+			}
+			@Override
+			public Adapter caseConstraintTest(ConstraintTest object) {
+				return createConstraintTestAdapter();
+			}
+			@Override
+			public Adapter caseRunSet(RunSet object) {
+				return createRunSetAdapter();
+			}
+			@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.testing.ares.Run <em>Run</em>}'.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.testing.ares.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.testing.ares.Run
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.testing.ares.Run
+	 * @generated
+	 */
     public Adapter createRunAdapter() {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest <em>Constraint Test</em>}'.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.testing.ares.ConstraintTest <em>Constraint Test</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.testing.ares.ConstraintTest
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.testing.ares.ConstraintTest
+	 * @generated
+	 */
     public Adapter createConstraintTestAdapter() {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.testing.ares.RunSet <em>Run Set</em>}'.
-     * <!-- begin-user-doc -->
+	 * Creates a new adapter for an object of class '{@link org.eclipse.amp.amf.testing.ares.RunSet <em>Run 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.testing.ares.RunSet
-     * @generated
-     */
+	 * @return the new adapter.
+	 * @see org.eclipse.amp.amf.testing.ares.RunSet
+	 * @generated
+	 */
     public Adapter createRunSetAdapter() {
-        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;
+	}
 
 } //AresAdapterFactory
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/util/AresSwitch.java b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/util/AresSwitch.java
index 54a81e8..e1e00c6 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/util/AresSwitch.java
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.testing/src/org/eclipse/amp/amf/testing/ares/util/AresSwitch.java
@@ -31,145 +31,145 @@
  */
 public class AresSwitch<T> {
     /**
-     * The cached model package
-     * <!-- begin-user-doc -->
+	 * The cached model package
+	 * <!-- begin-user-doc -->
      * <!-- end-user-doc -->
-     * @generated
-     */
+	 * @generated
+	 */
     protected static AresPackage 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 AresSwitch() {
-        if (modelPackage == null) {
-            modelPackage = AresPackage.eINSTANCE;
-        }
-    }
+		if (modelPackage == null) {
+			modelPackage = AresPackage.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 AresPackage.RUN: {
-                Run run = (Run)theEObject;
-                T result = caseRun(run);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case AresPackage.CONSTRAINT_TEST: {
-                ConstraintTest constraintTest = (ConstraintTest)theEObject;
-                T result = caseConstraintTest(constraintTest);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            case AresPackage.RUN_SET: {
-                RunSet runSet = (RunSet)theEObject;
-                T result = caseRunSet(runSet);
-                if (result == null) result = defaultCase(theEObject);
-                return result;
-            }
-            default: return defaultCase(theEObject);
-        }
-    }
+		switch (classifierID) {
+			case AresPackage.RUN: {
+				Run run = (Run)theEObject;
+				T result = caseRun(run);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case AresPackage.CONSTRAINT_TEST: {
+				ConstraintTest constraintTest = (ConstraintTest)theEObject;
+				T result = caseConstraintTest(constraintTest);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case AresPackage.RUN_SET: {
+				RunSet runSet = (RunSet)theEObject;
+				T result = caseRunSet(runSet);
+				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>Constraint Test</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Constraint Test</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>Constraint Test</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>Constraint Test</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
     public T caseConstraintTest(ConstraintTest object) {
-        return null;
-    }
+		return null;
+	}
 
     /**
-     * Returns the result of interpreting the object as an instance of '<em>Run Set</em>'.
-     * <!-- begin-user-doc -->
+	 * Returns the result of interpreting the object as an instance of '<em>Run 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>Run 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>Run Set</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
     public T caseRunSet(RunSet 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;
+	}
 
 } //AresSwitch
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/EclipseEMFOutputRunner.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/EclipseEMFOutputRunner.java
new file mode 100644
index 0000000..a1d169f
--- /dev/null
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/EclipseEMFOutputRunner.java
@@ -0,0 +1,65 @@
+package org.eclipse.amp.escape.amf.ide;
+
+import java.util.ArrayList;
+
+import org.eclipse.amp.amf.parameters.AParInterpreter;
+import org.eclipse.amp.escape.ide.EclipseEscapeRunner;
+import org.eclipse.amp.escape.view.EMFDataOutputView;
+import org.eclipse.core.resources.IResource;
+import org.metaabm.SContext;
+
+final class EclipseEMFOutputRunner extends EclipseEscapeRunner {
+	/**
+	 * 
+	 */
+	private final SContext model;
+
+	private final IResource resource;
+
+	private final AParInterpreter aParInterpreter;
+
+	public EclipseEMFOutputRunner(SContext model, IResource resource,
+			AParInterpreter aParInterpreter) {
+		super();
+		assert(resource != null);
+		assert(model != null);
+		this.model = model;
+		this.resource = resource;
+		this.aParInterpreter = aParInterpreter;
+	}
+
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * 
+	 * @see org.ascape.runtime.Runner#run()
+	 */
+	public synchronized void run() {
+		boolean found = false;
+		ArrayList scapeListeners = new ArrayList(getScape().getScapeListeners());
+		for (Object l : scapeListeners) {
+			if (l instanceof EMFDataOutputView) {
+				found = true;
+				break;
+			}
+		}
+		if (!found) {
+			getScape().addView(new EMFDataOutputView(resource, model));
+		}
+		super.run();
+	}
+
+	/**
+	 * @param args
+	 * @param block
+	 * @see org.ascape.runtime.Runner#openImplementation(java.lang.String[],
+	 *      boolean)
+	 */
+	public void openImplementation(String[] args, boolean block) {
+		if (aParInterpreter != null) {
+			aParInterpreter.assignValues(new Object[] { getRootScape(), this },
+					null);
+		}
+		super.openImplementation(args, block);
+	}
+}
\ No newline at end of file
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/ExecuteAMFEMFOutputHandler.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/ExecuteAMFEMFOutputHandler.java
index 46f90ce..7b60dfb 100644
--- a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/ExecuteAMFEMFOutputHandler.java
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/ExecuteAMFEMFOutputHandler.java
@@ -39,24 +39,7 @@
      */
     protected EclipseEscapeRunner createRunner() {
         Runner.setDisplayGraphics(!isHeadless());
-        // if (modelResource.getFileExtension().equals("apar")) {
-        // // a bit awkward..
-        // setInterpreter((AParInterpreter) AParFactory.create(null).getInterpreter(modelResource));
-        // eclipseRunner.open(project, getInterpreter().getRootContext().getImplementation().getQualifiedName(),
-        // getInterpreter().getRunName(), getInterpreter().getArgs());
-        // }
-        EclipseEscapeRunner runner = new EclipseEscapeRunner() {
-            private static final long serialVersionUID = 1L;
-
-            /**
-             * 
-             * @see org.ascape.runtime.Runner#run()
-             */
-            public synchronized void run() {
-                getScape().addView(new EMFDataOutputView(modelResource, ExecuteAMFEMFOutputHandler.this.getModel()));
-                super.run();
-            }
-        };
+        EclipseEscapeRunner runner = new EclipseEMFOutputRunner(this.getModel(), modelResource, null);
         return runner;
     }
 }
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/ExecuteParamEMFOutputHandler.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/ExecuteParamEMFOutputHandler.java
index 9966248..2c1e8e1 100644
--- a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/ExecuteParamEMFOutputHandler.java
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/amf/ide/ExecuteParamEMFOutputHandler.java
@@ -16,7 +16,7 @@
 package org.eclipse.amp.escape.amf.ide;
 
 import org.eclipse.amp.escape.ide.EclipseEscapeRunner;
-import org.eclipse.amp.escape.view.EMFDataOutputView;
+import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
 
 import org.ascape.runtime.Runner;
 
@@ -32,29 +32,7 @@
      */
     protected EclipseEscapeRunner createRunner() {
         Runner.setDisplayGraphics(!isHeadless());
-        EclipseEscapeRunner runner = new EclipseEscapeRunner() {
-            private static final long serialVersionUID = 1L;
-
-            /**
-             * 
-             * @see org.ascape.runtime.Runner#run()
-             */
-            public synchronized void run() {
-                getScape().addView(new EMFDataOutputView(modelResource, ExecuteParamEMFOutputHandler.this.getModel()));
-                super.run();
-            }
-
-            /**
-             * @param args
-             * @param block
-             * @see org.ascape.runtime.Runner#openImplementation(java.lang.String[], boolean)
-             */
-            public void openImplementation(String[] args, boolean block) {
-                getInterpreter().assignValues(new Object[] { getRootScape(), this }, null);
-                super.openImplementation(args, block);
-            }
-
-        };
+        EclipseEscapeRunner runner = new EclipseEMFOutputRunner(this.getModel(), modelResource, getInterpreter());
         runner.setCloseOnStop(true);
         runner.setAutoRestart(false);
         return runner;
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/view/EMFDataOutputView.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/view/EMFDataOutputView.java
index d0a1db5..34c47ff 100644
--- a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/view/EMFDataOutputView.java
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.amf.ide/src/org/eclipse/amp/escape/view/EMFDataOutputView.java
@@ -43,6 +43,8 @@
 import org.eclipse.emf.ecore.EObject;
 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.ResourceFactoryImpl;
 import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
 import org.eclipse.ui.statushandlers.StatusManager;
 
@@ -64,225 +66,271 @@
  */
 public class EMFDataOutputView extends DataView {
 
-    private static final long serialVersionUID = 1L;
-    private ResourceSet resourceSet;
+	private static final long serialVersionUID = 1L;
+	private ResourceSet resourceSet;
 
-    private Catalog catalog;
-    private Run currentRun;
+	private Catalog catalog;
+	private Run currentRun;
 
-    Map<DataSeries, Measurement> measureForSeries = new HashMap<DataSeries, Measurement>();
-    private URI dataFileURI;
-    private Resource dataResource;
+	Map<DataSeries, Measurement> measureForSeries = new HashMap<DataSeries, Measurement>();
+	private URI dataFileURI;
+	private Resource dataResource;
 
-    public final static IPath RESULTS_FOLDER = new Path("output");
-    private final SContext model;
+	public final static IPath RESULTS_FOLDER = new Path("output");
+	private final SContext model;
 
-    public EMFDataOutputView(IResource resource, SContext model) {
-        super();
-        this.model = model;
+	public EMFDataOutputView(IResource resource, SContext model) {
+		super();
+		assert (resource != null);
+		assert (model != null);
+		this.model = model;
 
-        IProject project = resource.getProject();
-        IPath projectPath = RESULTS_FOLDER.append(
-                                                  resource.getProjectRelativePath().removeFirstSegments(1)
-                                                  .removeLastSegments(1)).append(
-                                                                                 getFileName(resource)
-                                                                                 + ".adata");
+		IProject project = resource.getProject();
+		IPath projectPath = RESULTS_FOLDER.append(
+				resource.getProjectRelativePath().removeFirstSegments(1)
+						.removeLastSegments(1)).append(
+				getFileName(resource) + ".adata");
 
-        dataFileURI = URI.createPlatformResourceURI(project.getName() + "/" + projectPath, true);
-    }
+		dataFileURI = URI.createPlatformResourceURI(project.getName() + "/"
+				+ projectPath, true);
+	}
 
-    private String getFileName(IResource resource) {
-        String name = ((IFile) resource).getProjectRelativePath().removeFileExtension().lastSegment();
-        // name += DateFormatUtils.format(System.currentTimeMillis(), "MM-dd-yy_HH-mm-S");
-        return name;
-    }
+	private String getFileName(IResource resource) {
+		String name = ((IFile) resource).getProjectRelativePath()
+				.removeFileExtension().lastSegment();
+		// name += DateFormatUtils.format(System.currentTimeMillis(),
+		// "MM-dd-yy_HH-mm-S");
+		return name;
+	}
 
-    /**
-     * @param scapeEvent
-     * @throws TooManyListenersException
-     * @see org.ascape.view.nonvis.DataView#scapeAdded(org.ascape.model.event.ScapeEvent)
-     */
-    public void scapeAdded(ScapeEvent scapeEvent) throws TooManyListenersException {
-        super.scapeAdded(scapeEvent);
-        getDataSelection().selectAll();
-        resourceSet = new ResourceSetImpl();
+	/**
+	 * @param scapeEvent
+	 * @throws TooManyListenersException
+	 * @see org.ascape.view.nonvis.DataView#scapeAdded(org.ascape.model.event.ScapeEvent)
+	 */
+	public void scapeAdded(ScapeEvent scapeEvent)
+			throws TooManyListenersException {
+		super.scapeAdded(scapeEvent);
+		getDataSelection().selectAll();
 
-        // resourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_ATTACHMENT, Boolean.TRUE);
-        // resourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_IDREF_RESOLUTION, Boolean.TRUE);
-        // resourceSet.getLoadOptions().put(XMLResource.OPTION_USE_DEPRECATED_METHODS, Boolean.FALSE);
-        boolean exists = resourceSet.getURIConverter().exists(dataFileURI, null);
-        if (exists) {
-            dataResource = resourceSet.getResource(dataFileURI, true);
-            catalog = (Catalog) dataResource.getContents().get(0);
-        } else {
-            dataResource = resourceSet.createResource(dataFileURI);
-            catalog = DataFactoryImpl.eINSTANCE.createCatalog();
-            dataResource.getContents().add(catalog);
-        }
+		Resource.Factory binResourceFactory = new Resource.Factory() {
+			public Resource createResource(URI uri) {
+				return new BinaryResourceImpl(uri);
+			}
 
-        saveResults();
-    }
+		};
+		resourceSet = new ResourceSetImpl();
+		resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap()
+				.put("adata", binResourceFactory);
+		// resourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_ATTACHMENT,
+		// Boolean.TRUE);
+		// resourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_IDREF_RESOLUTION,
+		// Boolean.TRUE);
+		// resourceSet.getLoadOptions().put(XMLResource.OPTION_USE_DEPRECATED_METHODS,
+		// Boolean.FALSE);
+		boolean exists = resourceSet.getURIConverter()
+				.exists(dataFileURI, null);
+		if (exists) {
+			dataResource = resourceSet.getResource(dataFileURI, true);
+			catalog = (Catalog) dataResource.getContents().get(0);
+		} else {
+			dataResource = resourceSet.createResource(dataFileURI);
+			catalog = DataFactoryImpl.eINSTANCE.createCatalog();
+			dataResource.getContents().add(catalog);
+		}
 
-    /**
-     * @param scapeEvent
-     * @see org.ascape.model.event.DefaultScapeListener#scapeStarted(org.ascape.model.event.ScapeEvent)
-     */
-    public void scapeStarted(ScapeEvent scapeEvent) {
-        currentRun = DataFactoryImpl.eINSTANCE.createRun();
-        currentRun.setStarted(new Date());
+		saveResults();
+	}
 
-        catalog.getRuns().add(currentRun);
+	/**
+	 * @param scapeEvent
+	 * @see org.ascape.model.event.DefaultScapeListener#scapeStarted(org.ascape.model.event.ScapeEvent)
+	 */
+	public void scapeStarted(ScapeEvent scapeEvent) {
+		currentRun = DataFactoryImpl.eINSTANCE.createRun();
+		currentRun.setStarted(new Date());
 
-        currentRun.setModel(model);
-        currentRun.setName(getScape().getName());
+		catalog.getRuns().add(currentRun);
 
-        ParameterSet createParameterSet = DataFactoryImpl.eINSTANCE.createParameterSet();
-        currentRun.getParameterSets().add(createParameterSet);
+		currentRun.setModel(model);
+		currentRun.setName(getScape().getName());
 
-        // addParameter(createParameterSet, "runCount", new Integer(1));
-        // addParameter(createParameterSet, "startPeriod", new Integer(scape.getStartPeriod()));
-        // addParameter(createParameterSet, "stopPeriod", new Integer(scape.getPeriod()));
-        // addParameter(createParameterSet, "randomSeed", new Long(scape.getRandomSeed()));
+		ParameterSet createParameterSet = DataFactoryImpl.eINSTANCE
+				.createParameterSet();
+		currentRun.getParameterSets().add(createParameterSet);
 
-        List accessors = scape.retrieveAllAccessorsOrdered();
-        for (Iterator propertyAccessorIt = accessors.iterator(); propertyAccessorIt.hasNext();) {
-            PropertyAccessor accessor = (PropertyAccessor) propertyAccessorIt.next();
-            addParameter(createParameterSet, accessor.getName(), accessor.getValue());
-        }
+		// addParameter(createParameterSet, "runCount", new Integer(1));
+		// addParameter(createParameterSet, "startPeriod", new
+		// Integer(scape.getStartPeriod()));
+		// addParameter(createParameterSet, "stopPeriod", new
+		// Integer(scape.getPeriod()));
+		// addParameter(createParameterSet, "randomSeed", new
+		// Long(scape.getRandomSeed()));
 
-        for (int i = 0; i < dataSelection.getSelectionSize(); i++) {
-            DataSeries selectedSeries = dataSelection.getSelectedSeries(i);
-            Measurement measure = DataFactoryImpl.eINSTANCE.createMeasurement();
-            String measureName = selectedSeries.getDataPoint().getName();
-            IValue valueForName = getValueForName(measureName);
-            measure.setValue(valueForName);
-            measure.setName(measureName);
+		List accessors = scape.retrieveAllAccessorsOrdered();
+		for (Iterator propertyAccessorIt = accessors.iterator(); propertyAccessorIt
+				.hasNext();) {
+			PropertyAccessor accessor = (PropertyAccessor) propertyAccessorIt
+					.next();
+			addParameter(createParameterSet, accessor.getName(),
+					accessor.getValue());
+		}
 
-            if (selectedSeries.getMeasureName() == "Count") {
-                measure.setType(ScaleType.COUNT);
-            } else if (selectedSeries.getMeasureName() == "Sum") {
-                measure.setType(ScaleType.SUM);
-            } else if (selectedSeries.getMeasureName() == "Average") {
-                measure.setType(ScaleType.AVERAGE);
-            } else if (selectedSeries.getMeasureName() == "Minimum") {
-                measure.setType(ScaleType.MINIMUM);
-            } else if (selectedSeries.getMeasureName() == "Maximum") {
-                measure.setType(ScaleType.MAXIMUM);
-            } else if (selectedSeries.getMeasureName() == "Standard Deviation") {
-                measure.setType(ScaleType.STANDARD_DEVIATION);
-            } else if (selectedSeries.getMeasureName() == "Variance") {
-                measure.setType(ScaleType.VARIANCE);
-            }
-            measureForSeries.put(selectedSeries, measure);
+		measureForSeries = new HashMap<DataSeries, Measurement>();
+		for (int i = 0; i < dataSelection.getSelectionSize(); i++) {
+			DataSeries selectedSeries = dataSelection.getSelectedSeries(i);
+			Measurement measure = DataFactoryImpl.eINSTANCE.createMeasurement();
+			String measureName = selectedSeries.getDataPoint().getName();
+			IValue valueForName = getValueForName(measureName);
+			measure.setValue(valueForName);
+			measure.setName(measureName);
 
-            currentRun.getMeasurements().add(measure);
-        }
+			if (selectedSeries.getMeasureName() == "Count") {
+				measure.setType(ScaleType.COUNT);
+			} else if (selectedSeries.getMeasureName() == "Sum") {
+				measure.setType(ScaleType.SUM);
+			} else if (selectedSeries.getMeasureName() == "Average") {
+				measure.setType(ScaleType.AVERAGE);
+			} else if (selectedSeries.getMeasureName() == "Minimum") {
+				measure.setType(ScaleType.MINIMUM);
+			} else if (selectedSeries.getMeasureName() == "Maximum") {
+				measure.setType(ScaleType.MAXIMUM);
+			} else if (selectedSeries.getMeasureName() == "Standard Deviation") {
+				measure.setType(ScaleType.STANDARD_DEVIATION);
+			} else if (selectedSeries.getMeasureName() == "Variance") {
+				measure.setType(ScaleType.VARIANCE);
+			}
+			measureForSeries.put(selectedSeries, measure);
 
-        super.scapeStarted(scapeEvent);
-    }
+			currentRun.getMeasurements().add(measure);
+		}
 
-    private IValue getValueForName(String attrName) {
-        String searchName = attrName.toLowerCase().replace(" ", "");
-        for (EObject object : model.getAllAgents()) {
-            SAgent agent = (SAgent) object;
-            for (SAttribute attribute : agent.getAttributes()) {
-                // TODO there is actually some low possibility of name clash here..
-                String matchName = attribute.getLabel();
-                if (attribute instanceof SState) {
-                    for (SStateValue value : ((SState) attribute).getOptions()) {
-                        String stateName = value.getLabel() + " " + matchName;
-                        if (agent.getOwner() != null) {
-                            stateName = agent.getLabel() + " " + stateName;
-                        }
-                        stateName = stateName.toLowerCase().replace(" ", "");
-                        if (stateName.equals(searchName)) {
-                            return value;
-                        }
-                    }
-                } else {
-                    if (agent.getOwner() != null) {
-                        matchName = agent.getLabel() + " " + matchName;
-                    }
-                    matchName = matchName.toLowerCase().replace(" ", "");
-                    if (matchName.equals(searchName)) {
-                        return attribute;
-                    }
-                }
-            }
-        }
-        StatusManager.getManager().handle(
-                                          new Status(Status.WARNING, "org.eclipse.amp.escape.amf.ide",
-                                                     "Couldn't find attribute for parameter name: " + attrName));
-        return null;
-    }
+		super.scapeStarted(scapeEvent);
+	}
 
-    /**
-     * @param scapeEvent
-     * @see org.ascape.model.event.DefaultScapeListener#scapeIterated(org.ascape.model.event.ScapeEvent)
-     */
-    public void scapeIterated(ScapeEvent scapeEvent) {
-        super.scapeIterated(scapeEvent);
-        for (Object selected : dataSelection.getSelectedSeries()) {
-            DataSeries selectedSeries = (DataSeries) selected;
-            DataPoint dataPoint = DataFactoryImpl.eINSTANCE.createDataPoint();
-            Measurement measurement = measureForSeries.get(selectedSeries);
-            dataPoint.setMeasure(measurement);
-            dataPoint.setPeriod(getScape().getPeriod());
-            dataPoint.setRun(currentRun);
-            dataPoint.setValue(selectedSeries.getValue());
-            measurement.getEntries().add(dataPoint);
-        }
-    }
+	private IValue getValueForName(String attrName) {
+		String searchName = attrName.toLowerCase().replace(" ", "");
+		for (EObject object : model.getAllAgents()) {
+			SAgent agent = (SAgent) object;
+			for (SAttribute attribute : agent.getAttributes()) {
+				// TODO there is actually some low possibility of name clash
+				// here..
+				String matchName = attribute.getLabel();
+				if (attribute instanceof SState) {
+					for (SStateValue value : ((SState) attribute).getOptions()) {
+						String stateName = value.getLabel() + " " + matchName;
+						if (agent.getOwner() != null) {
+							stateName = agent.getLabel() + " " + stateName;
+						}
+						stateName = stateName.toLowerCase().replace(" ", "");
+						if (stateName.equals(searchName)) {
+							return value;
+						}
+					}
+				} else {
+					if (agent.getOwner() != null) {
+						matchName = agent.getLabel() + " " + matchName;
+					}
+					matchName = matchName.toLowerCase().replace(" ", "");
+					if (matchName.equals(searchName)) {
+						return attribute;
+					}
+				}
+			}
+		}
+		StatusManager.getManager().handle(
+				new Status(Status.WARNING, "org.eclipse.amp.escape.amf.ide",
+						"Couldn't find attribute for parameter name: "
+								+ attrName));
+		return null;
+	}
 
-    /**
-     * @param attrName
-     * @param integer
-     */
-    private void addParameter(ParameterSet set, String attrName, Object object) {
-        Parameter param = DataFactoryImpl.eINSTANCE.createParameter();
-        IValue valueForName = getValueForName(attrName);
-        if (valueForName instanceof SAttribute) {
-            param.setAttribute((SAttribute) valueForName);
-        }
-        param.setName(attrName);
-        // Object createFromString = null;
-        // // EcoreUtil.create(EcorePackage.Literals.EINTEGER_OBJECT);
-        // if (object instanceof Boolean) {
-        // createFromString = EcoreUtil.createFromString(EcorePackage.eINSTANCE.getEBoolean(), object
-        // .toString());
-        // } else if (object instanceof String) {
-        // createFromString = EcoreUtil.createFromString(EcorePackage.eINSTANCE.getEString(), object
-        // .toString());
-        // } else if (object instanceof Double) {
-        // createFromString = EcoreUtil.createFromString(EcorePackage.eINSTANCE.getEDouble(), object
-        // .toString());
-        // } else if (object instanceof Integer) {
-        // createFromString = EcoreUtil
-        // .createFromString(EcorePackage.eINSTANCE.getEInt(), object.toString());
-        // }
-        // if (createFromString != null) {
-        param.eSet(DataPackage.Literals.PARAMETER__VALUE, object.toString());
-        set.getMembers().add(param);
-        // }
-    }
+	/**
+	 * @param scapeEvent
+	 * @see org.ascape.model.event.DefaultScapeListener#scapeIterated(org.ascape.model.event.ScapeEvent)
+	 */
+	public void scapeIterated(ScapeEvent scapeEvent) {
+		super.scapeIterated(scapeEvent);
+		for (Object selected : dataSelection.getSelectedSeries()) {
+			DataSeries selectedSeries = (DataSeries) selected;
+			DataPoint dataPoint = DataFactoryImpl.eINSTANCE.createDataPoint();
+			Measurement measurement = measureForSeries.get(selectedSeries);
+			// dataPoint.setMeasure(measurement);
+			dataPoint.setPeriod(getScape().getPeriod());
+			dataPoint.setMeasurement(measurement);
+			dataPoint.setValue(selectedSeries.getValue());
+			measurement.getEntries().add(dataPoint);
+		}
+	}
 
-    /**
-     * @param scapeEvent
-     * @see org.ascape.model.event.DefaultScapeListener#scapeStopped(org.ascape.model.event.ScapeEvent)
-     */
-    public void scapeStopped(ScapeEvent scapeEvent) {
-        currentRun.setFinished(new Date());
-        // let's save results in case we get interrupted
-        saveResults();
-        super.scapeStopped(scapeEvent);
-    }
+	/**
+	 * @param attrName
+	 * @param integer
+	 */
+	private void addParameter(ParameterSet set, String attrName, Object object) {
+		Parameter param = DataFactoryImpl.eINSTANCE.createParameter();
+		IValue valueForName = getValueForName(attrName);
+		if (valueForName instanceof SAttribute) {
+			param.setAttribute((SAttribute) valueForName);
+		}
+		param.setName(attrName);
+		// Object createFromString = null;
+		// // EcoreUtil.create(EcorePackage.Literals.EINTEGER_OBJECT);
+		// if (object instanceof Boolean) {
+		// createFromString =
+		// EcoreUtil.createFromString(EcorePackage.eINSTANCE.getEBoolean(),
+		// object
+		// .toString());
+		// } else if (object instanceof String) {
+		// createFromString =
+		// EcoreUtil.createFromString(EcorePackage.eINSTANCE.getEString(),
+		// object
+		// .toString());
+		// } else if (object instanceof Double) {
+		// createFromString =
+		// EcoreUtil.createFromString(EcorePackage.eINSTANCE.getEDouble(),
+		// object
+		// .toString());
+		// } else if (object instanceof Integer) {
+		// createFromString = EcoreUtil
+		// .createFromString(EcorePackage.eINSTANCE.getEInt(),
+		// object.toString());
+		// }
+		// if (createFromString != null) {
+		param.eSet(DataPackage.Literals.PARAMETER__VALUE, object.toString());
+		set.getMembers().add(param);
+		// }
+	}
 
-    private synchronized void saveResults() {
-        Map<Object, Object> saveOptions = new HashMap<Object, Object>();
-        try {
-            dataResource.save(saveOptions);
-        } catch (IOException e) {
-            throw new RuntimeException(e);
-        }
-    }
+	/**
+	 * @param scapeEvent
+	 * @see org.ascape.model.event.DefaultScapeListener#scapeStopped(org.ascape.model.event.ScapeEvent)
+	 */
+	public void scapeStopped(ScapeEvent scapeEvent) {
+		currentRun.setFinished(new Date());
+		// let's save results in case we get interrupted
+		saveResults();
+		super.scapeStopped(scapeEvent);
+	}
+	
+	@Override
+	public void scapeRemoved(ScapeEvent scapeEvent) {
+		// TODO Auto-generated method stub
+		super.scapeRemoved(scapeEvent);
+		if (dataResource != null) {
+			dataResource.unload();
+			resourceSet.getResources().remove(dataResource);
+		}
+	}
+
+	private synchronized void saveResults() {
+		Map<Object, Object> saveOptions = new HashMap<Object, Object>();
+		try {
+			saveOptions.put(BinaryResourceImpl.OPTION_SAVE_ONLY_IF_CHANGED,
+					null);
+			dataResource.save(saveOptions);
+		} catch (IOException e) {
+			throw new RuntimeException(e);
+		}
+	}
 }
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ide/src/org/eclipse/amp/escape/ide/EclipseEscapeRunner.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ide/src/org/eclipse/amp/escape/ide/EclipseEscapeRunner.java
index 6c17824..2caabec 100644
--- a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ide/src/org/eclipse/amp/escape/ide/EclipseEscapeRunner.java
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.ide/src/org/eclipse/amp/escape/ide/EclipseEscapeRunner.java
@@ -54,535 +54,588 @@
  */
 public class EclipseEscapeRunner extends NonGraphicRunner implements IEngine {
 
-    private static final long serialVersionUID = 1L;
+	private static final long serialVersionUID = 1L;
 
-    protected ProjectLoader delegateLoader;
+	protected ProjectLoader delegateLoader;
 
-    protected IProgressMonitor modelMonitor;
+	protected IProgressMonitor modelMonitor;
 
-    IModel model;
+	IModel model;
 
-    IProject project;
+	IProject project;
 
-    private IStatus finishStatus = Status.OK_STATUS;
+	private IStatus finishStatus = Status.OK_STATUS;
 
-    TimeGranularity updateGranularity = TimeGranularity.DEFAULT_GRANULARITY;
+	TimeGranularity updateGranularity = TimeGranularity.DEFAULT_GRANULARITY;
 
-    public final static long KILL_AFTER_NO_RESPONSE_TIME = 5000;
+	public final static long KILL_AFTER_NO_RESPONSE_TIME = 5000;
 
-    // would be nice to have this in Ascape proper but not worth IP submission
-    private boolean closeOnStop = false;
+	// would be nice to have this in Ascape proper but not worth IP submission
+	private boolean closeOnStop = false;
 
-    /**
-     * Open.
-     * 
-     * @param modelResource the model resource
-     * @param modelClassName the model class name
-     * @param modelName the model name
-     */
-    public void open(final IResource modelResource, final String modelClassName, String modelName) {
-        open(modelResource, modelClassName, modelName, new String[0]);
-    }
+	/**
+	 * Open.
+	 * 
+	 * @param modelResource
+	 *            the model resource
+	 * @param modelClassName
+	 *            the model class name
+	 * @param modelName
+	 *            the model name
+	 */
+	public void open(final IResource modelResource,
+			final String modelClassName, String modelName) {
+		open(modelResource, modelClassName, modelName, new String[0]);
+	}
 
-    /**
-     * Open. Wait until execution has stopped to return.
-     * 
-     * @param projectResource the project resource
-     * @param modelClassName the model class name
-     * @param modelName the model name
-     * @param args the args
-     */
-    public void open(final IResource projectResource, final String modelClassName, String modelName, String[] args) {
-        open(projectResource, modelClassName, modelName, args, true);
-    }
+	/**
+	 * Open. Wait until execution has stopped to return.
+	 * 
+	 * @param projectResource
+	 *            the project resource
+	 * @param modelClassName
+	 *            the model class name
+	 * @param modelName
+	 *            the model name
+	 * @param args
+	 *            the args
+	 */
+	public void open(final IResource projectResource,
+			final String modelClassName, String modelName, String[] args) {
+		open(projectResource, modelClassName, modelName, args, true);
+	}
 
-    /**
-     * Open.
-     * 
-     * @param projectResource the project resource
-     * @param modelClassName the model class name
-     * @param modelName the model name
-     * @param args the args
-     * @param block true if this method should only return on execution completion.
-     */
-    public void open(final IResource projectResource, final String modelClassName, String modelName, String[] args,
-            boolean block) {
-        this.project = projectResource.getProject();
-        setStartOnOpen(false);
-        setAutoRestart(false);
-        final MessageConsole eclipseConsole = new MessageConsole("Run " + modelName, null);
-        getEnvironment().getConsole().setIMessageStream(new MessageAdapter(eclipseConsole));
-        IConsole[] consules = { eclipseConsole };
-        ConsolePlugin.getDefault().getConsoleManager().addConsoles(consules);
-        eclipseConsole.activate();
-        AscapeRuntimePlugin.getDefault();
-        try {
-            delegateLoader = new ProjectLoader(projectResource.getProject());
-        } catch (LoaderCreationException e) {
-            StatusManager.getManager()
-            .handle(
-                    new Status(Status.WARNING, project.getName(),
-                               "Couldn't create project classloader; falling back to default loader", e));
-        }
-        Scape newAgent;
-        try {
-            newAgent = (Scape) instanceFromName(modelClassName);
-        } catch (RuntimeException e) {
-            StatusManager.getManager().handle(
-                                              new Status(Status.ERROR, project.getName(), "Could not read class: "
-                                                         + modelClassName
-                                                         + ". Please ensure that the class exists in class path.", e),
-                                                         StatusManager.SHOW | StatusManager.LOG);
-            dispose();
-            throw e;
-        }
-        newAgent.setName(modelName);
-        setRootScape(newAgent);
-        model = new ScapeWrapperModel(getRootScape());
-        AXFWorkbenchPlugin.getDefault().getManager().register(model, this, getRootScape());
-        // getModel().addModelListener(new ModelMonitorView(modelMonitor));
-        // getModel().addModelListener(new ControlViewProxy());
-        try {
-            open(args, true);
-        } catch (RuntimeException e) {
-            closeFinally();
-            throw e;
-        }
-        final List<ScapeListener> newListeners = new ArrayList<ScapeListener>();
-        getRootScape().executeOnRoot(new PropogateScapeOnly() {
-            private static final long serialVersionUID = -6277857634508661314L;
+	/**
+	 * Open.
+	 * 
+	 * @param projectResource
+	 *            the project resource
+	 * @param modelClassName
+	 *            the model class name
+	 * @param modelName
+	 *            the model name
+	 * @param args
+	 *            the args
+	 * @param block
+	 *            true if this method should only return on execution
+	 *            completion.
+	 */
+	public void open(final IResource projectResource,
+			final String modelClassName, String modelName, String[] args,
+			boolean block) {
+		this.project = projectResource.getProject();
+		setStartOnOpen(false);
+		setAutoRestart(false);
+		final MessageConsole eclipseConsole = new MessageConsole("Run "
+				+ modelName, null);
+		getEnvironment().getConsole().setIMessageStream(
+				new MessageAdapter(eclipseConsole));
+		IConsole[] consules = { eclipseConsole };
+		ConsolePlugin.getDefault().getConsoleManager().addConsoles(consules);
+		eclipseConsole.activate();
+		AscapeRuntimePlugin.getDefault();
+		try {
+			delegateLoader = new ProjectLoader(projectResource.getProject());
+		} catch (LoaderCreationException e) {
+			StatusManager
+					.getManager()
+					.handle(new Status(
+							Status.WARNING,
+							project.getName(),
+							"Couldn't create project classloader; falling back to default loader",
+							e));
+		}
+		Scape newAgent;
+		try {
+			newAgent = (Scape) instanceFromName(modelClassName);
+		} catch (RuntimeException e) {
+			StatusManager
+					.getManager()
+					.handle(new Status(
+							Status.ERROR,
+							project.getName(),
+							"Could not read class: "
+									+ modelClassName
+									+ ". Please ensure that the class exists in class path.",
+							e), StatusManager.SHOW | StatusManager.LOG);
+			dispose();
+			throw e;
+		}
+		newAgent.setName(modelName);
+		setRootScape(newAgent);
+		model = new ScapeWrapperModel(getRootScape());
+		AXFWorkbenchPlugin.getDefault().getManager()
+				.register(model, this, getRootScape());
+		// getModel().addModelListener(new ModelMonitorView(modelMonitor));
+		// getModel().addModelListener(new ControlViewProxy());
+		try {
+			open(args, true);
+		} catch (RuntimeException e) {
+			closeFinally();
+			throw e;
+		}
+		final List<ScapeListener> newListeners = new ArrayList<ScapeListener>();
+		getRootScape().executeOnRoot(new PropogateScapeOnly() {
+			private static final long serialVersionUID = -6277857634508661314L;
 
-            @SuppressWarnings("unchecked")
-            @Override
-            public void execute(Agent agent) {
-                newListeners.addAll(((Scape) agent).getScapeListeners());
-                super.execute(agent);
-            }
-        });
-        for (ScapeListener scapeListener : newListeners) {
-            if (!(scapeListener instanceof ModelWrapperScapeListener)) {
-                ScapeWrapperModelListener listenerWrapper = new ScapeWrapperModelListener(getRootScape(), scapeListener);
-                model.addModelListener(listenerWrapper);
-            }
-        }
-        start();
-        if (block) {
-            while (!modelShutdown) {
-                try {
-                    Thread.sleep(30L);
-                } catch (InterruptedException e) {
-                }
-            }
-        }
-    }
+			@SuppressWarnings("unchecked")
+			@Override
+			public void execute(Agent agent) {
+				newListeners.addAll(((Scape) agent).getScapeListeners());
+				super.execute(agent);
+			}
+		});
+		for (ScapeListener scapeListener : newListeners) {
+			if (!(scapeListener instanceof ModelWrapperScapeListener)) {
+				ScapeWrapperModelListener listenerWrapper = new ScapeWrapperModelListener(
+						getRootScape(), scapeListener);
+				model.addModelListener(listenerWrapper);
+			}
+		}
+		start();
+		if (block) {
+			while (!modelShutdown) {
+				try {
+					Thread.sleep(30L);
+				} catch (InterruptedException e) {
+				}
+			}
+		}
+	}
 
-    private void removeModel() {
-        if (AXFWorkbenchPlugin.getDefault().getManager() != null) {
-            new Thread() {
-                /**
-                 * 
-                 * @see java.lang.Thread#run()
-                 */
-                public void run() {
-                    if (AXFWorkbenchPlugin.getDefault().getManager().getModels().contains(model)) {
-                        AXFWorkbenchPlugin.getDefault().getManager().remove(model);
-                    }
-                }
-            }.start();
-        }
-        modelShutdown = true;
-    }
+	private void removeModel() {
+		if (AXFWorkbenchPlugin.getDefault().getManager() != null) {
+			new Thread() {
+				/**
+				 * 
+				 * @see java.lang.Thread#run()
+				 */
+				public void run() {
+					if (AXFWorkbenchPlugin.getDefault().getManager()
+							.getModels().contains(model)) {
+						AXFWorkbenchPlugin.getDefault().getManager()
+								.remove(model);
+					}
+				}
+			}.start();
+		}
+		modelShutdown = true;
+	}
 
-    private void dispose() {
-        // if (AXFWorkbenchPlugin.getDefault().getManager() != null) {
-        // new Thread() {
-        // /**
-        // *
-        // * @see java.lang.Thread#run()
-        // */
-        // public void run() {
-        // AXFWorkbenchPlugin.getDefault().getManager().remove(model);
-        // }
-        // }.start();
-        // }
-        if (delegateLoader != null) {
-            delegateLoader.restore();
-        }
-        delegateLoader = null;
-    }
+	private void dispose() {
+		// if (AXFWorkbenchPlugin.getDefault().getManager() != null) {
+		// new Thread() {
+		// /**
+		// *
+		// * @see java.lang.Thread#run()
+		// */
+		// public void run() {
+		// AXFWorkbenchPlugin.getDefault().getManager().remove(model);
+		// }
+		// }.start();
+		// }
+		if (delegateLoader != null) {
+			delegateLoader.restore();
+		}
+		delegateLoader = null;
+	}
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.ascape.runtime.Runner#start()
-     */
-    /**
-     * 
-     * @see org.ascape.runtime.Runner#start()
-     */
-    public void start() {
-        escapeRun = new Job("Run " + getModel().getName()) {
-            protected IStatus run(IProgressMonitor runMonitor) {
-                try {
-                    setMonitor(runMonitor);
-                    RunMonitorView runMonitorView = new RunMonitorView(runMonitor);
-                    getModel().addModelListener(runMonitorView);
-                    DelayView delayView = new DelayView();
-                    getModel().addModelListener(delayView);
-                    // do {
-                    try {
-                        EclipseEscapeRunner.this.run();
-                        if (closeOnStop) {
-                            close();
-                        }
-                    } catch (RuntimeException e) {
-                        closeFinally();
-                        throw e;
-                    }
-                    // } while (isRestartRequested());
-                    getModel().removeModelListener(runMonitorView);
-                } catch (RuntimeException e) {
-                    String message = "An exception occurred: ";
-                    if (model != null) {
-                        message = "An exception occurred when running: " + getModel().getName();
-                    }
-                    StatusManager.getManager().handle(new Status(Status.ERROR, project.getName(), message, e),
-                                                      StatusManager.SHOW | StatusManager.LOG);
-                    if (closeOnStop) {
-                        close();
-                    } else {
-                        stop();
-                    }
-                }
-                return Status.OK_STATUS;
-            }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.ascape.runtime.Runner#start()
+	 */
+	/**
+	 * 
+	 * @see org.ascape.runtime.Runner#start()
+	 */
+	public void start() {
+		escapeRun = new Job("Run " + getModel().getName()) {
+			protected IStatus run(IProgressMonitor runMonitor) {
+				try {
+					setMonitor(runMonitor);
+					RunMonitorView runMonitorView = new RunMonitorView(
+							runMonitor);
+					getModel().addModelListener(runMonitorView);
+					DelayView delayView = new DelayView();
+					getModel().addModelListener(delayView);
+					// do {
+					try {
+						EclipseEscapeRunner.this.run();
+						if (closeOnStop) {
+							close();
+						}
+					} catch (RuntimeException e) {
+						closeFinally();
+						throw e;
+					}
+					// } while (isRestartRequested());
+					getModel().removeModelListener(runMonitorView);
+				} catch (RuntimeException e) {
+					String message = "An exception occurred: ";
+					if (model != null) {
+						message = "An exception occurred when running: "
+								+ getModel().getName();
+					}
+					StatusManager.getManager().handle(
+							new Status(Status.ERROR, project.getName(),
+									message, e),
+							StatusManager.SHOW | StatusManager.LOG);
+					if (closeOnStop) {
+						close();
+					} else {
+						stop();
+					}
+				}
+				return Status.OK_STATUS;
+			}
 
-            protected void canceling() {
-                close();
-            }
-        };
-        escapeRun.setPriority(Job.SHORT);
-        escapeRun.schedule();
-    }
+			protected void canceling() {
+				close();
+			}
+		};
+		escapeRun.setPriority(Job.SHORT);
+		escapeRun.schedule();
+	}
 
-    boolean modelShutdown = false;
+	boolean modelShutdown = false;
 
-    private Job escapeRun;
+	private Job escapeRun;
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.ascape.runtime.Runner#close()
-     */
-    /**
-     * 
-     * @see org.ascape.runtime.Runner#close()
-     */
-    @SuppressWarnings("deprecation")
-    @Override
-    public void close() {
-        if (!isCloseRequested()) {
-            setCloseRequested(true);
-            Thread closeThread = new Thread(this, "Close Escape Model") {
-                public void run() {
-                    setPaused(false);
-                    EclipseEscapeRunner.super.close();
-                }
-            };
-            closeThread.start();
-        }
-        if (modelMonitor != null) {
-            modelMonitor.setTaskName("Waiting for Close...");
-        }
-        try {
-            long elapsed = 0;
-            while (isCloseRequested() && getModelThread() != null && getModelThread().isAlive()
-                    && elapsed <= KILL_AFTER_NO_RESPONSE_TIME) {
-                if (elapsed >= KILL_AFTER_NO_RESPONSE_TIME) {
-                    if (modelMonitor != null) {
-                        modelMonitor.setTaskName("Forcing Close");
-                    }
-                    EscapeIDEPlugin.warn("Couldn't close model normally, forcing stop.", null);
-                    if (escapeRun != null) {
-                        escapeRun.getThread().stop();
-                    }
-                    closeFinally();
-                }
-                Thread.sleep(30);
-                elapsed += 30;
-            }
-        } catch (InterruptedException e) {
-        }
-        if (modelMonitor != null) {
-            modelMonitor.setTaskName("Closed");
-        }
-        modelShutdown = true;
-    }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.ascape.runtime.Runner#close()
+	 */
+	/**
+	 * 
+	 * @see org.ascape.runtime.Runner#close()
+	 */
+	@SuppressWarnings("deprecation")
+	@Override
+	public void close() {
+		if (!isCloseRequested()) {
+			setCloseRequested(true);
+			Thread closeThread = new Thread(this, "Close Escape Model") {
+				public void run() {
+					setPaused(false);
+					EclipseEscapeRunner.super.close();
+				}
+			};
+			closeThread.start();
+		}
+		if (modelMonitor != null) {
+			modelMonitor.setTaskName("Waiting for Close...");
+		}
+		try {
+			long elapsed = 0;
+			while (isCloseRequested() && getModelThread() != null
+					&& getModelThread().isAlive()
+					&& elapsed <= KILL_AFTER_NO_RESPONSE_TIME) {
+				if (elapsed >= KILL_AFTER_NO_RESPONSE_TIME) {
+					if (modelMonitor != null) {
+						modelMonitor.setTaskName("Forcing Close");
+					}
+					EscapeIDEPlugin.warn(
+							"Couldn't close model normally, forcing stop.",
+							null);
+					if (escapeRun != null) {
+						escapeRun.getThread().stop();
+					}
+					closeFinally();
+				}
+				Thread.sleep(30);
+				elapsed += 30;
+			}
+		} catch (InterruptedException e) {
+		}
+		if (modelMonitor != null) {
+			modelMonitor.setTaskName("Closed");
+		}
+		modelShutdown = true;
+	}
 
-    /**
-     * 
-     * @see org.ascape.runtime.Runner#closeFinally()
-     */
-    public void closeFinally() {
-        super.closeFinally();
-        modelShutdown = true;
-        ((ScapeWrapperModel) getModel()).setClosed(true);
-        removeModel();
-        dispose();
-    }
+	/**
+	 * 
+	 * @see org.ascape.runtime.Runner#closeFinally()
+	 */
+	public void closeFinally() {
+		super.closeFinally();
+		modelShutdown = true;
+		((ScapeWrapperModel) getModel()).setClosed(true);
+		removeModel();
+		dispose();
+	}
 
-    /**
-     * Gets the finish status.
-     * 
-     * @return the finish status
-     */
-    public IStatus getFinishStatus() {
-        return finishStatus;
-    }
+	/**
+	 * Gets the finish status.
+	 * 
+	 * @return the finish status
+	 */
+	public IStatus getFinishStatus() {
+		return finishStatus;
+	}
 
-    /**
-     * Sets the finish status.
-     * 
-     * @param finishStatus the new finish status
-     */
-    public void setFinishStatus(IStatus finishStatus) {
-        this.finishStatus = finishStatus;
-    }
+	/**
+	 * Sets the finish status.
+	 * 
+	 * @param finishStatus
+	 *            the new finish status
+	 */
+	public void setFinishStatus(IStatus finishStatus) {
+		this.finishStatus = finishStatus;
+	}
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#getModel()
-     */
-    /**
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#getModel()
-     */
-    public IModel getModel() {
-        return model;
-    }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.eclipse.amp.axf.core.IEngine#getModel()
+	 */
+	/**
+	 * 
+	 * @see org.eclipse.amp.axf.core.IEngine#getModel()
+	 */
+	public IModel getModel() {
+		return model;
+	}
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#getIterationsPerRedraw()
-     */
-    /**
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#getIterationsPerRedraw()
-     */
-    public int getIterationsPerRedraw() {
-        return getScape().getIterationsPerRedraw();
-    }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.eclipse.amp.axf.core.IEngine#getIterationsPerRedraw()
+	 */
+	/**
+	 * 
+	 * @see org.eclipse.amp.axf.core.IEngine#getIterationsPerRedraw()
+	 */
+	public int getIterationsPerRedraw() {
+		return getScape().getIterationsPerRedraw();
+	}
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.ascape.runtime.Runner#respondControl(org.ascape.model.event.ControlEvent)
-     */
-    /**
-     * 
-     * @see org.ascape.runtime.Runner#respondControl(org.ascape.model.event.ControlEvent)
-     */
-    public void respondControl(final org.ascape.model.event.ControlEvent control) {
-        new Thread(new Runnable() {
-            public void run() {
-                EclipseEscapeRunner.super.respondControl(control);
-            }
-        }).start();
-    }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see
+	 * org.ascape.runtime.Runner#respondControl(org.ascape.model.event.ControlEvent
+	 * )
+	 */
+	/**
+	 * 
+	 * @see org.ascape.runtime.Runner#respondControl(org.ascape.model.event.ControlEvent)
+	 */
+	public void respondControl(final org.ascape.model.event.ControlEvent control) {
+		new Thread(new Runnable() {
+			public void run() {
+				EclipseEscapeRunner.super.respondControl(control);
+			}
+		}).start();
+	}
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#control(org.eclipse.amp.axf.core.EngineControl)
-     */
-    /**
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#control(org.eclipse.amp.axf.core.EngineControl)
-     */
-    public void control(org.eclipse.amp.axf.core.EngineControl control) {
-        super.respondControl(adaptEngineControl(control));
-    }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.eclipse.amp.axf.core.IEngine#control(org.eclipse.amp.axf.core.
+	 * EngineControl)
+	 */
+	/**
+	 * 
+	 * @see org.eclipse.amp.axf.core.IEngine#control(org.eclipse.amp.axf.core.EngineControl)
+	 */
+	public void control(org.eclipse.amp.axf.core.EngineControl control) {
+		super.respondControl(adaptEngineControl(control));
+	}
 
-    private ControlEvent adaptEngineControl(org.eclipse.amp.axf.core.EngineControl control) {
-        int id = 0;
-        switch (control) {
-            case OPEN:
-                id = ControlEvent.REQUEST_OPEN;
-                break;
-            case START:
-                id = ControlEvent.REQUEST_START;
-                break;
-            case RESTART:
-                id = ControlEvent.REQUEST_RESTART;
-                break;
-            case STEP:
-                id = ControlEvent.REQUEST_STEP;
-                break;
-            case PAUSE:
-                id = ControlEvent.REQUEST_PAUSE;
-                break;
-            case RESUME:
-                id = ControlEvent.REQUEST_RESUME;
-                break;
-            case STOP:
-                id = ControlEvent.REQUEST_STOP;
-                break;
-            case CLOSE:
-                id = ControlEvent.REQUEST_CLOSE;
-                break;
-            case SAVE:
-                id = ControlEvent.REQUEST_SAVE;
-                break;
-            default:
-                throw new RuntimeException("Couldn't convert control: " + control);
-        }
-        return new org.ascape.model.event.ControlEvent(getScape(), id);
-    }
+	private ControlEvent adaptEngineControl(
+			org.eclipse.amp.axf.core.EngineControl control) {
+		int id = 0;
+		switch (control) {
+		case OPEN:
+			id = ControlEvent.REQUEST_OPEN;
+			break;
+		case START:
+			id = ControlEvent.REQUEST_START;
+			break;
+		case RESTART:
+			id = ControlEvent.REQUEST_RESTART;
+			break;
+		case STEP:
+			id = ControlEvent.REQUEST_STEP;
+			break;
+		case PAUSE:
+			id = ControlEvent.REQUEST_PAUSE;
+			break;
+		case RESUME:
+			id = ControlEvent.REQUEST_RESUME;
+			break;
+		case STOP:
+			id = ControlEvent.REQUEST_STOP;
+			break;
+		case CLOSE:
+			id = ControlEvent.REQUEST_CLOSE;
+			break;
+		case SAVE:
+			id = ControlEvent.REQUEST_SAVE;
+			break;
+		default:
+			throw new RuntimeException("Couldn't convert control: " + control);
+		}
+		return new org.ascape.model.event.ControlEvent(getScape(), id);
+	}
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.ascape.runtime.Runner#notify(org.ascape.model.event.ScapeEvent, org.ascape.model.event.ScapeListener)
-     */
-    /**
-     * 
-     * @see org.ascape.runtime.Runner#notify(org.ascape.model.event.ScapeEvent, org.ascape.model.event.ScapeListener)
-     */
-    public void notify(final ScapeEvent event, final ScapeListener listener) {
-        // new Thread() {
-        // public void run() {
-        listener.scapeNotification(event);
-        // }
-        // }.start();
-    }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.ascape.runtime.Runner#notify(org.ascape.model.event.ScapeEvent,
+	 * org.ascape.model.event.ScapeListener)
+	 */
+	/**
+	 * 
+	 * @see org.ascape.runtime.Runner#notify(org.ascape.model.event.ScapeEvent,
+	 *      org.ascape.model.event.ScapeListener)
+	 */
+	public void notify(final ScapeEvent event, final ScapeListener listener) {
+		// new Thread() {
+		// public void run() {
+		listener.scapeNotification(event);
+		// }
+		// }.start();
+	}
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#setIterationsPerRedraw(int)
-     */
-    /**
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#setIterationsPerRedraw(int)
-     */
-    public void setIterationsPerRedraw(int iterations) {
-        getScape().setIterationsPerRedraw(iterations);
-    }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see org.eclipse.amp.axf.core.IEngine#setIterationsPerRedraw(int)
+	 */
+	/**
+	 * 
+	 * @see org.eclipse.amp.axf.core.IEngine#setIterationsPerRedraw(int)
+	 */
+	public void setIterationsPerRedraw(int iterations) {
+		getScape().setIterationsPerRedraw(iterations);
+	}
 
-    /**
-     * Gets the scape.
-     * 
-     * @return the scape
-     */
-    public Scape getScape() {
-        return getRootScape();
-    }
+	/**
+	 * Gets the scape.
+	 * 
+	 * @return the scape
+	 */
+	public Scape getScape() {
+		return getRootScape();
+	}
 
-    /**
-     * Gets the monitor.
-     * 
-     * @return the monitor
-     */
-    public IProgressMonitor getMonitor() {
-        return modelMonitor;
-    }
+	/**
+	 * Gets the monitor.
+	 * 
+	 * @return the monitor
+	 */
+	public IProgressMonitor getMonitor() {
+		return modelMonitor;
+	}
 
-    /**
-     * Sets the monitor.
-     * 
-     * @param modelMonitor the new monitor
-     */
-    public void setMonitor(IProgressMonitor modelMonitor) {
-        this.modelMonitor = modelMonitor;
-    }
+	/**
+	 * Sets the monitor.
+	 * 
+	 * @param modelMonitor
+	 *            the new monitor
+	 */
+	public void setMonitor(IProgressMonitor modelMonitor) {
+		this.modelMonitor = modelMonitor;
+	}
 
-    /*
-     * (non-Javadoc)
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#observationComplete(org.eclipse.amp.axf.core.ILifeCycleListener)
-     */
-    /**
-     * 
-     * @see org.eclipse.amp.axf.core.IEngine#observationComplete(org.eclipse.amp.axf.core.ILifeCycleListener)
-     */
-    public void observationComplete(ILifeCycleListener observer) {
-        // respondControl(new org.ascape.model.event.ControlEvent(getScape(), ControlEvent.REPORT_LISTENER_UPDATED));
-    }
+	/*
+	 * (non-Javadoc)
+	 * 
+	 * @see
+	 * org.eclipse.amp.axf.core.IEngine#observationComplete(org.eclipse.amp.
+	 * axf.core.ILifeCycleListener)
+	 */
+	/**
+	 * 
+	 * @see org.eclipse.amp.axf.core.IEngine#observationComplete(org.eclipse.amp.axf.core.ILifeCycleListener)
+	 */
+	public void observationComplete(ILifeCycleListener observer) {
+		// respondControl(new org.ascape.model.event.ControlEvent(getScape(),
+		// ControlEvent.REPORT_LISTENER_UPDATED));
+	}
 
-    /**
-     * @return
-     * @see org.eclipse.amp.axf.core.IEngine#getUpdateGranularity()
-     */
-    public ITimeGranularity getUpdateGranularity() {
-        return updateGranularity;
-    }
+	/**
+	 * @return
+	 * @see org.eclipse.amp.axf.core.IEngine#getUpdateGranularity()
+	 */
+	public ITimeGranularity getUpdateGranularity() {
+		return updateGranularity;
+	}
 
-    /**
-     * @param granularity
-     * @see org.eclipse.amp.axf.core.IEngine#setUpdateGranularity(org.eclipse.amp.axf.time.ITimeGranularity)
-     */
-    public void setUpdateGranularity(ITimeGranularity granularity) {
-        this.updateGranularity = (TimeGranularity) granularity;
-    }
+	/**
+	 * @param granularity
+	 * @see org.eclipse.amp.axf.core.IEngine#setUpdateGranularity(org.eclipse.amp.axf.time.ITimeGranularity)
+	 */
+	public void setUpdateGranularity(ITimeGranularity granularity) {
+		this.updateGranularity = (TimeGranularity) granularity;
+	}
 
-    public IProject getExecutingProject() {
-        return project;
-    }
+	public IProject getExecutingProject() {
+		return project;
+	}
 
-    /**
-     * Should the model exit upon a stop command?
-     * 
-     * @see #setCloseOnStop
-     * @return whether to complete run on model stop; default is false
-     */
-    public boolean isCloseOnStop() {
-        return closeOnStop;
-    }
+	/**
+	 * Should the model exit upon a stop command?
+	 * 
+	 * @see #setCloseOnStop
+	 * @return whether to complete run on model stop; default is false
+	 */
+	public boolean isCloseOnStop() {
+		return closeOnStop;
+	}
 
-    /**
-     * Specifies whether the runner should exit upon a model stop. The default behavior is false, which leaves the model
-     * open (and typically able to restart) until explicitly closed. For batch runs we don't want the model to stay open
-     * as that requires a view notification and response to close it. It's probably cleaner to allow the runner to exit
-     * immediately rather than wait for a listener to trigger one.
-     * 
-     * Note that the model will not stop in the case where a restart has been requested, and listener's will be notified
-     * of a model stop before actually closing. This gives output control listeners -- for a parameter sweep control,
-     * for example -- an opportunity to set restart to request a restart. It also implies that it makes no sense to have
-     * autoRestart true if this value is also true. Since auto-restart is by default true, be sure to set it to false.
-     * 
-     * This setting can be safely changed during a model run.
-     * 
-     * @param closeOnStop whether to complete run on model stop; default is false
-     */
-    public void setCloseOnStop(boolean closeOnStop) {
-        this.closeOnStop = closeOnStop;
-    }
+	/**
+	 * Specifies whether the runner should exit upon a model stop. The default
+	 * behavior is false, which leaves the model open (and typically able to
+	 * restart) until explicitly closed. For batch runs we don't want the model
+	 * to stay open as that requires a view notification and response to close
+	 * it. It's probably cleaner to allow the runner to exit immediately rather
+	 * than wait for a listener to trigger one.
+	 * 
+	 * Note that the model will not stop in the case where a restart has been
+	 * requested, and listener's will be notified of a model stop before
+	 * actually closing. This gives output control listeners -- for a parameter
+	 * sweep control, for example -- an opportunity to set restart to request a
+	 * restart. It also implies that it makes no sense to have autoRestart true
+	 * if this value is also true. Since auto-restart is by default true, be
+	 * sure to set it to false.
+	 * 
+	 * This setting can be safely changed during a model run.
+	 * 
+	 * @param closeOnStop
+	 *            whether to complete run on model stop; default is false
+	 */
+	public void setCloseOnStop(boolean closeOnStop) {
+		this.closeOnStop = closeOnStop;
+	}
 
-    // public Object getAdapter(Object adaptableObject, Class adapterType) {
-    // if (adapterType == IExecutor.class) {
-    // return runnerForModel.get(adaptableObject);
-    // } else if (adapterType == IModel.class) {
-    // return modelForRunner.get(adaptableObject);
-    // }
-    // return null;
-    // }
-    //
-    // public Class[] getAdapterList() {
-    // return new Class[]{Scape.class, IModel.class};
-    // }
+	// public Object getAdapter(Object adaptableObject, Class adapterType) {
+	// if (adapterType == IExecutor.class) {
+	// return runnerForModel.get(adaptableObject);
+	// } else if (adapterType == IModel.class) {
+	// return modelForRunner.get(adaptableObject);
+	// }
+	// return null;
+	// }
+	//
+	// public Class[] getAdapterList() {
+	// return new Class[]{Scape.class, IModel.class};
+	// }
 
-    // public static boolean listenerRegister(Model target, Object listener) {
-    // return registeredListeners.put(target, listener.getClass()) == null;
-    // }
-    //
-    // public static void addSingletonViewers(Model target, EditPart registor) {
-    // if (!listenerRegister(target, ControlViewProxy.class)) {
-    // model.addView(new ControlViewProxy(registor));
-    // }
-    // IStatusLineManager status =
-    // getEditorSite().getActionBars().getStatusLineManager();
-    // model.addView(new StatusLineView(status));
-    // }
+	// public static boolean listenerRegister(Model target, Object listener) {
+	// return registeredListeners.put(target, listener.getClass()) == null;
+	// }
+	//
+	// public static void addSingletonViewers(Model target, EditPart registor) {
+	// if (!listenerRegister(target, ControlViewProxy.class)) {
+	// model.addView(new ControlViewProxy(registor));
+	// }
+	// IStatusLineManager status =
+	// getEditorSite().getActionBars().getStatusLineManager();
+	// model.addView(new StatusLineView(status));
+	// }
 }
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.testing.ide/src/org/eclipse/amp/amf/testing/ide/ExecuteTestHandler.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.testing.ide/src/org/eclipse/amp/amf/testing/ide/ExecuteTestHandler.java
index 53f98a4..2efa967 100644
--- a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.testing.ide/src/org/eclipse/amp/amf/testing/ide/ExecuteTestHandler.java
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.testing.ide/src/org/eclipse/amp/amf/testing/ide/ExecuteTestHandler.java
@@ -62,7 +62,6 @@
             }
             Runner.setDisplayGraphics(false);
 
-
             new TestRunSet(project, res, testResources, getRunsPerTest()).run();
         }
         return null;
diff --git a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.testing.ide/src/org/eclipse/amp/amf/testing/ide/TestRun.java b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.testing.ide/src/org/eclipse/amp/amf/testing/ide/TestRun.java
index d1e7567..95b9558 100644
--- a/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.testing.ide/src/org/eclipse/amp/amf/testing/ide/TestRun.java
+++ b/org.eclipse.amp.escape/plugins/org.eclipse.amp.escape.testing.ide/src/org/eclipse/amp/amf/testing/ide/TestRun.java
@@ -23,6 +23,7 @@
 import org.eclipse.amp.amf.parameters.AParInterpreter;
 import org.eclipse.amp.amf.parameters.aPar.AParFactory;
 import org.eclipse.amp.amf.parameters.aPar.Parameter;
+import org.eclipse.amp.amf.parameters.aPar.SingleParameter;
 import org.eclipse.amp.amf.testing.ATestInterpreter;
 import org.eclipse.amp.amf.testing.aTest.ATestFactory;
 import org.eclipse.amp.amf.testing.aTest.Constraint;
@@ -56,262 +57,287 @@
  */
 public class TestRun {
 
-    private final class MonitorParentStatus extends Thread {
-        /**
-         * @param name
-         * @param parentMonitor
-         * @param runner
-         */
-        private MonitorParentStatus(String name) {
-            super(name);
-        }
+	private final class MonitorParentStatus extends Thread {
+		/**
+		 * @param name
+		 * @param parentMonitor
+		 * @param runner
+		 */
+		private MonitorParentStatus(String name) {
+			super(name);
+		}
 
-        public void run() {
-            while (!runner.isRunning()) {
-                try {
-                    Thread.sleep(10);
-                } catch (InterruptedException e) {
-                }
-            }
-            while (runner.isRunning()) {
-                if (parentMonitor.isCanceled() && !runner.isCloseRequested()) {
-                    runner.close();
-                }
-                try {
-                    Thread.sleep(200);
-                } catch (InterruptedException e) {
-                }
-            }
-        }
-    }
+		public void run() {
+			while (!runner.isRunning()) {
+				try {
+					Thread.sleep(10);
+				} catch (InterruptedException e) {
+				}
+			}
+			while (runner.isRunning()) {
+				if (parentMonitor.isCanceled() && !runner.isCloseRequested()) {
+					runner.close();
+				}
+				try {
+					Thread.sleep(200);
+				} catch (InterruptedException e) {
+				}
+			}
+		}
+	}
 
-    EclipseEscapeRunner runner;
+	EclipseEscapeRunner runner;
 
-    private Run run;
+	private Run run;
 
-    private boolean success;
+	private boolean success;
 
-    private RunSet runSet;
+	private RunSet runSet;
 
-    private IProject project;
+	private IProject project;
 
-    private TestRunSet testRunSet;
+	private TestRunSet testRunSet;
 
-    private Resource aTestEMFResource;
+	private Resource aTestEMFResource;
 
-    private Model aTest;
+	private Model aTest;
 
-    private AParInterpreter aParInterpreter;
+	private AParInterpreter aParInterpreter;
 
-    private org.eclipse.amp.amf.parameters.aPar.Model aPar;
+	private org.eclipse.amp.amf.parameters.aPar.Model aPar;
 
-    private SContext rootContext;
+	private SContext rootContext;
 
-    private IInterpreterProvider aParPool;
+	private IInterpreterProvider aParPool;
 
-    boolean loading;
+	boolean loading;
 
-    private IProgressMonitor parentMonitor;
+	private IProgressMonitor parentMonitor;
 
-    private MultiStatus status;
+	private MultiStatus status;
 
-    private boolean cancelled;
+	private boolean cancelled;
 
-    public TestRun(TestRunSet testRunSet, RunSet runSet, IProject project, Resource atestResource,
-            IInterpreterProvider aParPool) {
-        this.testRunSet = testRunSet;
-        this.runSet = runSet;
-        this.project = project;
-        this.aTestEMFResource = atestResource;
-        this.aParPool = aParPool;
-    }
+	public TestRun(TestRunSet testRunSet, RunSet runSet, IProject project,
+			Resource atestResource, IInterpreterProvider aParPool) {
+		this.testRunSet = testRunSet;
+		this.runSet = runSet;
+		this.project = project;
+		this.aTestEMFResource = atestResource;
+		this.aParPool = aParPool;
+	}
 
-    // public TestRun(TestRunSet testRunSet, RunSet runSet, IProject project, IResource atestResource,
-    // IInterpreterProvider atestProvider) {
-    // this.testRunSet = testRunSet;
-    // this.runSet = runSet;
-    // this.project = project;
-    // this.aTestResource = atestResource;
-    // }
+	// public TestRun(TestRunSet testRunSet, RunSet runSet, IProject project,
+	// IResource atestResource,
+	// IInterpreterProvider atestProvider) {
+	// this.testRunSet = testRunSet;
+	// this.runSet = runSet;
+	// this.project = project;
+	// this.aTestResource = atestResource;
+	// }
 
+	private void loadInterpreter() {
+		loading = true;
+		Job loadTest = new Job("Load "
+				+ aTestEMFResource.getURI().trimFileExtension().lastSegment()) {
+			protected IStatus run(IProgressMonitor monitor) {
+				try {
+					loadTest();
+					run = AresFactoryImpl.eINSTANCE.createRun();
+					run.setResult(ResultType.INCOMPLETE);
+					run.setParameterization(aPar);
+					// Note that we need to clone for case where constraints or
+					// parameters change.
+					run.setModel(rootContext);
+					for (Constraint constraint : aTest.getContraints()) {
+						Constraint shallowCopy = ATestFactory.eINSTANCE
+								.createConstraint();
+						shallowCopy.setAgent(constraint.getAgent());
+						shallowCopy.setAttribute(constraint.getAttribute());
+						shallowCopy.setMaxValue((Value) EcoreUtil
+								.copy(constraint.getMaxValue()));
+						shallowCopy.setMinValue((Value) EcoreUtil
+								.copy(constraint.getMinValue()));
+						shallowCopy.setMeasure(constraint.getMeasure());
+						shallowCopy.setQualifier(constraint.getQualifier());
+						run.getConstraints().add(shallowCopy);
+					}
+					for (Parameter param : aPar.getParameters()) {
+						if (param instanceof SingleParameter) {
+							SingleParameter sp = (SingleParameter) param;
+							SingleParameter shallowCopy = AParFactory.eINSTANCE
+									.createSingleParameter();
+							shallowCopy.setAttribute(sp.getAttribute());
+							shallowCopy.setValue((Value) EcoreUtil.copy(sp
+									.getValue()));
+							run.getParameters().add(shallowCopy);
+						}
+					}
+					run.setTest(aTest);
+					run.setStarted(new Date());
+					run.setResult(ResultType.INCOMPLETE);
+					loading = false;
+					if (monitor.isCanceled()) {
+						cancelled = true;
+						return Status.CANCEL_STATUS;
+					}
+					return Status.OK_STATUS;
+				} catch (RuntimeException e) {
+					testRunSet.testComplete(TestRun.this, e);
+					cancelled = true;
+					return new Status(IStatus.ERROR,
+							"org.eclipse.amp.escape.testing.ide",
+							"Couldn't load interpreter file for "
+									+ aTestEMFResource.getURI(), e);
+				}
+			}
+		};
+		loadTest.setPriority(Job.LONG);
+		loadTest.schedule();
+		while (loading == true) {
+			try {
+				Thread.sleep(50);
+			} catch (InterruptedException e) {
+			}
+		}
+	}
 
-    private void loadInterpreter() {
-        loading = true;
-        Job loadTest = new Job("Load " + aTestEMFResource.getURI().trimFileExtension().lastSegment()) {
-            protected IStatus run(IProgressMonitor monitor) {
-                try {
-                    loadTest();
-                    run = AresFactoryImpl.eINSTANCE.createRun();
-                    run.setResult(ResultType.INCOMPLETE);
-                    run.setParameterization(aPar);
-                    // Note that we need to clone for case where constraints or parameters change.
-                    run.setModel(rootContext);
-                    for (Constraint constraint : aTest.getContraints()) {
-                        Constraint shallowCopy = ATestFactory.eINSTANCE.createConstraint();
-                        shallowCopy.setAgent(constraint.getAgent());
-                        shallowCopy.setAttribute(constraint.getAttribute());
-                        shallowCopy.setMaxValue((Value) EcoreUtil.copy(constraint.getMaxValue()));
-                        shallowCopy.setMinValue((Value) EcoreUtil.copy(constraint.getMinValue()));
-                        shallowCopy.setMeasure(constraint.getMeasure());
-                        shallowCopy.setQualifier(constraint.getQualifier());
-                        run.getConstraints().add(shallowCopy);
-                    }
-                    for (Parameter param : aPar.getParameters()) {
-                        Parameter shallowCopy = AParFactory.eINSTANCE.createParameter();
-                        shallowCopy.setAttribute(param.getAttribute());
-                        shallowCopy.setValue((Value) EcoreUtil.copy(param.getValue()));
-                        run.getParameters().add(shallowCopy);
-                    }
-                    run.setTest(aTest);
-                    run.setStarted(new Date());
-                    run.setResult(ResultType.INCOMPLETE);
-                    loading = false;
-                    if (monitor.isCanceled()) {
-                        cancelled = true;
-                        return Status.CANCEL_STATUS;
-                    }
-                    return Status.OK_STATUS;
-                } catch (RuntimeException e) {
-                    testRunSet.testComplete(TestRun.this, e);
-                    cancelled = true;
-                    return new Status(IStatus.ERROR, "org.eclipse.amp.escape.testing.ide",
-                                      "Couldn't load interpreter file for " + aTestEMFResource.getURI(), e);
-                }
-            }
-        };
-        loadTest.setPriority(Job.LONG);
-        loadTest.schedule();
-        while (loading == true) {
-            try {
-                Thread.sleep(50);
-            } catch (InterruptedException e) {
-            }
-        }
-    }
+	public void loadTest() {
+		aTest = (Model) aTestEMFResource.getContents().get(0);
 
-    public void loadTest() {
-        aTest = (Model) aTestEMFResource.getContents().get(0);
+		URI aparURI = ATestInterpreter.getParameterURI(aTestEMFResource);
+		Resource aparAnalog = testRunSet.getResourceSet().getResource(aparURI,
+				true);
+		if (aparAnalog == null) {
+			StatusManager.getManager().handle(
+					new Status(Status.WARNING,
+							"org.eclipse.amp.amf.parameters",
+							"Couldn't locate apar resource."));
+		} else {
+			aParInterpreter = (AParInterpreter) aParPool
+					.getInterpreter(aparURI);
+			aPar = aParInterpreter.getModel();
+			Resource agentModelResource = testRunSet
+					.getResourceSet()
+					.getResource(
+							URI.createURI(
+									AParInterpreter.convertURI(aPar.getModel()),
+									true), true);
+			rootContext = (SContext) agentModelResource.getContents().get(0);
+		}
+	}
 
-        URI aparURI = ATestInterpreter.getParameterURI(aTestEMFResource);
-        Resource aparAnalog = testRunSet.getResourceSet().getResource(aparURI, true);
-        if (aparAnalog == null) {
-            StatusManager.getManager().handle(
-                                              new Status(Status.WARNING, "org.eclipse.amp.amf.parameters",
-                                              "Couldn't locate apar resource."));
-        } else {
-            aParInterpreter = (AParInterpreter) aParPool.getInterpreter(aparURI);
-            aPar = aParInterpreter.getModel();
-            Resource agentModelResource = testRunSet.getResourceSet()
-            .getResource(
-                         URI.createURI(AParInterpreter
-                                       .convertURI(aPar.getModel()),
-                                       true), true);
-            rootContext = (SContext) agentModelResource.getContents().get(0);
-        }
-    }
+	private void run() {
+		runner = new EclipseEscapeRunner() {
+			private static final long serialVersionUID = 1L;
 
-    private void run() {
-        runner = new EclipseEscapeRunner() {
-            private static final long serialVersionUID = 1L;
+			protected synchronized void runMainLoop() {
+				try {
+					super.runMainLoop();
+					if (!parentMonitor.isCanceled() && getMonitor() != null
+							&& !getMonitor().isCanceled()) {
+						evaluateTest();
+					}
+					close();
+					testRunSet.testComplete(TestRun.this, null);
+				} catch (Error e) {
+					// We need to handle OOM and ThreadDeath gracefully...
+					run.setResult(ResultType.ERROR);
+					close();
+					testRunSet.testComplete(TestRun.this, e);
+				} catch (RuntimeException e) {
+					run.setResult(ResultType.ERROR);
+					close();
+					testRunSet.testComplete(TestRun.this, e);
+				}
+			}
 
-            protected synchronized void runMainLoop() {
-                try {
-                    super.runMainLoop();
-                    if (!parentMonitor.isCanceled() && getMonitor() != null && !getMonitor().isCanceled()) {
-                        evaluateTest();
-                    }
-                    close();
-                    testRunSet.testComplete(TestRun.this, null);
-                } catch (Error e) {
-                    // We need to handle OOM and ThreadDeath gracefully...
-                    run.setResult(ResultType.ERROR);
-                    close();
-                    testRunSet.testComplete(TestRun.this, e);
-                } catch (RuntimeException e) {
-                    run.setResult(ResultType.ERROR);
-                    close();
-                    testRunSet.testComplete(TestRun.this, e);
-                }
-            }
+			/**
+			 * @param args
+			 * @param block
+			 * @see org.ascape.runtime.Runner#openImplementation(java.lang.String[],
+			 *      boolean)
+			 */
+			public void openImplementation(String[] args, boolean block) {
+				aParInterpreter.assignValues(new Object[] { getRootScape(),
+						this }, status);
+				super.openImplementation(args, block);
+			}
 
-            /**
-             * @param args
-             * @param block
-             * @see org.ascape.runtime.Runner#openImplementation(java.lang.String[], boolean)
-             */
-            public void openImplementation(String[] args, boolean block) {
-                aParInterpreter.assignValues(new Object[] { getRootScape(), this }, status);
-                super.openImplementation(args, block);
-            }
+		};
+		new MonitorParentStatus("Watch Run Set Monitor").start();
+		runner.setAutoRestart(false);
+		runner.open(project,
+				rootContext.getImplementation().getQualifiedName(),
+				aTest.eResource().getURI().trimFileExtension().lastSegment(),
+				new String[] {}, false);
+	}
 
-        };
-        new MonitorParentStatus("Watch Run Set Monitor").start();
-        runner.setAutoRestart(false);
-        runner.open(project, rootContext.getImplementation().getQualifiedName(), aTest.eResource()
-                    .getURI()
-                    .trimFileExtension().lastSegment(), new String[] {}, false);
-    }
+	protected void runTest(final IProgressMonitor parentMonitor,
+			final MultiStatus status, boolean block) {
+		this.parentMonitor = parentMonitor;
+		this.status = status;
+		loadInterpreter();
+		if (!cancelled && !parentMonitor.isCanceled()) {
+			run();
+		}
+	}
 
-    protected void runTest(final IProgressMonitor parentMonitor, final MultiStatus status, boolean block) {
-        this.parentMonitor = parentMonitor;
-        this.status = status;
-        loadInterpreter();
-        if (!cancelled && !parentMonitor.isCanceled()) {
-            run();
-        }
-    }
+	private void evaluateTest() {
+		success = true;
+		for (Constraint constraint : run.getConstraints()) {
+			String constraintName = constraint.getMeasure().getLiteral() + " "
+					+ constraint.getAgent().getLabel() + " ";
+			if (constraint.getQualifier() != null) {
+				constraintName += constraint.getQualifier().getLabel() + " ";
+			}
+			if (constraint.getAttribute().getSType() == SAttributeType.BOOLEAN_LITERAL) {
+				constraintName += "is ";
+			}
+			constraintName += constraint.getAttribute().getLabel();
+			int seriesIndex = runner.getData().getIndexOfSeries(constraintName);
+			if (seriesIndex >= 0) {
+				DataSeries ds = runner.getData().getSeries(constraintName);
+				if (ds != null) {
+					if (ds.getValue() < ATestInterpreter.doubleValue(constraint
+							.getMinValue())) {
+						result(constraint, Issue.BELOW_RANGE, ds.getValue());
+					} else if (ds.getValue() > ATestInterpreter
+							.doubleValue(constraint.getMaxValue())) {
+						result(constraint, Issue.ABOVE_RANGE, ds.getValue());
+					} else {
+						result(constraint, Issue.NONE, ds.getValue());
+					}
+				} else {
+					result(constraint, Issue.NOT_FOUND, Double.NaN);
+				}
+			} else {
+				status.add(new Status(Status.ERROR,
+						"org.eclipse.amp.amf.testing",
+						"Data Series not found for:" + constraintName));
+				result(constraint, Issue.NOT_FOUND, Double.NaN);
+			}
+		}
+		if (success) {
+			run.setResult(ResultType.SUCCESS);
+		} else {
+			run.setResult(ResultType.FAILURE);
+		}
+		run.setFinished(new Date());
+	}
 
-    private void evaluateTest() {
-        success = true;
-        for (Constraint constraint : run.getConstraints()) {
-            String constraintName = constraint.getMeasure().getLiteral() + " " + constraint.getAgent().getLabel() + " ";
-            if (constraint.getQualifier() != null) {
-                constraintName += constraint.getQualifier().getLabel() + " ";
-            }
-            if (constraint.getAttribute().getSType() == SAttributeType.BOOLEAN_LITERAL) {
-                constraintName += "is ";
-            }
-            constraintName += constraint.getAttribute().getLabel();
-            int seriesIndex = runner.getData().getIndexOfSeries(constraintName);
-            if (seriesIndex >= 0) {
-                DataSeries ds = runner.getData().getSeries(constraintName);
-                if (ds != null) {
-                    if (ds.getValue() < ATestInterpreter.doubleValue(constraint.getMinValue())) {
-                        result(constraint, Issue.BELOW_RANGE, ds.getValue());
-                    } else if (ds.getValue() > ATestInterpreter.doubleValue(constraint.getMaxValue())) {
-                        result(constraint, Issue.ABOVE_RANGE, ds.getValue());
-                    } else {
-                        result(constraint, Issue.NONE, ds.getValue());
-                    }
-                } else {
-                    result(constraint, Issue.NOT_FOUND, Double.NaN);
-                }
-            } else {
-                status.add(new Status(Status.ERROR, "org.eclipse.amp.amf.testing", "Data Series not found for:"
-                                      + constraintName));
-                result(constraint, Issue.NOT_FOUND, Double.NaN);
-            }
-        }
-        if (success) {
-            run.setResult(ResultType.SUCCESS);
-        } else {
-            run.setResult(ResultType.FAILURE);
-        }
-        run.setFinished(new Date());
-    }
+	private void result(Constraint constraint, Issue issue, double value) {
+		ConstraintTest res = AresFactoryImpl.eINSTANCE.createConstraintTest();
+		run.getResults().add(res);
+		res.setConstraint(constraint);
+		res.setActualValue(value);
+		res.setIssue(issue);
+		if (issue != Issue.NONE) {
+			success = false;
+		}
+	}
 
-    private void result(Constraint constraint, Issue issue, double value) {
-        ConstraintTest res = AresFactoryImpl.eINSTANCE.createConstraintTest();
-        run.getResults().add(res);
-        res.setConstraint(constraint);
-        res.setActualValue(value);
-        res.setIssue(issue);
-        if (issue != Issue.NONE) {
-            success = false;
-        }
-    }
-
-    public Run getRun() {
-        return run;
-    }
+	public Run getRun() {
+		return run;
+	}
 }
diff --git a/releng/org.eclipse.amp.build-feature/buckminster.cspex b/releng/org.eclipse.amp.build-feature/buckminster.cspex
index 44fe707..3b6c865 100644
--- a/releng/org.eclipse.amp.build-feature/buckminster.cspex
+++ b/releng/org.eclipse.amp.build-feature/buckminster.cspex
@@ -43,23 +43,6 @@
 			</cs:prerequisites>
 			<cs:products alias="output" base="${buckminster.output}/zips/" />
 		</cs:public>
-		
-		<cs:public name="package.amp-runtime" actor="ant">
-			<cs:actorProperties>
-				<cs:property key="buildFile" value="packaging.ant" />
-				<cs:property key="targets" value="package.ius" />
-			</cs:actorProperties>
-			<cs:properties>
-				<cs:property key="content.ius"
-					value="org.eclipse.amp.runtime.feature.group" />
-				<cs:property key="package.name" value="amp-runtime" />
-			</cs:properties>
-			<cs:prerequisites>
-				<cs:attribute name="site.p2" alias="repository" />
-				<cs:attribute name="site.tp" alias="target.platform.repository" />
-			</cs:prerequisites>
-			<cs:products alias="output" base="${buckminster.output}/zips/" />
-		</cs:public>
 
 		<cs:public name="package.amp-Examples" actor="ant">
 			<cs:actorProperties>
@@ -110,7 +93,11 @@
 		<cs:public name="build">
 			<cs:attribute name="package.amp-Update" />
  			<cs:attribute name="package.amp-SDK" />
+<<<<<<< HEAD
+		<!--		<cs:attribute name="package.amp-runtime" />
+=======
 	<!--			<cs:attribute name="package.amp-runtime" />
+>>>>>>> recovered-2
 		<cs:attribute name="package.amp-Examples" />
 			<cs:attribute name="package.amp-sourcedoc" /> -->
 		</cs:public>
diff --git a/releng/org.eclipse.amp.build-feature/feature.xml b/releng/org.eclipse.amp.build-feature/feature.xml
index af4a80a..6ea5828 100644
--- a/releng/org.eclipse.amp.build-feature/feature.xml
+++ b/releng/org.eclipse.amp.build-feature/feature.xml
@@ -29,9 +29,12 @@
    <includes
          id="org.eclipse.amp.test"
          version="0.0.0"/>
+<<<<<<< HEAD
+=======
 
    <includes
          id="org.eclipse.amp.agf3d"
          version="0.0.0"/>
+>>>>>>> recovered-2
 
 </feature>
diff --git a/releng/org.eclipse.amp.releng/promoter.ant b/releng/org.eclipse.amp.releng/promoter.ant
index 8e4531c..48d1326 100644
--- a/releng/org.eclipse.amp.releng/promoter.ant
+++ b/releng/org.eclipse.amp.releng/promoter.ant
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project name="Promoter-Publisher" default="publish.build">
+<project name="Promoter / Publisher" default="publish.build">
 	<property name="promoter.properties.file.name" value="promote.properties" />
 	<property name="publisher.properties.file.name" value="publisher.properties" />
 
@@ -18,8 +18,11 @@
 			<entry key="eclipse.home" value="${eclipse.home}" />
 			<entry key="build.id" value="${build.id}" />
 			<entry key="hudson.build.id" value="${hudson.build.id}" />
+<<<<<<< HEAD
+=======
 			<entry key="packages.base" value="amp.downloads" />
 			<entry key="downloads.area" value="/home/data/httpd/download.eclipse.org/amp" />
+>>>>>>> recovered-2
 		</propertyfile>
 
 		<!-- diagnostics
@@ -44,7 +47,8 @@
 	<target name="setup.publisher">
 		<property environment="env." />
 
-		<fail message="WORKSPACE not present in the environment, can't continue" unless="env.WORKSPACE" />
+		<fail message="WORKSPACE not present in the evironment, can't continue" unless="env.WORKSPACE" />
+		<fail message="PROMOTED_URL not present in the evironment, can't continue" unless="env.PROMOTED_URL" />
 
 		<!-- default publisher root -->
 		<property name="publisher.root" location="${env.WORKSPACE}/publishroot" />
@@ -54,12 +58,12 @@
 
 		<copy tofile="${publisher.root}/publisher.ant" file="${ant.file}" />
 
-		<property name="promoter.properties.file" value="${env.WORKSPACE}/${promoter.properties.file.name}" />
+		<property name="promoter.properties.file.url" value="${env.PROMOTED_URL}/artifact/${promoter.properties.file.name}" />
 
 		<!-- load the promoter properties using the PROMOTED_URL supplied by Hudson -->
-		<property prefix="saved." file="${promoter.properties.file}" />
+		<property prefix="saved." url="${promoter.properties.file.url}" />
 
-		<fail message="hudson.build.id not defined in ${promoter.properties.file}, can't continue">
+		<fail message="hudson.build.id not defined in ${promoter.properties.file.url}, can't continue">
 			<condition>
 				<not>
 					<and>
@@ -70,7 +74,7 @@
 			</condition>
 		</fail>
 
-		<property name="build.root" location="/opt/public/jobs/${env.JOB_NAME}/builds/${saved.hudson.build.id}" />
+		<property name="build.root" location="${env.WORKSPACE}/../builds/${saved.hudson.build.id}" />
 
 		<echoproperties destfile="${publisher.root}/${publisher.properties.file.name}">
 			<propertyset>
@@ -82,9 +86,8 @@
 	</target>
 
 	<target name="publish.build">
-		<property file="${publisher.properties.file.name}" />
 		<fail message="build.root property must be defined" unless="build.root" />
-
+		<property file="${publisher.properties.file.name}" />
 		<property name="property.file.location" location="${build.root}/archive/${promoter.properties.file.name}" />
 		<property name="property.load.prefix" value="saved." />
 
@@ -111,7 +114,7 @@
 			<isset property="saved.java.home" />
 		</condition>
 		<tempfile property="publisher.workspace" prefix="workspace." destdir="${java.io.tmpdir}" />
-
+		<echo>Used launcher: ${launcher.jar}</echo>
 		<java jvm="${java.executable}" jar="${launcher.jar}" fork="true" failonerror="true">
 			<syspropertyset>
 				<propertyref builtin="commandline" />
@@ -131,8 +134,11 @@
 			somewhat more complicated than simple <delete dir="${publisher.workspace}" />
 			but this way it does not produce the "Deleting directory" message
 		-->
-		<delete includeemptydirs="true" quiet="true">
-			<fileset dir="${publisher.workspace}" includes="**/*"/>
+		<delete dir="${publisher.workspace}" includeemptydirs="true" quiet="true">
+			<or>
+				<type type="dir" />
+				<type type="file" />
+			</or>
 		</delete>
 	</target>
 
@@ -151,20 +157,36 @@
 				</not>
 			</condition>
 		</fail>
-		<fail message="saved.build.root property must be defined" unless="saved.build.root" />
-		<fail message="saved.packages.base property must be defined" unless="saved.packages.base" />
-		<fail message="saved.downloads.area property must be defined" unless="saved.downloads.area" />
+		<property file="${publisher.properties.file.name}" />
+		<fail message="build.root property must be defined" unless="build.root" />
+		<fail message="downloads.area property must be defined" unless="downloads.area" />
 
 		<!-- defaults -->
-		<property name="version" value="0.9.0" />
+		<property name="version" value="0.8.0" />
+		<property name="packages.base" value="downloads" />
+		<property name="tests.base" value="test.results" />
 
-		<property name="packages.directory" location="${saved.build.root}/archive/${saved.packages.base}" />
+		<property name="packages.directory" location="${build.root}/archive/${packages.base}" />
+		<property name="testresults.directory" location="${build.root}/archive/${tests.base}" />
 
-		<property name="build.drop.directory" location="${saved.downloads.area}/downloads/drops/${version}/${saved.build.id}" />
+		<property name="build.drop.directory" location="${downloads.area}/drops/${version}/${saved.build.id}" />
+		<available file="${build.drop.directory}" type="dir" property="alreadyPromoted" />
+		<antcall target="publish" inheritall="true" />
+		<antcall target="echo-status" inheritall="true" />
+	</target>
 
-		<delete dir="${build.drop.directory}" />
+	<target name="publish" unless="alreadyPromoted">
+		<!-- will fail if already exists -->
 		<mkdir dir="${build.drop.directory}" />
 
+		<echo>Remove existing nightly builds</echo>
+		<delete verbose="true">
+			<fileset dir="${downloads.area}/drops/${version}/">
+				<type type="dir" />
+				<filename name="N*" />
+			</fileset>
+		</delete>
+
 		<!-- copy zip packages -->
 		<copy todir="${build.drop.directory}">
 			<fileset dir="${packages.directory}">
@@ -175,8 +197,14 @@
 		<checksum algorithm="MD5" fileext=".md5" format="MD5SUM">
 			<fileset dir="${build.drop.directory}" />
 		</checksum>
-		<!-- copy buildlog -->
-		<copy tofile="${build.drop.directory}/buildlog.txt" file="${saved.build.root}/log" />
+
+		<!-- copy testresults -->
+		<mkdir dir="${build.drop.directory}/testresults" />
+		<copy todir="${build.drop.directory}/testresults">
+			<fileset dir="${testresults.directory}">
+				<filename name="**/*.xml" />
+			</fileset>
+		</copy>
 
 		<fileset id="drop.resources" dir="${build.drop.directory}">
 			<or>
@@ -194,41 +222,48 @@
 		<buckminster.substitute value="${version}" pattern="^(\d+\.\d+)\.\d+.*$" replacement="$$1" property="base.version" />
 
 		<!-- setup composite.repository.base appropriate to the build type -->
-		<condition property="composite.repository.base" value="interim/${base.version}">
+		<condition property="composite.repository.base" value="nightly">
+			<matches pattern="^N" string="${saved.build.id}" />
+		</condition>
+		<condition property="composite.repository.base" value="interim">
 			<matches pattern="^I" string="${saved.build.id}" />
 		</condition>
-		<condition property="composite.repository.base" value="milestones/${base.version}">
+		<condition property="composite.repository.base" value="milestones/${saved.build.id}">
 			<matches pattern="^[MS]" string="${saved.build.id}" />
 		</condition>
 		<condition property="composite.repository.base" value="releases/${base.version}">
 			<matches pattern="^R" string="${saved.build.id}" />
 		</condition>
-		<condition property="composite.repository.base" value="nightly/${base.version}">
-			<matches pattern="^N" string="${saved.build.id}" />
-		</condition>
+
 		<antcall target="-publish.build.repository" inheritall="true" />
 	</target>
 
 	<target name="-publish.build.repository" if="composite.repository.base">
-		<property name="composite.repository.directory" location="${saved.downloads.area}/updates/${composite.repository.base}" />
-		<property name="composite.repository.url" value="file:/${composite.repository.directory}" />
-		<property name="build.repository.directory" location="${composite.repository.directory}/${saved.build.id}" />
 
-		<delete dir="${build.repository.directory}" />
-		<mkdir dir="${build.repository.directory}" />
+		<property name="composite.repository.directory" location="${downloads.area}/updates/${composite.repository.base}" />
+		<property name="composite.repository.url" value="file:/${composite.repository.directory}" />
+		<!-- 
+			without p2.composite.repository
+			<property name="build.repository.directory" location="${composite.repository.directory}/${saved.build.id}" />
+		 -->
+		<property name="build.repository.directory" location="${composite.repository.directory}" />
+
+		<deltree dir="${build.repository.directory}" />
 
 		<unzip dest="${build.repository.directory}">
 			<fileset dir="${packages.directory}">
-				<filename name="emf-amp-Update*.zip" />
+				<filename name="*-Update*.zip" />
 			</fileset>
 		</unzip>
 
-		<p2.composite.repository destination="${composite.repository.url}">
+		<!--<p2.composite.repository destination="${composite.repository.url}">
 			<add>
-				<repository location="${saved.build.id}" />
+ 				<repository location="${saved.build.id}" />
 			</add>
-		</p2.composite.repository>
+		</p2.composite.repository>-->
 
+
+		<!-- change Group owner  -->
 		<fileset id="repository.resources" dir="${composite.repository.directory}">
 			<or>
 				<filename name="compositeContent.*" />
@@ -247,4 +282,8 @@
 			<fileset refid="change.group.owner.resources" />
 		</chgrp>
 	</target>
+
+	<target name="echo-status" if="alreadyPromoted">
+		<echo>Build ${saved.build.id} already promoted, nothing to do...</echo>
+	</target>
 </project>
diff --git a/releng/org.eclipse.amp.releng/publisher.properties b/releng/org.eclipse.amp.releng/publisher.properties
index 205b7cc..3535fec 100644
--- a/releng/org.eclipse.amp.releng/publisher.properties
+++ b/releng/org.eclipse.amp.releng/publisher.properties
@@ -1,4 +1,11 @@
+<<<<<<< HEAD
+version=0.8.0
+packages.base=amp.downloads
+tests.base=amp.test.results
+downloads.area=/home/data/httpd/download.eclipse.org/amp/
+=======
 version=0.8.1
 packages.base=amp.downloads
 tests.base=amp.test.results
-downloads.area=/home/data/httpd/download.eclipse.org/amp/
\ No newline at end of file
+downloads.area=/home/data/httpd/download.eclipse.org/amp/
+>>>>>>> recovered-2
diff --git a/releng/org.eclipse.amp.releng/releng/local.properties b/releng/org.eclipse.amp.releng/releng/local.properties
index 9ff2b6e..bb8ff28 100644
--- a/releng/org.eclipse.amp.releng/releng/local.properties
+++ b/releng/org.eclipse.amp.releng/releng/local.properties
@@ -1,6 +1,6 @@
 # Default locations
-buckminster.output.root=${workspace.root}/cbi-amp-nightly/buckminster.build
-buckminster.temp.root=${workspace.root}/cbi-amp-nightly/buckminster.temp
+buckminster.output.root=${workspace.root}/amp-nightly/buckminster.build
+buckminster.temp.root=${workspace.root}/amp-nightly/buckminster.temp
 
 # Eclipse download mirror default=http://download.eclipse.org
 eclipse.download=http://download.eclipse.org
@@ -18,7 +18,7 @@
 site.retain.unpacked=true
 site.signing=false
 signing.type=eclipse.local
-eclipse.staging.area=${workspace.root}/cbi-amp-nightly/eclipse.staging
+eclipse.staging.area=${workspace.root}/amp-nightly/eclipse.staging
 
 # define the range generation rules for required bundles
 pde.match.rule.default=compatible