diff --git a/.settings/org.eclipse.buildship.core.prefs b/.settings/org.eclipse.buildship.core.prefs
index e8c143f59f7f625da9d9e7f2858e46485cae0b72..52a12ada97239aa7659183911f1661461dae3cf3 100644
--- a/.settings/org.eclipse.buildship.core.prefs
+++ b/.settings/org.eclipse.buildship.core.prefs
@@ -1,2 +1,2 @@
-connection.project.dir=de.ugoe.cs.rwm.mocci.connector
+connection.project.dir=de.ugoe.cs.rwm.mocci.connector.dummy
 eclipse.preferences.version=1
diff --git a/build.gradle b/build.gradle
index e7fb8bcf847f81f8d52c096184518f43cd9696bb..8f1ec3244bee366fc00d694d612d682f37cc8c2a 100644
--- a/build.gradle
+++ b/build.gradle
@@ -129,7 +129,7 @@ javadoc {
     failOnError = true
 }
 test {
-    exclude 'de/ugoe/cs/rwm/mocci/live/**'
+    //exclude 'de/ugoe/cs/rwm/mocci/live/**'
     testLogging.showStandardStreams = true
         testLogging {
         exceptionFormat = 'full'
diff --git a/de.ugoe.cs.rwm.mocci.connector.dummy/bin/.gitignore b/de.ugoe.cs.rwm.mocci.connector.dummy/bin/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..fd04598cccd1eb791debf5b0edfff26368dbb294
--- /dev/null
+++ b/de.ugoe.cs.rwm.mocci.connector.dummy/bin/.gitignore
@@ -0,0 +1 @@
+/de/
diff --git a/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/ConnectorFactory.java b/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/ConnectorFactory.java
index 1676048ef49ea66c0b368c9570178776ab381169..7824ea7a3bbdb929ed295ca83f893f31b9757e59 100644
--- a/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/ConnectorFactory.java
+++ b/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/ConnectorFactory.java
@@ -10,7 +10,7 @@
  * - Philippe Merle <philippe.merle@inria.fr>
  * - Faiez Zalila <faiez.zalila@inria.fr>
  *
- * Generated at Wed Dec 19 10:30:40 CET 2018 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
+ * Generated at Thu Jan 03 13:17:39 CET 2019 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
  */
 package de.ugoe.cs.rwm.mocci.connector;
 
@@ -68,12 +68,23 @@ public class ConnectorFactory extends monitoring.impl.MonitoringFactoryImpl
 	/**
 	 * EFactory method for OCCI kind:
 	 * - scheme: http://schemas.ugoe.cs.rwm/monitoring#
-	 * - term: monitoringproperties
-	 * - title: MonitoringProperty Mixin
+	 * - term: monitoringproperty
+	 * - title: MonitoringProperty Component
 	 */
 	@Override
-	public monitoring.Monitoringproperties createMonitoringproperties() {
-		return new MonitoringpropertiesConnector();
+	public monitoring.Monitoringproperty createMonitoringproperty() {
+		return new MonitoringpropertyConnector();
+	}
+
+	/**
+	 * EFactory method for OCCI kind:
+	 * - scheme: http://schemas.ugoe.cs.rwm/monitoring#
+	 * - term: martpublisher
+	 * - title: MartPublisher Mixin
+	 */
+	@Override
+	public monitoring.Martpublisher createMartpublisher() {
+		return new MartpublisherConnector();
 	}
 
 }
diff --git a/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertiesConnector.java b/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/MartpublisherConnector.java
similarity index 65%
rename from de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertiesConnector.java
rename to de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/MartpublisherConnector.java
index 3286ff50d7e38d66ded1d857d1b22d829ab024f2..a13a97d92f4d442febbd7ad9e98b302cc721ffb8 100644
--- a/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertiesConnector.java
+++ b/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/MartpublisherConnector.java
@@ -10,7 +10,7 @@
  * - Philippe Merle <philippe.merle@inria.fr>
  * - Faiez Zalila <faiez.zalila@inria.fr>
  *
- * Generated at Wed Dec 19 10:30:40 CET 2018 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
+ * Generated at Thu Jan 03 13:17:39 CET 2019 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
  */
 package de.ugoe.cs.rwm.mocci.connector;
 
@@ -22,21 +22,21 @@ import org.slf4j.LoggerFactory;
 /**
  * Connector implementation for the OCCI kind:
  * - scheme: http://schemas.ugoe.cs.rwm/monitoring#
- * - term: monitoringproperties
- * - title: MonitoringProperty Mixin
+ * - term: martpublisher
+ * - title: MartPublisher Mixin
  */
-public class MonitoringpropertiesConnector extends monitoring.impl.MonitoringpropertiesImpl
+public class MartpublisherConnector extends monitoring.impl.MartpublisherImpl
 {
 	/**
 	 * Initialize the logger.
 	 */
-	private static Logger LOGGER = LoggerFactory.getLogger(MonitoringpropertiesConnector.class);
+	private static Logger LOGGER = LoggerFactory.getLogger(MartpublisherConnector.class);
 
-	// Start of user code Monitoringpropertiesconnector_constructor
+	// Start of user code Martpublisherconnector_constructor
 	/**
-	 * Constructs a monitoringproperties connector.
+	 * Constructs a martpublisher connector.
 	 */
-	MonitoringpropertiesConnector()
+	MartpublisherConnector()
 	{
 		LOGGER.debug("Constructor called on " + this);
 		// TODO: Implement this constructor.
diff --git a/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertyConnector.java b/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertyConnector.java
new file mode 100644
index 0000000000000000000000000000000000000000..b012b524827d3e4e96945c4c3c61b49f644155cf
--- /dev/null
+++ b/de.ugoe.cs.rwm.mocci.connector.dummy/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertyConnector.java
@@ -0,0 +1,104 @@
+/**
+ * Copyright (c) 2016-2017 Inria
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 
+ * Contributors:
+ * - Philippe Merle <philippe.merle@inria.fr>
+ * - Faiez Zalila <faiez.zalila@inria.fr>
+ *
+ * Generated at Thu Jan 03 13:17:39 CET 2019 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
+ */
+package de.ugoe.cs.rwm.mocci.connector;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+
+
+/**
+ * Connector implementation for the OCCI kind:
+ * - scheme: http://schemas.ugoe.cs.rwm/monitoring#
+ * - term: monitoringproperty
+ * - title: MonitoringProperty Component
+ */
+public class MonitoringpropertyConnector extends monitoring.impl.MonitoringpropertyImpl
+{
+	/**
+	 * Initialize the logger.
+	 */
+	private static Logger LOGGER = LoggerFactory.getLogger(MonitoringpropertyConnector.class);
+
+	// Start of user code Monitoringpropertyconnector_constructor
+	/**
+	 * Constructs a monitoringproperty connector.
+	 */
+	MonitoringpropertyConnector()
+	{
+		LOGGER.debug("Constructor called on " + this);
+		// TODO: Implement this constructor.
+	}
+	// End of user code
+	//
+	// OCCI CRUD callback operations.
+	//
+	
+	// Start of user code MonitoringpropertyocciCreate
+	/**
+	 * Called when this Monitoringproperty instance is completely created.
+	 */
+	@Override
+	public void occiCreate()
+	{
+		LOGGER.debug("occiCreate() called on " + this);
+		// TODO: Implement this callback or remove this method.
+	}
+	// End of user code
+
+	// Start of user code Monitoringproperty_occiRetrieve_method
+	/**
+	 * Called when this Monitoringproperty instance must be retrieved.
+	 */
+	@Override
+	public void occiRetrieve()
+	{
+		LOGGER.debug("occiRetrieve() called on " + this);
+		// TODO: Implement this callback or remove this method.
+	}
+	// End of user code
+
+	// Start of user code Monitoringproperty_occiUpdate_method
+	/**
+	 * Called when this Monitoringproperty instance is completely updated.
+	 */
+	@Override
+	public void occiUpdate()
+	{
+		LOGGER.debug("occiUpdate() called on " + this);
+		// TODO: Implement this callback or remove this method.
+	}
+	// End of user code
+
+	// Start of user code MonitoringpropertyocciDelete_method
+	/**
+	 * Called when this Monitoringproperty instance will be deleted.
+	 */
+	@Override
+	public void occiDelete()
+	{
+		LOGGER.debug("occiDelete() called on " + this);
+		// TODO: Implement this callback or remove this method.
+	}
+	// End of user code
+
+	//
+	// Monitoringproperty actions.
+	//
+
+		
+
+
+}	
diff --git a/de.ugoe.cs.rwm.mocci.connector/.settings/org.eclipse.buildship.core.prefs b/de.ugoe.cs.rwm.mocci.connector/.settings/org.eclipse.buildship.core.prefs
index e8895216fd3c0c3af4c4522334775f41b7deb42e..dacbfbbb556df1dcb4ebf4c7b408cfe7886777ed 100644
--- a/de.ugoe.cs.rwm.mocci.connector/.settings/org.eclipse.buildship.core.prefs
+++ b/de.ugoe.cs.rwm.mocci.connector/.settings/org.eclipse.buildship.core.prefs
@@ -1,2 +1,2 @@
-connection.project.dir=
+connection.project.dir=../de.ugoe.cs.rwm.mocci.connector.dummy
 eclipse.preferences.version=1
diff --git a/de.ugoe.cs.rwm.mocci.connector/bin/.gitignore b/de.ugoe.cs.rwm.mocci.connector/bin/.gitignore
new file mode 100644
index 0000000000000000000000000000000000000000..fd04598cccd1eb791debf5b0edfff26368dbb294
--- /dev/null
+++ b/de.ugoe.cs.rwm.mocci.connector/bin/.gitignore
@@ -0,0 +1 @@
+/de/
diff --git a/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/ConnectorFactory.java b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/ConnectorFactory.java
index b597b3be34c3023f0b6dc12acb0b8de59c232fcd..f68ca2ebc412cd474c9f1454b0a306a84d9e01b2 100644
--- a/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/ConnectorFactory.java
+++ b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/ConnectorFactory.java
@@ -10,7 +10,7 @@
  * - Philippe Merle <philippe.merle@inria.fr>
  * - Faiez Zalila <faiez.zalila@inria.fr>
  *
- * Generated at Wed Dec 19 11:10:50 CET 2018 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
+ * Generated at Wed Jan 02 16:14:48 CET 2019 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
  */
 package de.ugoe.cs.rwm.mocci.connector;
 
@@ -68,12 +68,23 @@ public class ConnectorFactory extends monitoring.impl.MonitoringFactoryImpl
 	/**
 	 * EFactory method for OCCI kind:
 	 * - scheme: http://schemas.ugoe.cs.rwm/monitoring#
-	 * - term: monitoringproperties
-	 * - title: MonitoringProperty Mixin
+	 * - term: monitoringproperty
+	 * - title: MonitoringProperty Component
 	 */
 	@Override
-	public monitoring.Monitoringproperties createMonitoringproperties() {
-		return new MonitoringpropertiesConnector();
+	public monitoring.Monitoringproperty createMonitoringproperty() {
+		return new MonitoringpropertyConnector();
+	}
+
+	/**
+	 * EFactory method for OCCI kind:
+	 * - scheme: http://schemas.ugoe.cs.rwm/monitoring#
+	 * - term: martpublisher
+	 * - title: MartPublisher Mixin
+	 */
+	@Override
+	public monitoring.Martpublisher createMartpublisher() {
+		return new MartpublisherConnector();
 	}
 
 }
diff --git a/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertiesConnector.java b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/MartpublisherConnector.java
similarity index 65%
rename from de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertiesConnector.java
rename to de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/MartpublisherConnector.java
index 19effac46d8e25b96d98b7bd5ceed86e9a06da2e..9edc371b20c33401495d0e14167e0a17900cf14f 100644
--- a/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertiesConnector.java
+++ b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/MartpublisherConnector.java
@@ -10,7 +10,7 @@
  * - Philippe Merle <philippe.merle@inria.fr>
  * - Faiez Zalila <faiez.zalila@inria.fr>
  *
- * Generated at Wed Dec 19 11:10:50 CET 2018 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
+ * Generated at Wed Jan 02 16:14:48 CET 2019 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
  */
 package de.ugoe.cs.rwm.mocci.connector;
 
@@ -22,21 +22,21 @@ import org.slf4j.LoggerFactory;
 /**
  * Connector implementation for the OCCI kind:
  * - scheme: http://schemas.ugoe.cs.rwm/monitoring#
- * - term: monitoringproperties
- * - title: MonitoringProperty Mixin
+ * - term: martpublisher
+ * - title: MartPublisher Mixin
  */
-public class MonitoringpropertiesConnector extends monitoring.impl.MonitoringpropertiesImpl
+public class MartpublisherConnector extends monitoring.impl.MartpublisherImpl
 {
 	/**
 	 * Initialize the logger.
 	 */
-	private static Logger LOGGER = LoggerFactory.getLogger(MonitoringpropertiesConnector.class);
+	private static Logger LOGGER = LoggerFactory.getLogger(MartpublisherConnector.class);
 
-	// Start of user code Monitoringpropertiesconnector_constructor
+	// Start of user code Martpublisherconnector_constructor
 	/**
-	 * Constructs a monitoringproperties connector.
+	 * Constructs a martpublisher connector.
 	 */
-	MonitoringpropertiesConnector()
+	MartpublisherConnector()
 	{
 		LOGGER.debug("Constructor called on " + this);
 		// TODO: Implement this constructor.
diff --git a/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertyConnector.java b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertyConnector.java
new file mode 100644
index 0000000000000000000000000000000000000000..00b61111cf3b543a0df66f58fe395461f5f124cc
--- /dev/null
+++ b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/MonitoringpropertyConnector.java
@@ -0,0 +1,104 @@
+/**
+ * Copyright (c) 2016-2017 Inria
+ *  
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 
+ * Contributors:
+ * - Philippe Merle <philippe.merle@inria.fr>
+ * - Faiez Zalila <faiez.zalila@inria.fr>
+ *
+ * Generated at Wed Jan 02 16:14:48 CET 2019 from platform:/resource/monitoring/model/monitoring.occie by org.eclipse.cmf.occi.core.gen.connector
+ */
+package de.ugoe.cs.rwm.mocci.connector;
+
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+
+
+/**
+ * Connector implementation for the OCCI kind:
+ * - scheme: http://schemas.ugoe.cs.rwm/monitoring#
+ * - term: monitoringproperty
+ * - title: MonitoringProperty Component
+ */
+public class MonitoringpropertyConnector extends monitoring.impl.MonitoringpropertyImpl
+{
+	/**
+	 * Initialize the logger.
+	 */
+	private static Logger LOGGER = LoggerFactory.getLogger(MonitoringpropertyConnector.class);
+
+	// Start of user code Monitoringpropertyconnector_constructor
+	/**
+	 * Constructs a monitoringproperty connector.
+	 */
+	MonitoringpropertyConnector()
+	{
+		LOGGER.debug("Constructor called on " + this);
+		// TODO: Implement this constructor.
+	}
+	// End of user code
+	//
+	// OCCI CRUD callback operations.
+	//
+	
+	// Start of user code MonitoringpropertyocciCreate
+	/**
+	 * Called when this Monitoringproperty instance is completely created.
+	 */
+	@Override
+	public void occiCreate()
+	{
+		LOGGER.debug("occiCreate() called on " + this);
+		// TODO: Implement this callback or remove this method.
+	}
+	// End of user code
+
+	// Start of user code Monitoringproperty_occiRetrieve_method
+	/**
+	 * Called when this Monitoringproperty instance must be retrieved.
+	 */
+	@Override
+	public void occiRetrieve()
+	{
+		LOGGER.debug("occiRetrieve() called on " + this);
+		// TODO: Implement this callback or remove this method.
+	}
+	// End of user code
+
+	// Start of user code Monitoringproperty_occiUpdate_method
+	/**
+	 * Called when this Monitoringproperty instance is completely updated.
+	 */
+	@Override
+	public void occiUpdate()
+	{
+		LOGGER.debug("occiUpdate() called on " + this);
+		// TODO: Implement this callback or remove this method.
+	}
+	// End of user code
+
+	// Start of user code MonitoringpropertyocciDelete_method
+	/**
+	 * Called when this Monitoringproperty instance will be deleted.
+	 */
+	@Override
+	public void occiDelete()
+	{
+		LOGGER.debug("occiDelete() called on " + this);
+		// TODO: Implement this callback or remove this method.
+	}
+	// End of user code
+
+	//
+	// Monitoringproperty actions.
+	//
+
+		
+
+
+}	
diff --git a/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/PublisherConnector.java b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/PublisherConnector.java
index 3513962efbba6efdcf9f6d5aa1fbec2b03fa42a3..bbc1b2bfd662c6c83339f68a083524e7ff9e685f 100644
--- a/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/PublisherConnector.java
+++ b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/PublisherConnector.java
@@ -14,9 +14,15 @@
  */
 package de.ugoe.cs.rwm.mocci.connector;
 
+import org.eclipse.cmf.occi.core.AttributeState;
+import org.eclipse.cmf.occi.core.Link;
+import org.eclipse.cmf.occi.core.impl.OCCIFactoryImpl;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
+import monitoring.Monitoringproperty;
+import monitoring.Sensor;
+
 
 
 /**
@@ -30,8 +36,10 @@ public class PublisherConnector extends monitoring.impl.PublisherImpl
 	/**
 	 * Initialize the logger.
 	 */
+	private OCCIFactoryImpl factory = new OCCIFactoryImpl();
 	private static Logger LOGGER = LoggerFactory.getLogger(PublisherConnector.class);
-private ComponentManager compMan;
+	private Monitoringproperty monProp;
+	private ComponentManager compMan;
 
 	// Start of user code Publisherconnector_constructor
 	/**
@@ -41,6 +49,7 @@ private ComponentManager compMan;
 	{
 		LOGGER.debug("Constructor called on " + this);
 		this.compMan = new ComponentManager(this);
+		
 		// TODO: Implement this constructor.
 	}
 	// End of user code
@@ -140,9 +149,26 @@ private ComponentManager compMan;
 	@Override
 	public void start()
 	{
+		AttributeState sensorlocation = factory.createAttributeState();
+		sensorlocation.setValue(getContainingSensorLocation());
+		sensorlocation.setName("sensor");
+		System.out.println(sensorlocation);
+		this.attributes.add(sensorlocation);
+		System.out.println(this.attributes);
 		LOGGER.debug("Action start() called on " + this);
 		compMan.start();
-		// TODO: Implement how to start this publisher.
+		//this.attributes.remove(sensorlocation);
+		System.out.println(this.attributes);
+	}
+	
+	
+	private String getContainingSensorLocation() {
+		for(Link link: this.getRlinks()) {
+			if(link.getSource() instanceof Sensor) {
+				return link.getSource().getLocation();
+			}
+		}
+		return "No containing sensor found";
 	}
 	// End of user code
 	// Start of user code Publisher_Kind_configure_action
diff --git a/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/SensorConnector.java b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/SensorConnector.java
index 82d814318bb2a29f1383555cca065b83a3d6c26c..a08bb833696d65a5c1d6c26ea1210ff2aa7186d8 100644
--- a/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/SensorConnector.java
+++ b/de.ugoe.cs.rwm.mocci.connector/src-gen/de/ugoe/cs/rwm/mocci/connector/SensorConnector.java
@@ -131,7 +131,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 			}
 			
 			status = cmtool.configure(this);
-			if (status == 0 && assertCompsStatusEquals(getConnectedComponents(), Status.INACTIVE))
+			if (status == 0)
 				setOcciAppState(Status.INACTIVE);
 			else
 				setOcciAppState(Status.ERROR);
@@ -164,7 +164,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 				component.start();
 			}
 			status = cmtool.start(this);
-			if (status == 0 && assertCompsStatusEquals(getConnectedComponents(), Status.ACTIVE))
+			if (status == 0)
 				setOcciAppState(Status.ACTIVE);
 			else
 				setOcciAppState(Status.ERROR);	
@@ -191,7 +191,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 			}
 			status = cmtool.start(this);
 			
-			if (status == 0 && assertCompsStatusEquals(getConnectedComponents(), Status.ACTIVE))
+			if (status == 0)
 				setOcciAppState(Status.ACTIVE);
 			else
 				setOcciAppState(Status.ERROR);
@@ -224,7 +224,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 				component.stop();
 			}
 			status = cmtool.stop(this);
-			if (status == 0 && assertCompsStatusEquals(getConnectedComponents(), Status.INACTIVE))
+			if (status == 0)
 				setOcciAppState(Status.INACTIVE);
 			else
 				setOcciAppState(Status.ERROR);	
@@ -260,7 +260,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 			}
 			
 			status = cmtool.deploy(this);
-			if (status == 0 && assertCompsStatusEquals(getConnectedComponents(), Status.DEPLOYED))
+			if (status == 0)
 				setOcciAppState(Status.DEPLOYED);
 			else
 				setOcciAppState(Status.ERROR);
@@ -298,7 +298,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 				component.undeploy();
 			}
 			status = cmtool.undeploy(this);
-			if (status == 0 && assertCompsStatusEquals(getConnectedComponents(), Status.UNDEPLOYED))
+			if (status == 0)
 				setOcciAppState(Status.UNDEPLOYED);
 			else
 				setOcciAppState(Status.ERROR);
@@ -309,7 +309,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 				component.undeploy();
 			}
 			status = cmtool.undeploy(this);
-			if (status == 0 && assertCompsStatusEquals(getConnectedComponents(), Status.UNDEPLOYED))
+			if (status == 0)
 				setOcciAppState(Status.UNDEPLOYED);
 			else
 				setOcciAppState(Status.ERROR);
@@ -320,7 +320,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 				component.undeploy();
 			}
 			status = cmtool.undeploy(this);
-			if (status == 0 && assertCompsStatusEquals(getConnectedComponents(), Status.UNDEPLOYED))
+			if (status == 0)
 				setOcciAppState(Status.UNDEPLOYED);
 			else
 				setOcciAppState(Status.ERROR);
@@ -331,7 +331,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 				component.undeploy();
 			}
 			status = cmtool.undeploy(this);
-			if (status == 0 && assertCompsStatusEquals(getConnectedComponents(), Status.UNDEPLOYED))
+			if (status == 0)
 				setOcciAppState(Status.UNDEPLOYED);
 			else
 				setOcciAppState(Status.ERROR);
@@ -354,6 +354,7 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 		
 	}
 	
+	/*
 	private boolean assertCompsStatusEquals(List<Component> components, Status status) {
 		for (Component component: components) {
 			if (component.getOcciComponentState().getValue() != status.getValue()) {
@@ -364,6 +365,6 @@ public class SensorConnector extends monitoring.impl.SensorImpl
 			}
 		}	
 		return true;
-}
+}*/
 
 }	
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/.classpath b/de.ugoe.cs.rwm.mocci.model.edit/.classpath
index ba9563870359d6f6776459965a9a63042a32bfb4..9f26f94005a15116e7455333308dcb80ef6440e6 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/.classpath
+++ b/de.ugoe.cs.rwm.mocci.model.edit/.classpath
@@ -3,5 +3,6 @@
 	<classpathentry kind="src" path="src-gen"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/"/>
 	<classpathentry kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/.settings/org.eclipse.buildship.core.prefs b/de.ugoe.cs.rwm.mocci.model.edit/.settings/org.eclipse.buildship.core.prefs
index 1752c9353159a3382e3f642e31d09b45ee82f7c4..dacbfbbb556df1dcb4ebf4c7b408cfe7886777ed 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/.settings/org.eclipse.buildship.core.prefs
+++ b/de.ugoe.cs.rwm.mocci.model.edit/.settings/org.eclipse.buildship.core.prefs
@@ -1,2 +1,2 @@
-connection.project.dir=../de.ugoe.cs.rwm.mocci.connector
+connection.project.dir=../de.ugoe.cs.rwm.mocci.connector.dummy
 eclipse.preferences.version=1
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/icons/full/obj16/Martpublisher.gif b/de.ugoe.cs.rwm.mocci.model.edit/icons/full/obj16/Martpublisher.gif
new file mode 100644
index 0000000000000000000000000000000000000000..420eee177528d9bd6d862c38d2a66c14835a6140
Binary files /dev/null and b/de.ugoe.cs.rwm.mocci.model.edit/icons/full/obj16/Martpublisher.gif differ
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/plugin.properties b/de.ugoe.cs.rwm.mocci.model.edit/plugin.properties
index 0c40c4969e0d1e52d3ef8fa864523644004e3b11..e2bbd985d07943c4c5745fb01d94120518798c44 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/plugin.properties
+++ b/de.ugoe.cs.rwm.mocci.model.edit/plugin.properties
@@ -73,3 +73,11 @@ _UI_MonitoringProperty_value_feature = Value
 _UI_MonitoringProperty_Id_feature = Id
 _UI_MonitoringPropertyArray_monitoringpropertyarrayValues_feature = Monitoringpropertyarray Values
 _UI_Monitoringproperties_monitoringProperties_feature = Monitoring Properties
+_UI_Monitoringproperty_monitoringPropertyResource_feature = Monitoring Property Resource
+_UI_Martpublisher_type = Martpublisher
+_UI_Processor_gathererAddress_feature = Gatherer Address
+_UI_Publisher_publisherEndpoint_feature = Publisher Endpoint
+_UI_Martpublisher_monitoringPropertyName_feature = Monitoring Property Name
+_UI_Martpublisher_monitoringPropertyValue_feature = Monitoring Property Value
+_UI_Martpublisher_monitoringPropertyResource_feature = Monitoring Property Resource
+_UI_Martpublisher_monitoringPropertyId_feature = Monitoring Property Id
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/DatagathererItemProvider.java b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/DatagathererItemProvider.java
index b98bd740f7163afd4e7de9c67b64113416083fc3..150cb4804573598acac0b3f0ee5d8304bd6c442f 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/DatagathererItemProvider.java
+++ b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/DatagathererItemProvider.java
@@ -196,7 +196,12 @@ public class DatagathererItemProvider extends ComponentItemProvider {
 		newChildDescriptors.add
 			(createChildParameter
 				(OCCIPackage.Literals.ENTITY__PARTS,
-				 MonitoringFactory.eINSTANCE.createMonitoringproperties()));
+				 MonitoringFactory.eINSTANCE.createMartpublisher()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(OCCIPackage.Literals.RESOURCE__LINKS,
+				 MonitoringFactory.eINSTANCE.createMonitoringproperty()));
 	}
 
 	/**
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringPropertyItemProvider.java b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MartpublisherItemProvider.java
similarity index 63%
rename from de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringPropertyItemProvider.java
rename to de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MartpublisherItemProvider.java
index 9d567fee3953aef727eae47fd666f08a975c15ee..ff5c320c4655078b0cfd04c68532b194db877869 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringPropertyItemProvider.java
+++ b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MartpublisherItemProvider.java
@@ -16,8 +16,10 @@ package monitoring.provider;
 import java.util.Collection;
 import java.util.List;
 
+import monitoring.Martpublisher;
 import monitoring.MonitoringPackage;
-import monitoring.MonitoringProperty;
+
+import org.eclipse.cmf.occi.core.provider.MixinBaseItemProvider;
 
 import org.eclipse.emf.common.notify.AdapterFactory;
 import org.eclipse.emf.common.notify.Notification;
@@ -25,37 +27,24 @@ import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.util.ResourceLocator;
 
 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.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemProviderAdapter;
 import org.eclipse.emf.edit.provider.ViewerNotification;
 
 /**
- * This is the item provider adapter for a {@link monitoring.MonitoringProperty} object.
+ * This is the item provider adapter for a {@link monitoring.Martpublisher} object.
  * <!-- begin-user-doc -->
  * <!-- end-user-doc -->
  * @generated
  */
-public class MonitoringPropertyItemProvider 
-	extends ItemProviderAdapter
-	implements
-		IEditingDomainItemProvider,
-		IStructuredItemContentProvider,
-		ITreeItemContentProvider,
-		IItemLabelProvider,
-		IItemPropertySource {
+public class MartpublisherItemProvider extends MixinBaseItemProvider {
 	/**
 	 * This constructs an instance from a factory and a notifier.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public MonitoringPropertyItemProvider(AdapterFactory adapterFactory) {
+	public MartpublisherItemProvider(AdapterFactory adapterFactory) {
 		super(adapterFactory);
 	}
 
@@ -70,27 +59,27 @@ public class MonitoringPropertyItemProvider
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
-			addNamePropertyDescriptor(object);
-			addValuePropertyDescriptor(object);
-			addIdPropertyDescriptor(object);
+			addMonitoringPropertyNamePropertyDescriptor(object);
+			addMonitoringPropertyIdPropertyDescriptor(object);
+			addMonitoringPropertyResourcePropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
 
 	/**
-	 * This adds a property descriptor for the Name feature.
+	 * This adds a property descriptor for the Monitoring Property Name feature.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	protected void addNamePropertyDescriptor(Object object) {
+	protected void addMonitoringPropertyNamePropertyDescriptor(Object object) {
 		itemPropertyDescriptors.add
 			(createItemPropertyDescriptor
 				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
 				 getResourceLocator(),
-				 getString("_UI_MonitoringProperty_name_feature"),
-				 getString("_UI_PropertyDescriptor_description", "_UI_MonitoringProperty_name_feature", "_UI_MonitoringProperty_type"),
-				 MonitoringPackage.Literals.MONITORING_PROPERTY__NAME,
+				 getString("_UI_Martpublisher_monitoringPropertyName_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Martpublisher_monitoringPropertyName_feature", "_UI_Martpublisher_type"),
+				 MonitoringPackage.Literals.MARTPUBLISHER__MONITORING_PROPERTY_NAME,
 				 true,
 				 false,
 				 false,
@@ -100,19 +89,19 @@ public class MonitoringPropertyItemProvider
 	}
 
 	/**
-	 * This adds a property descriptor for the Value feature.
+	 * This adds a property descriptor for the Monitoring Property Id feature.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	protected void addValuePropertyDescriptor(Object object) {
+	protected void addMonitoringPropertyIdPropertyDescriptor(Object object) {
 		itemPropertyDescriptors.add
 			(createItemPropertyDescriptor
 				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
 				 getResourceLocator(),
-				 getString("_UI_MonitoringProperty_value_feature"),
-				 getString("_UI_PropertyDescriptor_description", "_UI_MonitoringProperty_value_feature", "_UI_MonitoringProperty_type"),
-				 MonitoringPackage.Literals.MONITORING_PROPERTY__VALUE,
+				 getString("_UI_Martpublisher_monitoringPropertyId_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Martpublisher_monitoringPropertyId_feature", "_UI_Martpublisher_type"),
+				 MonitoringPackage.Literals.MARTPUBLISHER__MONITORING_PROPERTY_ID,
 				 true,
 				 false,
 				 false,
@@ -122,19 +111,19 @@ public class MonitoringPropertyItemProvider
 	}
 
 	/**
-	 * This adds a property descriptor for the Id feature.
+	 * This adds a property descriptor for the Monitoring Property Resource feature.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	protected void addIdPropertyDescriptor(Object object) {
+	protected void addMonitoringPropertyResourcePropertyDescriptor(Object object) {
 		itemPropertyDescriptors.add
 			(createItemPropertyDescriptor
 				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
 				 getResourceLocator(),
-				 getString("_UI_MonitoringProperty_Id_feature"),
-				 getString("_UI_PropertyDescriptor_description", "_UI_MonitoringProperty_Id_feature", "_UI_MonitoringProperty_type"),
-				 MonitoringPackage.Literals.MONITORING_PROPERTY__ID,
+				 getString("_UI_Martpublisher_monitoringPropertyResource_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Martpublisher_monitoringPropertyResource_feature", "_UI_Martpublisher_type"),
+				 MonitoringPackage.Literals.MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE,
 				 true,
 				 false,
 				 false,
@@ -144,14 +133,14 @@ public class MonitoringPropertyItemProvider
 	}
 
 	/**
-	 * This returns MonitoringProperty.gif.
+	 * This returns Martpublisher.gif.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	@Override
 	public Object getImage(Object object) {
-		return overlayImage(object, getResourceLocator().getImage("full/obj16/MonitoringProperty"));
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Martpublisher"));
 	}
 
 	/**
@@ -162,10 +151,10 @@ public class MonitoringPropertyItemProvider
 	 */
 	@Override
 	public String getText(Object object) {
-		String label = ((MonitoringProperty)object).getName();
+		String label = ((Martpublisher)object).getMonitoringPropertyName();
 		return label == null || label.length() == 0 ?
-			getString("_UI_MonitoringProperty_type") :
-			getString("_UI_MonitoringProperty_type") + " " + label;
+			getString("_UI_Martpublisher_type") :
+			getString("_UI_Martpublisher_type") + " " + label;
 	}
 	
 
@@ -180,10 +169,10 @@ public class MonitoringPropertyItemProvider
 	public void notifyChanged(Notification notification) {
 		updateChildren(notification);
 
-		switch (notification.getFeatureID(MonitoringProperty.class)) {
-			case MonitoringPackage.MONITORING_PROPERTY__NAME:
-			case MonitoringPackage.MONITORING_PROPERTY__VALUE:
-			case MonitoringPackage.MONITORING_PROPERTY__ID:
+		switch (notification.getFeatureID(Martpublisher.class)) {
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_NAME:
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_ID:
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE:
 				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
 				return;
 		}
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringItemProviderAdapterFactory.java b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringItemProviderAdapterFactory.java
index 2392515bd9b51816bfe7acc8fa1a225dd9c4bc5d..0af5520f9fc71a684577472973d6a7d4484ae7d2 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringItemProviderAdapterFactory.java
+++ b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringItemProviderAdapterFactory.java
@@ -81,52 +81,6 @@ public class MonitoringItemProviderAdapterFactory extends MonitoringAdapterFacto
 		supportedTypes.add(IItemPropertySource.class);
 	}
 
-	/**
-	 * This keeps track of the one adapter used for all {@link monitoring.MonitoringProperty} instances.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected MonitoringPropertyItemProvider monitoringPropertyItemProvider;
-
-	/**
-	 * This creates an adapter for a {@link monitoring.MonitoringProperty}.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Adapter createMonitoringPropertyAdapter() {
-		if (monitoringPropertyItemProvider == null) {
-			monitoringPropertyItemProvider = new MonitoringPropertyItemProvider(this);
-		}
-
-		return monitoringPropertyItemProvider;
-	}
-
-	/**
-	 * This keeps track of the one adapter used for all {@link monitoring.MonitoringPropertyArray} instances.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected MonitoringPropertyArrayItemProvider monitoringPropertyArrayItemProvider;
-
-	/**
-	 * This creates an adapter for a {@link monitoring.MonitoringPropertyArray}.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Adapter createMonitoringPropertyArrayAdapter() {
-		if (monitoringPropertyArrayItemProvider == null) {
-			monitoringPropertyArrayItemProvider = new MonitoringPropertyArrayItemProvider(this);
-		}
-
-		return monitoringPropertyArrayItemProvider;
-	}
-
 	/**
 	 * This keeps track of the one adapter used for all {@link monitoring.Sensor} instances.
 	 * <!-- begin-user-doc -->
@@ -220,26 +174,49 @@ public class MonitoringItemProviderAdapterFactory extends MonitoringAdapterFacto
 	}
 
 	/**
-	 * This keeps track of the one adapter used for all {@link monitoring.Monitoringproperties} instances.
+	 * This keeps track of the one adapter used for all {@link monitoring.Monitoringproperty} instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected MonitoringpropertyItemProvider monitoringpropertyItemProvider;
+
+	/**
+	 * This creates an adapter for a {@link monitoring.Monitoringproperty}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Adapter createMonitoringpropertyAdapter() {
+		if (monitoringpropertyItemProvider == null) {
+			monitoringpropertyItemProvider = new MonitoringpropertyItemProvider(this);
+		}
+
+		return monitoringpropertyItemProvider;
+	}
+
+	/**
+	 * This keeps track of the one adapter used for all {@link monitoring.Martpublisher} instances.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	protected MonitoringpropertiesItemProvider monitoringpropertiesItemProvider;
+	protected MartpublisherItemProvider martpublisherItemProvider;
 
 	/**
-	 * This creates an adapter for a {@link monitoring.Monitoringproperties}.
+	 * This creates an adapter for a {@link monitoring.Martpublisher}.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	@Override
-	public Adapter createMonitoringpropertiesAdapter() {
-		if (monitoringpropertiesItemProvider == null) {
-			monitoringpropertiesItemProvider = new MonitoringpropertiesItemProvider(this);
+	public Adapter createMartpublisherAdapter() {
+		if (martpublisherItemProvider == null) {
+			martpublisherItemProvider = new MartpublisherItemProvider(this);
 		}
 
-		return monitoringpropertiesItemProvider;
+		return martpublisherItemProvider;
 	}
 
 	/**
@@ -341,13 +318,12 @@ public class MonitoringItemProviderAdapterFactory extends MonitoringAdapterFacto
 	 * @generated
 	 */
 	public void dispose() {
-		if (monitoringPropertyItemProvider != null) monitoringPropertyItemProvider.dispose();
-		if (monitoringPropertyArrayItemProvider != null) monitoringPropertyArrayItemProvider.dispose();
 		if (sensorItemProvider != null) sensorItemProvider.dispose();
 		if (datagathererItemProvider != null) datagathererItemProvider.dispose();
 		if (processorItemProvider != null) processorItemProvider.dispose();
 		if (publisherItemProvider != null) publisherItemProvider.dispose();
-		if (monitoringpropertiesItemProvider != null) monitoringpropertiesItemProvider.dispose();
+		if (monitoringpropertyItemProvider != null) monitoringpropertyItemProvider.dispose();
+		if (martpublisherItemProvider != null) martpublisherItemProvider.dispose();
 	}
 
 }
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringPropertyArrayItemProvider.java b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringPropertyArrayItemProvider.java
deleted file mode 100644
index 0067c3c10a016328b0fddcd1086b99c31abe2bdd..0000000000000000000000000000000000000000
--- a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringPropertyArrayItemProvider.java
+++ /dev/null
@@ -1,178 +0,0 @@
-/**
- * Copyright (c) 2015-2017 Obeo, Inria
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 	
- * Contributors:
- * - William Piers <william.piers@obeo.fr>
- * - Philippe Merle <philippe.merle@inria.fr>
- * - Faiez Zalila <faiez.zalila@inria.fr>
- */
-package monitoring.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import monitoring.MonitoringFactory;
-import monitoring.MonitoringPackage;
-import monitoring.MonitoringPropertyArray;
-
-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.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.ItemProviderAdapter;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-
-/**
- * This is the item provider adapter for a {@link monitoring.MonitoringPropertyArray} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class MonitoringPropertyArrayItemProvider 
-	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 MonitoringPropertyArrayItemProvider(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(MonitoringPackage.Literals.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES);
-		}
-		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 MonitoringPropertyArray.gif.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Object getImage(Object object) {
-		return overlayImage(object, getResourceLocator().getImage("full/obj16/MonitoringPropertyArray"));
-	}
-
-	/**
-	 * 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_MonitoringPropertyArray_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(MonitoringPropertyArray.class)) {
-			case MonitoringPackage.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES:
-				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
-				(MonitoringPackage.Literals.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES,
-				 MonitoringFactory.eINSTANCE.createMonitoringProperty()));
-	}
-
-	/**
-	 * Return the resource locator for this item provider's resources.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public ResourceLocator getResourceLocator() {
-		return MonitoringEditPlugin.INSTANCE;
-	}
-
-}
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringpropertiesItemProvider.java b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringpropertyItemProvider.java
similarity index 50%
rename from de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringpropertiesItemProvider.java
rename to de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringpropertyItemProvider.java
index cfaf3d32e15ff739c04603d2d5338136662f484c..f9a24127ba3c4acbaf6a94769fd022b1324cb485 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringpropertiesItemProvider.java
+++ b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/MonitoringpropertyItemProvider.java
@@ -18,34 +18,38 @@ import java.util.List;
 
 import monitoring.MonitoringFactory;
 import monitoring.MonitoringPackage;
-import monitoring.Monitoringproperties;
+import monitoring.Monitoringproperty;
 
-import org.eclipse.cmf.occi.core.provider.MixinBaseItemProvider;
+import org.eclipse.cmf.occi.core.OCCIPackage;
+
+import org.eclipse.cmf.occi.core.provider.LinkItemProvider;
 
 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.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
 import org.eclipse.emf.edit.provider.ViewerNotification;
 
+import org.modmacao.occi.platform.PlatformFactory;
+
 /**
- * This is the item provider adapter for a {@link monitoring.Monitoringproperties} object.
+ * This is the item provider adapter for a {@link monitoring.Monitoringproperty} object.
  * <!-- begin-user-doc -->
  * <!-- end-user-doc -->
  * @generated
  */
-public class MonitoringpropertiesItemProvider extends MixinBaseItemProvider {
+public class MonitoringpropertyItemProvider extends LinkItemProvider {
 	/**
 	 * This constructs an instance from a factory and a notifier.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public MonitoringpropertiesItemProvider(AdapterFactory adapterFactory) {
+	public MonitoringpropertyItemProvider(AdapterFactory adapterFactory) {
 		super(adapterFactory);
 	}
 
@@ -60,49 +64,65 @@ public class MonitoringpropertiesItemProvider extends MixinBaseItemProvider {
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
+			addMonitoringPropertyNamePropertyDescriptor(object);
+			addMonitoringPropertyValuePropertyDescriptor(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}.
+	 * This adds a property descriptor for the Monitoring Property Name feature.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	@Override
-	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
-		if (childrenFeatures == null) {
-			super.getChildrenFeatures(object);
-			childrenFeatures.add(MonitoringPackage.Literals.MONITORINGPROPERTIES__MONITORING_PROPERTIES);
-		}
-		return childrenFeatures;
+	protected void addMonitoringPropertyNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Monitoringproperty_monitoringPropertyName_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Monitoringproperty_monitoringPropertyName_feature", "_UI_Monitoringproperty_type"),
+				 MonitoringPackage.Literals.MONITORINGPROPERTY__MONITORING_PROPERTY_NAME,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
 	}
 
 	/**
+	 * This adds a property descriptor for the Monitoring Property Value feature.
 	 * <!-- 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);
+	protected void addMonitoringPropertyValuePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Monitoringproperty_monitoringPropertyValue_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Monitoringproperty_monitoringPropertyValue_feature", "_UI_Monitoringproperty_type"),
+				 MonitoringPackage.Literals.MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
 	}
 
 	/**
-	 * This returns Monitoringproperties.gif.
+	 * This returns Monitoringproperty.gif.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	@Override
 	public Object getImage(Object object) {
-		return overlayImage(object, getResourceLocator().getImage("full/obj16/Monitoringproperties"));
+		return overlayImage(object, getResourceLocator().getImage("full/obj16/Monitoringproperty"));
 	}
 
 	/**
@@ -113,7 +133,10 @@ public class MonitoringpropertiesItemProvider extends MixinBaseItemProvider {
 	 */
 	@Override
 	public String getText(Object object) {
-		return getString("_UI_Monitoringproperties_type");
+		String label = ((Monitoringproperty)object).getId();
+		return label == null || label.length() == 0 ?
+			getString("_UI_Monitoringproperty_type") :
+			getString("_UI_Monitoringproperty_type") + " " + label;
 	}
 	
 
@@ -128,9 +151,10 @@ public class MonitoringpropertiesItemProvider extends MixinBaseItemProvider {
 	public void notifyChanged(Notification notification) {
 		updateChildren(notification);
 
-		switch (notification.getFeatureID(Monitoringproperties.class)) {
-			case MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES:
-				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
+		switch (notification.getFeatureID(Monitoringproperty.class)) {
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_NAME:
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
 				return;
 		}
 		super.notifyChanged(notification);
@@ -149,8 +173,28 @@ public class MonitoringpropertiesItemProvider extends MixinBaseItemProvider {
 
 		newChildDescriptors.add
 			(createChildParameter
-				(MonitoringPackage.Literals.MONITORINGPROPERTIES__MONITORING_PROPERTIES,
-				 MonitoringFactory.eINSTANCE.createMonitoringPropertyArray()));
+				(OCCIPackage.Literals.ENTITY__PARTS,
+				 MonitoringFactory.eINSTANCE.createMartpublisher()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(OCCIPackage.Literals.ENTITY__PARTS,
+				 PlatformFactory.eINSTANCE.createApp_tpl()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(OCCIPackage.Literals.ENTITY__PARTS,
+				 PlatformFactory.eINSTANCE.createRes_tpl()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(OCCIPackage.Literals.ENTITY__PARTS,
+				 PlatformFactory.eINSTANCE.createDatabase()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(OCCIPackage.Literals.ENTITY__PARTS,
+				 PlatformFactory.eINSTANCE.createDatabaselink()));
 	}
 
 	/**
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/ProcessorItemProvider.java b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/ProcessorItemProvider.java
index c6e12b8b2347165d35c2de95130287a6bbecf849..071a9cdc9e0794dcb608e169efc45009167a5174 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/ProcessorItemProvider.java
+++ b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/ProcessorItemProvider.java
@@ -17,6 +17,7 @@ import java.util.Collection;
 import java.util.List;
 
 import monitoring.MonitoringFactory;
+import monitoring.MonitoringPackage;
 import monitoring.Processor;
 
 import org.eclipse.cmf.occi.core.OCCIPackage;
@@ -26,7 +27,10 @@ import org.eclipse.emf.common.notify.Notification;
 
 import org.eclipse.emf.common.util.ResourceLocator;
 
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
 import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
 
 import org.modmacao.occi.platform.provider.ComponentItemProvider;
 
@@ -58,10 +62,33 @@ public class ProcessorItemProvider extends ComponentItemProvider {
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
+			addGathererAddressPropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
 
+	/**
+	 * This adds a property descriptor for the Gatherer Address feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addGathererAddressPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Processor_gathererAddress_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Processor_gathererAddress_feature", "_UI_Processor_type"),
+				 MonitoringPackage.Literals.PROCESSOR__GATHERER_ADDRESS,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
 	/**
 	 * This returns Processor.gif.
 	 * <!-- begin-user-doc -->
@@ -98,6 +125,12 @@ public class ProcessorItemProvider extends ComponentItemProvider {
 	@Override
 	public void notifyChanged(Notification notification) {
 		updateChildren(notification);
+
+		switch (notification.getFeatureID(Processor.class)) {
+			case MonitoringPackage.PROCESSOR__GATHERER_ADDRESS:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
 		super.notifyChanged(notification);
 	}
 
@@ -115,7 +148,12 @@ public class ProcessorItemProvider extends ComponentItemProvider {
 		newChildDescriptors.add
 			(createChildParameter
 				(OCCIPackage.Literals.ENTITY__PARTS,
-				 MonitoringFactory.eINSTANCE.createMonitoringproperties()));
+				 MonitoringFactory.eINSTANCE.createMartpublisher()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(OCCIPackage.Literals.RESOURCE__LINKS,
+				 MonitoringFactory.eINSTANCE.createMonitoringproperty()));
 	}
 
 	/**
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/PublisherItemProvider.java b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/PublisherItemProvider.java
index e69b72414363bfe8fa68492bf6277cb851913faa..b59182b42fb63622d49fdd7dc60e2f00fd22e866 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/PublisherItemProvider.java
+++ b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/PublisherItemProvider.java
@@ -17,6 +17,7 @@ import java.util.Collection;
 import java.util.List;
 
 import monitoring.MonitoringFactory;
+import monitoring.MonitoringPackage;
 import monitoring.Publisher;
 
 import org.eclipse.cmf.occi.core.OCCIPackage;
@@ -26,7 +27,10 @@ import org.eclipse.emf.common.notify.Notification;
 
 import org.eclipse.emf.common.util.ResourceLocator;
 
+import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
 import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
 
 import org.modmacao.occi.platform.provider.ComponentItemProvider;
 
@@ -58,10 +62,33 @@ public class PublisherItemProvider extends ComponentItemProvider {
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
+			addPublisherEndpointPropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
 
+	/**
+	 * This adds a property descriptor for the Publisher Endpoint feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPublisherEndpointPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Publisher_publisherEndpoint_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Publisher_publisherEndpoint_feature", "_UI_Publisher_type"),
+				 MonitoringPackage.Literals.PUBLISHER__PUBLISHER_ENDPOINT,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
 	/**
 	 * This returns Publisher.gif.
 	 * <!-- begin-user-doc -->
@@ -98,6 +125,12 @@ public class PublisherItemProvider extends ComponentItemProvider {
 	@Override
 	public void notifyChanged(Notification notification) {
 		updateChildren(notification);
+
+		switch (notification.getFeatureID(Publisher.class)) {
+			case MonitoringPackage.PUBLISHER__PUBLISHER_ENDPOINT:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+		}
 		super.notifyChanged(notification);
 	}
 
@@ -115,7 +148,12 @@ public class PublisherItemProvider extends ComponentItemProvider {
 		newChildDescriptors.add
 			(createChildParameter
 				(OCCIPackage.Literals.ENTITY__PARTS,
-				 MonitoringFactory.eINSTANCE.createMonitoringproperties()));
+				 MonitoringFactory.eINSTANCE.createMartpublisher()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(OCCIPackage.Literals.RESOURCE__LINKS,
+				 MonitoringFactory.eINSTANCE.createMonitoringproperty()));
 	}
 
 	/**
diff --git a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/SensorItemProvider.java b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/SensorItemProvider.java
index e7f38f8565157670f1aa79e8ca2255f4647905d3..04a6eaf98d96f354da540588b5b9c6b42313fe0b 100644
--- a/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/SensorItemProvider.java
+++ b/de.ugoe.cs.rwm.mocci.model.edit/src-gen/monitoring/provider/SensorItemProvider.java
@@ -268,7 +268,12 @@ public class SensorItemProvider extends ApplicationItemProvider {
 		newChildDescriptors.add
 			(createChildParameter
 				(OCCIPackage.Literals.ENTITY__PARTS,
-				 MonitoringFactory.eINSTANCE.createMonitoringproperties()));
+				 MonitoringFactory.eINSTANCE.createMartpublisher()));
+
+		newChildDescriptors.add
+			(createChildParameter
+				(OCCIPackage.Literals.RESOURCE__LINKS,
+				 MonitoringFactory.eINSTANCE.createMonitoringproperty()));
 	}
 
 	/**
diff --git a/de.ugoe.cs.rwm.mocci.model/.classpath b/de.ugoe.cs.rwm.mocci.model/.classpath
index ba9563870359d6f6776459965a9a63042a32bfb4..9f26f94005a15116e7455333308dcb80ef6440e6 100644
--- a/de.ugoe.cs.rwm.mocci.model/.classpath
+++ b/de.ugoe.cs.rwm.mocci.model/.classpath
@@ -3,5 +3,6 @@
 	<classpathentry kind="src" path="src-gen"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8/"/>
 	<classpathentry kind="con" path="org.eclipse.buildship.core.gradleclasspathcontainer"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/de.ugoe.cs.rwm.mocci.model/.settings/org.eclipse.buildship.core.prefs b/de.ugoe.cs.rwm.mocci.model/.settings/org.eclipse.buildship.core.prefs
index 1752c9353159a3382e3f642e31d09b45ee82f7c4..dacbfbbb556df1dcb4ebf4c7b408cfe7886777ed 100644
--- a/de.ugoe.cs.rwm.mocci.model/.settings/org.eclipse.buildship.core.prefs
+++ b/de.ugoe.cs.rwm.mocci.model/.settings/org.eclipse.buildship.core.prefs
@@ -1,2 +1,2 @@
-connection.project.dir=../de.ugoe.cs.rwm.mocci.connector
+connection.project.dir=../de.ugoe.cs.rwm.mocci.connector.dummy
 eclipse.preferences.version=1
diff --git a/de.ugoe.cs.rwm.mocci.model/model/monitoring.ecore b/de.ugoe.cs.rwm.mocci.model/model/monitoring.ecore
index 827421a1f7d346c6d54169641129b31f22d871b7..a76cef0408b852f216a16e08cf061963312d742e 100644
--- a/de.ugoe.cs.rwm.mocci.model/model/monitoring.ecore
+++ b/de.ugoe.cs.rwm.mocci.model/model/monitoring.ecore
@@ -18,27 +18,6 @@
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EDataType" name="Second" instanceClassName="java.lang.String"/>
   <eClassifiers xsi:type="ecore:EDataType" name="String" instanceClassName="java.lang.String"/>
-  <eClassifiers xsi:type="ecore:EClass" name="MonitoringProperty">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" lowerBound="1" eType="#//String">
-      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-        <details key="documentation" value=""/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="#//String">
-      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-        <details key="documentation" value=""/>
-      </eAnnotations>
-    </eStructuralFeatures>
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="Id" lowerBound="1" eType="#//String">
-      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
-        <details key="documentation" value=""/>
-      </eAnnotations>
-    </eStructuralFeatures>
-  </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="MonitoringPropertyArray">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="monitoringpropertyarrayValues"
-        upperBound="-1" eType="#//MonitoringProperty" containment="true"/>
-  </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Sensor" eSuperTypes="platform:/plugin/org.modmacao.occi.platform/model/platform.ecore#//Application">
     <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
       <details key="documentation" value="Sensor Component"/>
@@ -103,21 +82,66 @@
     <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
       <details key="documentation" value="Processor Resource"/>
     </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="gathererAddress" eType="#//String">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value=""/>
+      </eAnnotations>
+    </eStructuralFeatures>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Publisher" eSuperTypes="platform:/plugin/org.modmacao.occi.platform/model/platform.ecore#//Component">
     <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
       <details key="documentation" value="Publisher Resource"/>
     </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="publisherEndpoint" lowerBound="1"
+        eType="#//String">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value=""/>
+      </eAnnotations>
+    </eStructuralFeatures>
   </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Monitoringproperties" eSuperTypes="platform:/plugin/org.eclipse.cmf.occi.core/model/OCCI.ecore#//MixinBase">
+  <eClassifiers xsi:type="ecore:EClass" name="Monitoringproperty" eSuperTypes="platform:/plugin/org.eclipse.cmf.occi.core/model/OCCI.ecore#//Link">
+    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+      <details key="documentation" value="MonitoringProperty Component"/>
+    </eAnnotations>
+    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
+      <details key="constraints" value="targetConstraint"/>
+    </eAnnotations>
+    <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
+      <details key="targetConstraint" value="self.target.oclIsKindOf(monitoring::Sensor)"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="monitoringPropertyName"
+        lowerBound="1" eType="#//String">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value=""/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="monitoringPropertyValue"
+        eType="#//String">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value=""/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Martpublisher" eSuperTypes="platform:/plugin/org.eclipse.cmf.occi.core/model/OCCI.ecore#//MixinBase">
     <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore">
       <details key="constraints" value="appliesConstraint"/>
     </eAnnotations>
     <eAnnotations source="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot">
-      <details key="appliesConstraint" value="self.entity.oclIsKindOf(occi::Resource)"/>
+      <details key="appliesConstraint" value="self.entity.oclIsKindOf(monitoring::Publisher)"/>
     </eAnnotations>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="monitoringProperties" eType="#//MonitoringPropertyArray"
-        containment="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="monitoringPropertyName"
+        lowerBound="1" eType="#//String">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value=""/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="monitoringPropertyId" eType="#//String">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="documentation" value=""/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="monitoringPropertyResource"
+        lowerBound="1" eType="#//String">
       <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
         <details key="documentation" value=""/>
       </eAnnotations>
diff --git a/de.ugoe.cs.rwm.mocci.model/model/monitoring.genmodel b/de.ugoe.cs.rwm.mocci.model/model/monitoring.genmodel
index 2c09698452301d5dc27c029de097ee433c6413b3..9b30c56be358009fee5f9e123433778a96fe8647 100644
--- a/de.ugoe.cs.rwm.mocci.model/model/monitoring.genmodel
+++ b/de.ugoe.cs.rwm.mocci.model/model/monitoring.genmodel
@@ -15,24 +15,6 @@
     <genDataTypes>
       <ecoreDataType href="monitoring.ecore#//String"/>
     </genDataTypes>
-    <genClasses>
-      <ecoreClass href="monitoring.ecore#//MonitoringProperty"/>
-      <genFeatures createChild="false">
-        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//MonitoringProperty/name"/>
-      </genFeatures>
-      <genFeatures createChild="false">
-        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//MonitoringProperty/value"/>
-      </genFeatures>
-      <genFeatures createChild="false">
-        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//MonitoringProperty/Id"/>
-      </genFeatures>
-    </genClasses>
-    <genClasses>
-      <ecoreClass href="monitoring.ecore#//MonitoringPropertyArray"/>
-      <genFeatures property="None" children="true" createChild="true">
-        <ecoreFeature xsi:type="ecore:EReference" href="monitoring.ecore#//MonitoringPropertyArray/monitoringpropertyarrayValues"/>
-      </genFeatures>
-    </genClasses>
     <genClasses>
       <ecoreClass href="monitoring.ecore#//Sensor"/>
       <genFeatures createChild="false">
@@ -68,14 +50,35 @@
     </genClasses>
     <genClasses>
       <ecoreClass href="monitoring.ecore#//Processor"/>
+      <genFeatures createChild="false">
+        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//Processor/gathererAddress"/>
+      </genFeatures>
     </genClasses>
     <genClasses>
       <ecoreClass href="monitoring.ecore#//Publisher"/>
+      <genFeatures createChild="false">
+        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//Publisher/publisherEndpoint"/>
+      </genFeatures>
     </genClasses>
     <genClasses>
-      <ecoreClass href="monitoring.ecore#//Monitoringproperties"/>
-      <genFeatures property="None" children="true" createChild="true">
-        <ecoreFeature xsi:type="ecore:EReference" href="monitoring.ecore#//Monitoringproperties/monitoringProperties"/>
+      <ecoreClass href="monitoring.ecore#//Monitoringproperty"/>
+      <genFeatures createChild="false">
+        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//Monitoringproperty/monitoringPropertyName"/>
+      </genFeatures>
+      <genFeatures createChild="false">
+        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//Monitoringproperty/monitoringPropertyValue"/>
+      </genFeatures>
+    </genClasses>
+    <genClasses>
+      <ecoreClass href="monitoring.ecore#//Martpublisher"/>
+      <genFeatures createChild="false">
+        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//Martpublisher/monitoringPropertyName"/>
+      </genFeatures>
+      <genFeatures createChild="false">
+        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//Martpublisher/monitoringPropertyId"/>
+      </genFeatures>
+      <genFeatures createChild="false">
+        <ecoreFeature xsi:type="ecore:EAttribute" href="monitoring.ecore#//Martpublisher/monitoringPropertyResource"/>
       </genFeatures>
     </genClasses>
   </genPackages>
diff --git a/de.ugoe.cs.rwm.mocci.model/model/monitoring.occie b/de.ugoe.cs.rwm.mocci.model/model/monitoring.occie
index 4cd16a311c2007d00915a77d076465666a5e17e6..a8d07fa81967bbf5992445f7d373216d4df34881 100644
--- a/de.ugoe.cs.rwm.mocci.model/model/monitoring.occie
+++ b/de.ugoe.cs.rwm.mocci.model/model/monitoring.occie
@@ -3,37 +3,40 @@
   <import href="http://schemas.modmacao.org/occi/platform#/"/>
   <import href="http://schemas.ogf.org/occi/core#/"/>
   <kinds name="Sensor" scheme="http://schemas.ugoe.cs.rwm/monitoring#" title="Sensor Component">
-    <attributes name="occi.sensor.timebase" mutable="true" description="Base time reference (ISO8601)" type="//@types.0"/>
-    <attributes name="occi.sensor.timestart" mutable="true" description="Start time offset (seconds)" type="//@types.1"/>
-    <attributes name="occi.sensor.timestop" mutable="true" type="//@types.1"/>
-    <attributes name="occi.sensor.period" mutable="true" required="true" description="Time between two following measurements (seconds)" type="//@types.1"/>
-    <attributes name="occi.sensor.granularity" mutable="true" description="Granularity of time measument (seconds)" type="//@types.1"/>
-    <attributes name="occi.sensor.accuracy" mutable="true" description="Accuracy of time measument (seconds)" type="//@types.1"/>
+    <attributes name="occi.sensor.timebase" description="Base time reference (ISO8601)" type="//@types.0"/>
+    <attributes name="occi.sensor.timestart" description="Start time offset (seconds)" type="//@types.1"/>
+    <attributes name="occi.sensor.timestop" type="//@types.1"/>
+    <attributes name="occi.sensor.period" required="true" description="Time between two following measurements (seconds)" type="//@types.1"/>
+    <attributes name="occi.sensor.granularity" description="Granularity of time measument (seconds)" type="//@types.1"/>
+    <attributes name="occi.sensor.accuracy" description="Accuracy of time measument (seconds)" type="//@types.1"/>
     <parent href="http://schemas.modmacao.org/occi/platform#//@kinds[term='application']"/>
   </kinds>
   <kinds name="DataGatherer" scheme="http://schemas.ugoe.cs.rwm/monitoring#" title="DataGatherer Resource">
-    <attributes name="occi.collector.period" mutable="true" required="true" description="Time between two following measurements (seconds)." type="//@types.1"/>
-    <attributes name="occi.collector.granularity" mutable="true" description="Granularity of time measurement (seconds)." type="//@types.1"/>
-    <attributes name="occi.collector.accuracy" mutable="true" description="Accuracy of time measurement (seconds)." type="//@types.1"/>
+    <attributes name="occi.collector.period" required="true" description="Time between two following measurements (seconds)." type="//@types.1"/>
+    <attributes name="occi.collector.granularity" description="Granularity of time measurement (seconds)." type="//@types.1"/>
+    <attributes name="occi.collector.accuracy" description="Accuracy of time measurement (seconds)." type="//@types.1"/>
     <parent href="http://schemas.modmacao.org/occi/platform#//@kinds[term='component']"/>
   </kinds>
   <kinds name="Processor" scheme="http://schemas.ugoe.cs.rwm/monitoring#" title="Processor Resource">
+    <attributes name="gatherer.address" type="//@types.2"/>
     <parent href="http://schemas.modmacao.org/occi/platform#//@kinds[term='component']"/>
   </kinds>
   <kinds name="Publisher" scheme="http://schemas.ugoe.cs.rwm/monitoring#" title="Publisher Resource">
+    <attributes name="publisher.endpoint" required="true" type="//@types.2"/>
     <parent href="http://schemas.modmacao.org/occi/platform#//@kinds[term='component']"/>
   </kinds>
-  <mixins name="MonitoringProperties" scheme="http://schemas.ugoe.cs.rwm/monitoring#" title="MonitoringProperty Mixin">
-    <attributes name="monitoring.properties" mutable="true" type="//@types.4"/>
-    <applies href="http://schemas.ogf.org/occi/core#//@kinds[term='resource']"/>
+  <kinds name="MonitoringProperty" scheme="http://schemas.ugoe.cs.rwm/monitoring#" title="MonitoringProperty Component" target="//@kinds[term='sensor']">
+    <attributes name="monitoring.property.name" mutable="false" required="true" description="" type="//@types.2"/>
+    <attributes name="monitoring.property.value" description="" type="//@types.2"/>
+    <parent href="http://schemas.ogf.org/occi/core#//@kinds[term='link']"/>
+    <source href="http://schemas.ogf.org/occi/core#//@kinds[term='resource']"/>
+  </kinds>
+  <mixins name="MartPublisher" scheme="http://schemas.ugoe.cs.rwm/monitoring#" title="MartPublisher Mixin" applies="//@kinds[term='publisher']">
+    <attributes name="monitoring.property.name" mutable="false" required="true" description="" type="//@types.2"/>
+    <attributes name="monitoring.property.id" description="" type="//@types.2"/>
+    <attributes name="monitoring.property.resource" mutable="false" required="true" description="" type="//@types.2"/>
   </mixins>
   <types xsi:type="occi:StringType" name="DateTime" pattern="^(\d{4}((-)?(0[1-9]|1[0-2])((-)?(0[1-9]|[1-2][0-9]|3[0-1])(T(24:00(:00(\.[0]+)?)?|(([0-1][0-9]|2[0-3])(:)[0-5][0-9])((:)[0-5][0-9](\.[\d]+)?)?)((\+|-)(14:00|(0[0-9]|1[0-3])(:)[0-5][0-9])|Z))?)?)?)$"/>
   <types xsi:type="occi:StringType" name="Second"/>
   <types xsi:type="occi:StringType" name="String"/>
-  <types xsi:type="occi:RecordType" name="MonitoringProperty">
-    <recordFields name="name" mutable="true" type="//@types.2"/>
-    <recordFields name="value" mutable="true" type="//@types.2"/>
-    <recordFields name="Id" mutable="true" type="//@types.2"/>
-  </types>
-  <types xsi:type="occi:ArrayType" name="MonitoringPropertyArray" type="//@types.3"/>
 </occi:Extension>
diff --git a/de.ugoe.cs.rwm.mocci.model/new Extension diagram2.svg b/de.ugoe.cs.rwm.mocci.model/new Extension diagram2.svg
new file mode 100644
index 0000000000000000000000000000000000000000..fc6f2368bb088b05ef0cb8d398ed04ac54224971
--- /dev/null
+++ b/de.ugoe.cs.rwm.mocci.model/new Extension diagram2.svg	
@@ -0,0 +1,698 @@
+<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" stroke-dasharray="none" shape-rendering="auto" font-family="'Dialog'" width="1276" text-rendering="auto" fill-opacity="1" contentScriptType="text/ecmascript" color-interpolation="auto" color-rendering="auto" preserveAspectRatio="xMidYMid meet" font-size="12" viewBox="0 0 1276 629" fill="black" stroke="black" image-rendering="auto" stroke-miterlimit="10" zoomAndPan="magnify" version="1.0" stroke-linecap="square" stroke-linejoin="miter" contentStyleType="text/css" font-style="normal" height="629" stroke-width="1" stroke-dashoffset="0" font-weight="normal" stroke-opacity="1">
+<!--Generated by the Batik Graphics2D SVG Generator-->
+<defs id="genericDefs"/>
+<g>
+<defs id="defs1">
+<linearGradient x1="298" x2="788" y1="82" gradientUnits="userSpaceOnUse" y2="82" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient1" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="white" offset="0%"/>
+<stop stop-opacity="1" stop-color="rgb(214,214,214)" offset="100%"/>
+</linearGradient>
+<linearGradient x1="334" x2="334" y1="118" gradientUnits="userSpaceOnUse" y2="309" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient2" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,242,196)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="550" x2="550" y1="118" gradientUnits="userSpaceOnUse" y2="261" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient3" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,242,196)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="298" x2="298" y1="334" gradientUnits="userSpaceOnUse" y2="461" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient4" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,242,196)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="730" x2="730" y1="334" gradientUnits="userSpaceOnUse" y2="413" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient5" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,242,196)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="694" x2="694" y1="380" gradientUnits="userSpaceOnUse" y2="427" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient6" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,242,196)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="550" x2="550" y1="334" gradientUnits="userSpaceOnUse" y2="381" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient7" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,242,196)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="958" x2="1264" y1="82" gradientUnits="userSpaceOnUse" y2="82" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient8" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="white" offset="0%"/>
+<stop stop-opacity="1" stop-color="rgb(214,214,214)" offset="100%"/>
+</linearGradient>
+<linearGradient x1="982" x2="982" y1="110" gradientUnits="userSpaceOnUse" y2="173" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient9" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,242,196)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="1119" x2="1119" y1="136" gradientUnits="userSpaceOnUse" y2="183" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient10" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,242,196)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="154" x2="154" y1="526" gradientUnits="userSpaceOnUse" y2="589" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient11" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,242,196)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="526" x2="526" y1="538" gradientUnits="userSpaceOnUse" y2="617" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient12" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="rgb(187,221,255)" offset="0%"/>
+<stop stop-opacity="1" stop-color="white" offset="100%"/>
+</linearGradient>
+<linearGradient x1="10" x2="108" y1="69" gradientUnits="userSpaceOnUse" y2="140" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient13" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="white" offset="0%"/>
+<stop stop-opacity="1" stop-color="rgb(255,250,191)" offset="100%"/>
+</linearGradient>
+<linearGradient x1="10" x2="108" y1="-3" gradientUnits="userSpaceOnUse" y2="68" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient14" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="white" offset="0%"/>
+<stop stop-opacity="1" stop-color="rgb(255,250,191)" offset="100%"/>
+</linearGradient>
+<linearGradient x1="166" x2="264" y1="-3" gradientUnits="userSpaceOnUse" y2="68" xlink:type="simple" xlink:actuate="onLoad" id="linearGradient15" xlink:show="other" spreadMethod="pad">
+<stop stop-opacity="1" stop-color="white" offset="0%"/>
+<stop stop-opacity="1" stop-color="rgb(255,250,191)" offset="100%"/>
+</linearGradient>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath1">
+<path d="M297 81 L791 81 L791 320 L297 320 L297 81 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath2">
+<path d="M297 81 L789 81 L789 318 L297 318 L297 81 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath3">
+<path d="M498 86 L588 86 L588 106 L498 106 L498 86 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath4">
+<path d="M498 86 L592 86 L592 106 L498 106 L498 86 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath5">
+<path d="M333 117 L524 117 L524 312 L333 312 L333 117 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath6">
+<path d="M333 117 L522 117 L522 310 L333 310 L333 117 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath7">
+<path d="M381 122 L477 122 L477 142 L381 142 L381 122 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath8">
+<path d="M338 147 L478 147 L478 165 L338 165 L338 147 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath9">
+<path d="M338 147 L481 147 L481 165 L338 165 L338 147 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath10">
+<path d="M338 163 L487 163 L487 181 L338 181 L338 163 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath11">
+<path d="M338 163 L490 163 L490 181 L338 181 L338 163 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath12">
+<path d="M338 179 L461 179 L461 197 L338 197 L338 179 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath13">
+<path d="M338 179 L464 179 L464 197 L338 197 L338 179 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath14">
+<path d="M338 195 L488 195 L488 213 L338 213 L338 195 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath15">
+<path d="M338 195 L490 195 L490 213 L338 213 L338 195 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath16">
+<path d="M338 211 L517 211 L517 229 L338 229 L338 211 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath17">
+<path d="M338 211 L519 211 L519 229 L338 229 L338 211 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath18">
+<path d="M338 227 L409 227 L409 245 L338 245 L338 227 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath19">
+<path d="M338 227 L412 227 L412 245 L338 245 L338 227 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath20">
+<path d="M338 243 L423 243 L423 261 L338 261 L338 243 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath21">
+<path d="M338 243 L426 243 L426 261 L338 261 L338 243 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath22">
+<path d="M338 259 L424 259 L424 277 L338 277 L338 259 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath23">
+<path d="M338 259 L426 259 L426 277 L338 277 L338 259 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath24">
+<path d="M338 275 L396 275 L396 293 L338 293 L338 275 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath25">
+<path d="M338 275 L398 275 L398 293 L338 293 L338 275 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath26">
+<path d="M338 291 L395 291 L395 309 L338 309 L338 291 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath27">
+<path d="M338 291 L398 291 L398 309 L338 309 L338 291 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath28">
+<path d="M334 145 L521 145 L521 309 L334 309 L334 145 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath29">
+<path d="M549 117 L783 117 L783 264 L549 264 L549 117 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath30">
+<path d="M549 117 L781 117 L781 262 L549 262 L549 117 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath31">
+<path d="M620 122 L714 122 L714 142 L620 142 L620 122 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath32">
+<path d="M554 147 L745 147 L745 165 L554 165 L554 147 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath33">
+<path d="M554 147 L748 147 L748 165 L554 165 L554 147 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath34">
+<path d="M554 163 L776 163 L776 181 L554 181 L554 163 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath35">
+<path d="M554 163 L778 163 L778 181 L554 181 L554 163 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath36">
+<path d="M554 179 L625 179 L625 197 L554 197 L554 179 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath37">
+<path d="M554 179 L628 179 L628 197 L554 197 L554 179 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath38">
+<path d="M554 195 L639 195 L639 213 L554 213 L554 195 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath39">
+<path d="M554 195 L642 195 L642 213 L554 213 L554 195 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath40">
+<path d="M554 211 L640 211 L640 229 L554 229 L554 211 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath41">
+<path d="M554 211 L642 211 L642 229 L554 229 L554 211 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath42">
+<path d="M554 227 L612 227 L612 245 L554 245 L554 227 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath43">
+<path d="M554 227 L614 227 L614 245 L554 245 L554 227 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath44">
+<path d="M554 243 L611 243 L611 261 L554 261 L554 243 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath45">
+<path d="M554 243 L614 243 L614 261 L554 261 L554 243 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath46">
+<path d="M550 145 L780 145 L780 261 L550 261 L550 145 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath47">
+<path d="M297 333 L513 333 L513 464 L297 464 L297 333 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath48">
+<path d="M297 333 L511 333 L511 462 L297 462 L297 333 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath49">
+<path d="M377 338 L435 338 L435 358 L377 358 L377 338 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath50">
+<path d="M302 363 L506 363 L506 381 L302 381 L302 363 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath51">
+<path d="M302 363 L509 363 L509 381 L302 381 L302 363 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath52">
+<path d="M302 379 L493 379 L493 397 L302 397 L302 379 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath53">
+<path d="M302 379 L495 379 L495 397 L302 397 L302 379 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath54">
+<path d="M302 395 L492 395 L492 413 L302 413 L302 395 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath55">
+<path d="M302 395 L495 395 L495 413 L302 413 L302 395 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath56">
+<path d="M302 411 L489 411 L489 429 L302 429 L302 411 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath57">
+<path d="M302 411 L492 411 L492 429 L302 429 L302 411 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath58">
+<path d="M302 427 L503 427 L503 445 L302 445 L302 427 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath59">
+<path d="M302 427 L505 427 L505 445 L302 445 L302 427 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath60">
+<path d="M302 443 L489 443 L489 461 L302 461 L302 443 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath61">
+<path d="M302 443 L491 443 L491 461 L302 461 L302 443 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath62">
+<path d="M298 361 L510 361 L510 461 L298 461 L298 361 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath63">
+<path d="M729 333 L956 333 L956 416 L729 416 L729 333 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath64">
+<path d="M729 333 L954 333 L954 414 L729 414 L729 333 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath65">
+<path d="M788 338 L899 338 L899 358 L788 358 L788 338 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath66">
+<path d="M734 363 L937 363 L937 381 L734 381 L734 363 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath67">
+<path d="M734 363 L940 363 L940 381 L734 381 L734 363 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath68">
+<path d="M734 379 L949 379 L949 397 L734 397 L734 379 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath69">
+<path d="M734 379 L951 379 L951 397 L734 397 L734 379 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath70">
+<path d="M734 395 L935 395 L935 413 L734 413 L734 395 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath71">
+<path d="M734 395 L937 395 L937 413 L734 413 L734 395 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath72">
+<path d="M730 361 L953 361 L953 413 L730 413 L730 361 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath73">
+<path d="M693 379 L867 379 L867 430 L693 430 L693 379 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath74">
+<path d="M693 379 L865 379 L865 428 L693 428 L693 379 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath75">
+<path d="M739 384 L822 384 L822 404 L739 404 L739 384 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath76">
+<path d="M698 409 L860 409 L860 427 L698 427 L698 409 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath77">
+<path d="M698 409 L862 409 L862 427 L698 427 L698 409 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath78">
+<path d="M694 407 L864 407 L864 427 L694 427 L694 407 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath79">
+<path d="M549 333 L746 333 L746 384 L549 384 L549 333 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath80">
+<path d="M549 333 L744 333 L744 382 L549 382 L549 333 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath81">
+<path d="M609 338 L687 338 L687 358 L609 358 L609 338 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath82">
+<path d="M554 363 L739 363 L739 381 L554 381 L554 363 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath83">
+<path d="M554 363 L742 363 L742 381 L554 381 L554 363 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath84">
+<path d="M550 361 L743 361 L743 381 L550 381 L550 361 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath85">
+<path d="M957 81 L1267 81 L1267 194 L957 194 L957 81 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath86">
+<path d="M957 81 L1265 81 L1265 192 L957 192 L957 81 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath87">
+<path d="M1083 86 L1138 86 L1138 106 L1083 106 L1083 86 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath88">
+<path d="M1083 86 L1142 86 L1142 106 L1083 106 L1083 86 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath89">
+<path d="M981 109 L1093 109 L1093 176 L981 176 L981 109 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath90">
+<path d="M981 109 L1091 109 L1091 174 L981 174 L981 109 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath91">
+<path d="M1011 114 L1063 114 L1063 134 L1011 134 L1011 114 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath92">
+<path d="M986 139 L1074 139 L1074 157 L986 157 L986 139 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath93">
+<path d="M986 139 L1076 139 L1076 157 L986 157 L986 139 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath94">
+<path d="M986 155 L1086 155 L1086 173 L986 173 L986 155 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath95">
+<path d="M986 155 L1088 155 L1088 173 L986 173 L986 155 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath96">
+<path d="M982 137 L1090 137 L1090 173 L982 173 L982 137 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath97">
+<path d="M1118 135 L1259 135 L1259 186 L1118 186 L1118 135 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath98">
+<path d="M1118 135 L1257 135 L1257 184 L1118 184 L1118 135 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath99">
+<path d="M1151 140 L1228 140 L1228 160 L1151 160 L1151 140 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath100">
+<path d="M1123 165 L1252 165 L1252 183 L1123 183 L1123 165 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath101">
+<path d="M1123 165 L1255 165 L1255 183 L1123 183 L1123 165 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath102">
+<path d="M1119 163 L1256 163 L1256 183 L1119 183 L1119 163 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath103">
+<path d="M153 525 L386 525 L386 592 L153 592 L153 525 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath104">
+<path d="M153 525 L384 525 L384 590 L153 590 L153 525 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath105">
+<path d="M190 530 L351 530 L351 550 L190 550 L190 530 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath106">
+<path d="M158 555 L379 555 L379 573 L158 573 L158 555 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath107">
+<path d="M158 555 L382 555 L382 573 L158 573 L158 555 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath108">
+<path d="M158 571 L375 571 L375 589 L158 589 L158 571 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath109">
+<path d="M158 571 L377 571 L377 589 L158 589 L158 571 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath110">
+<path d="M154 553 L383 553 L383 589 L154 589 L154 553 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath111">
+<path d="M525 537 L778 537 L778 620 L525 620 L525 537 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath112">
+<path d="M525 537 L776 537 L776 618 L525 618 L525 537 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath113">
+<path d="M595 542 L710 542 L710 562 L595 562 L595 542 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath114">
+<path d="M530 567 L751 567 L751 585 L530 585 L530 567 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath115">
+<path d="M530 567 L754 567 L754 585 L530 585 L530 567 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath116">
+<path d="M530 583 L726 583 L726 601 L530 601 L530 583 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath117">
+<path d="M530 583 L728 583 L728 601 L530 601 L530 583 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath118">
+<path d="M530 599 L771 599 L771 617 L530 617 L530 599 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath119">
+<path d="M530 599 L774 599 L774 617 L530 617 L530 599 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath120">
+<path d="M526 565 L775 565 L775 617 L526 617 L526 565 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath121">
+<path d="M9 81 L111 81 L111 130 L9 130 L9 81 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath122">
+<path d="M9 81 L109 81 L109 128 L9 128 L9 81 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath123">
+<path d="M20 86 L101 86 L101 106 L20 106 L20 86 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath124">
+<path d="M14 111 L106 111 L106 127 L14 127 L14 111 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath125">
+<path d="M10 109 L108 109 L108 127 L10 127 L10 109 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath126">
+<path d="M9 9 L111 9 L111 58 L9 58 L9 9 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath127">
+<path d="M9 9 L109 9 L109 56 L9 56 L9 9 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath128">
+<path d="M30 14 L91 14 L91 34 L30 34 L30 14 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath129">
+<path d="M14 39 L106 39 L106 55 L14 55 L14 39 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath130">
+<path d="M10 37 L108 37 L108 55 L10 55 L10 37 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath131">
+<path d="M165 9 L267 9 L267 58 L165 58 L165 9 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath132">
+<path d="M165 9 L265 9 L265 56 L165 56 L165 9 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath133">
+<path d="M190 14 L242 14 L242 34 L190 34 L190 14 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath134">
+<path d="M170 39 L262 39 L262 55 L170 55 L170 39 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath135">
+<path d="M166 37 L264 37 L264 55 L166 55 L166 37 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath136">
+<path d="M-1 -1 L1277 -1 L1277 630 L-1 630 L-1 -1 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath137">
+<path d="M1088 145 L1101 145 L1101 158 L1088 158 L1088 145 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath138">
+<path d="M731 259 L744 259 L744 273 L731 273 L731 259 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath139">
+<path d="M408 307 L421 307 L421 320 L408 320 L408 307 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath140">
+<path d="M680 259 L693 259 L693 273 L680 273 L680 259 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath141">
+<path d="M624 259 L636 259 L636 273 L624 273 L624 259 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath142">
+<path d="M642 379 L653 379 L653 391 L642 391 L642 379 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath143">
+<path d="M318 475 L363 475 L363 491 L318 491 L318 475 Z"/>
+</clipPath>
+<clipPath clipPathUnits="userSpaceOnUse" id="clipPath144">
+<path d="M395 459 L408 459 L408 470 L395 470 L395 459 Z"/>
+</clipPath>
+</defs>
+<g font-size="16" fill="rgb(131,122,133)" font-family="'Ubuntu'" stroke-linejoin="round" stroke="rgb(131,122,133)" font-weight="bold" stroke-width="0" stroke-miterlimit="0">
+<rect x="299" y="83" clip-path="url(#clipPath1)" width="490" rx="0" opacity="0.2549" ry="0" height="235" stroke="none"/>
+<rect x="300" y="84" clip-path="url(#clipPath1)" width="490" rx="0" opacity="0.2549" ry="0" height="235" stroke="none"/>
+<rect x="298" y="82" clip-path="url(#clipPath2)" fill="url(#linearGradient1)" width="490" rx="0" ry="0" height="235" stroke="none"/>
+</g>
+<g stroke-width="1.1" font-size="16" font-family="'Ubuntu'" font-weight="bold" stroke-linecap="butt">
+<rect x="298" y="82" clip-path="url(#clipPath2)" fill="none" width="489" rx="0" ry="0" height="234"/>
+<image x="499" y="88" clip-path="url(#clipPath3)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAXUlEQVR42mNgGPKA&#10;EUTExsb+x6Vg8eLFjPgMYIExFi1ahCEZFxdHuQvwAZDr4C5obW0lSXN1dTWqF0CA&#10;n5+fZFcwURoLKC5gYWGhzABGRkbKDGBiYiLfAFiojkAAAOmKD9Q+w1PmAAAAAElF&#10;TkSuQmCC" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/>
+<text xml:space="preserve" x="518" y="102" clip-path="url(#clipPath4)" stroke="none">platform</text>
+<rect x="335" y="119" clip-path="url(#clipPath5)" fill="rgb(131,122,133)" width="187" rx="4" opacity="0.2549" ry="4" height="191" stroke="none"/>
+<rect x="336" y="120" clip-path="url(#clipPath5)" fill="rgb(131,122,133)" width="187" rx="4" opacity="0.2549" ry="4" height="191" stroke="none"/>
+<rect x="334" y="118" clip-path="url(#clipPath6)" fill="url(#linearGradient2)" width="187" rx="4" ry="4" height="191" stroke="none"/>
+<rect x="334" y="118" clip-path="url(#clipPath6)" fill="none" width="186" rx="4" ry="4" height="190" stroke="rgb(0,47,0)"/>
+<text xml:space="preserve" x="382" y="138" clip-path="url(#clipPath7)" stroke="none">Application</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath8)" preserveAspectRatio="none" height="16" x="339" y="148" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="162" clip-path="url(#clipPath9)" stroke="none" xml:space="preserve">occi.app.name: null</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath10)" preserveAspectRatio="none" height="16" font-style="italic" x="339" y="164" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="178" clip-path="url(#clipPath11)" font-style="italic" stroke="none" xml:space="preserve">occi.app.context: URL</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath12)" preserveAspectRatio="none" height="16" font-style="italic" x="339" y="180" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="194" clip-path="url(#clipPath13)" font-style="italic" stroke="none" xml:space="preserve">occi.app.url: URL</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath14)" preserveAspectRatio="none" height="16" font-style="italic" x="339" y="196" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="210" clip-path="url(#clipPath15)" font-style="italic" stroke="none" xml:space="preserve">occi.app.state: Status</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath16)" preserveAspectRatio="none" font-weight="normal" height="16" font-style="italic" x="339" y="212" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="226" clip-path="url(#clipPath17)" font-style="italic" stroke="none" font-weight="normal" xml:space="preserve">occi.app.state.message: null</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath18)" preserveAspectRatio="none" font-weight="normal" height="16" x="339" y="228" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="242" clip-path="url(#clipPath19)" stroke="none" font-weight="normal" xml:space="preserve">deploy()</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath20)" preserveAspectRatio="none" font-weight="normal" height="16" x="339" y="244" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="258" clip-path="url(#clipPath21)" stroke="none" font-weight="normal" xml:space="preserve">undeploy()</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath22)" preserveAspectRatio="none" font-weight="normal" height="16" x="339" y="260" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="274" clip-path="url(#clipPath23)" stroke="none" font-weight="normal" xml:space="preserve">configure()</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath24)" preserveAspectRatio="none" font-weight="normal" height="16" x="339" y="276" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="290" clip-path="url(#clipPath25)" stroke="none" font-weight="normal" xml:space="preserve">start()</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath26)" preserveAspectRatio="none" font-weight="normal" height="16" x="339" y="292" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="358" font-size="13" y="306" clip-path="url(#clipPath27)" stroke="none" font-weight="normal" xml:space="preserve">stop()</text>
+<line clip-path="url(#clipPath28)" fill="none" x1="335" x2="520" y1="146" y2="146" stroke="rgb(0,47,0)"/>
+<rect x="551" y="119" clip-path="url(#clipPath29)" fill="rgb(131,122,133)" width="230" rx="4" opacity="0.2549" ry="4" height="143" stroke="none"/>
+<rect x="552" y="120" clip-path="url(#clipPath29)" fill="rgb(131,122,133)" width="230" rx="4" opacity="0.2549" ry="4" height="143" stroke="none"/>
+<rect x="550" y="118" clip-path="url(#clipPath30)" fill="url(#linearGradient3)" width="230" rx="4" ry="4" height="143" stroke="none"/>
+<rect x="550" y="118" clip-path="url(#clipPath30)" fill="none" width="229" rx="4" ry="4" height="142" stroke="rgb(0,47,0)"/>
+<text xml:space="preserve" x="621" y="138" clip-path="url(#clipPath31)" stroke="none">Component</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath32)" preserveAspectRatio="none" height="16" font-style="italic" x="555" y="148" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="574" font-size="13" y="162" clip-path="url(#clipPath33)" font-style="italic" stroke="none" xml:space="preserve">occi.component.state: Status</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath34)" preserveAspectRatio="none" font-weight="normal" height="16" font-style="italic" x="555" y="164" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="574" font-size="13" y="178" clip-path="url(#clipPath35)" font-style="italic" stroke="none" font-weight="normal" xml:space="preserve">occi.component.state.message: null</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath36)" preserveAspectRatio="none" font-weight="normal" height="16" x="555" y="180" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="574" font-size="13" y="194" clip-path="url(#clipPath37)" stroke="none" font-weight="normal" xml:space="preserve">deploy()</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath38)" preserveAspectRatio="none" font-weight="normal" height="16" x="555" y="196" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="574" font-size="13" y="210" clip-path="url(#clipPath39)" stroke="none" font-weight="normal" xml:space="preserve">undeploy()</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath40)" preserveAspectRatio="none" font-weight="normal" height="16" x="555" y="212" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="574" font-size="13" y="226" clip-path="url(#clipPath41)" stroke="none" font-weight="normal" xml:space="preserve">configure()</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath42)" preserveAspectRatio="none" font-weight="normal" height="16" x="555" y="228" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="574" font-size="13" y="242" clip-path="url(#clipPath43)" stroke="none" font-weight="normal" xml:space="preserve">start()</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath44)" preserveAspectRatio="none" font-weight="normal" height="16" x="555" y="244" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAABUElEQVR42s1TsY6C&#10;QBB9cBYUFP6MtRXfIIkfAJWGUGtAa0M0/o2hovAnCJ3EANFILCjQPWaCRE683F11&#10;WzA7b+a9md0dgH+7LMsSlRHT6VR8lyd3kWjveR6EEFiv14+wqOPdAlTpQaLk4/HI&#10;eJIk7BNO8a8dSU97UZOfAUiS1MJqX+oSYE6e57jf79hsNgzcbjfYts1Yv99/4ciP&#10;9okcBAHO5zO22y0T5vM5VySxy+UCilNeJShaAnRRvu+jLEuEYcjWcRw+AlnyoyhC&#10;URTY7XZYrVZNBx/0qRQd0zQxGAwYTNMUmqZhOBxisVhwF4qi4HA4QNd1PtJ+v3c7&#10;74DapYrX67UBVVVFr9fDZDJ54bReYTab8dllWW6/deWTKNnlctniNZmGYXDwdDqx&#10;jeMYWZbxHLiu2+DVML0fy9Fo1Ewi2fF43PKfb//H/8KvSH9Zny/Wwn+ks4LSAAAA&#10;AElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="574" font-size="13" y="258" clip-path="url(#clipPath45)" stroke="none" font-weight="normal" xml:space="preserve">stop()</text>
+<line clip-path="url(#clipPath46)" fill="none" x1="551" x2="779" y1="146" y2="146" stroke="rgb(0,47,0)"/>
+<rect x="299" y="335" clip-path="url(#clipPath47)" fill="rgb(131,122,133)" width="212" rx="4" opacity="0.2549" ry="4" height="127" stroke="none"/>
+<rect x="300" y="336" clip-path="url(#clipPath47)" fill="rgb(131,122,133)" width="212" rx="4" opacity="0.2549" ry="4" height="127" stroke="none"/>
+<rect x="298" y="334" clip-path="url(#clipPath48)" fill="url(#linearGradient4)" width="212" rx="4" ry="4" height="127" stroke="none"/>
+<rect x="298" y="334" clip-path="url(#clipPath48)" fill="none" width="211" rx="4" ry="4" height="126" stroke="rgb(0,47,0)"/>
+<text xml:space="preserve" x="378" y="354" clip-path="url(#clipPath49)" stroke="none">Sensor</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath50)" preserveAspectRatio="none" font-weight="normal" height="16" x="303" y="364" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="322" font-size="13" y="378" clip-path="url(#clipPath51)" stroke="none" font-weight="normal" xml:space="preserve">occi.sensor.timebase: DateTime</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath52)" preserveAspectRatio="none" font-weight="normal" height="16" x="303" y="380" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="322" font-size="13" y="394" clip-path="url(#clipPath53)" stroke="none" font-weight="normal" xml:space="preserve">occi.sensor.timestart: Second</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath54)" preserveAspectRatio="none" font-weight="normal" height="16" x="303" y="396" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="322" font-size="13" y="410" clip-path="url(#clipPath55)" stroke="none" font-weight="normal" xml:space="preserve">occi.sensor.timestop: Second</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath56)" preserveAspectRatio="none" height="16" x="303" y="412" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="322" font-size="13" y="426" clip-path="url(#clipPath57)" stroke="none" xml:space="preserve">occi.sensor.period: Second</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath58)" preserveAspectRatio="none" font-weight="normal" height="16" x="303" y="428" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="322" font-size="13" y="442" clip-path="url(#clipPath59)" stroke="none" font-weight="normal" xml:space="preserve">occi.sensor.granularity: Second</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath60)" preserveAspectRatio="none" font-weight="normal" height="16" x="303" y="444" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="322" font-size="13" y="458" clip-path="url(#clipPath61)" stroke="none" font-weight="normal" xml:space="preserve">occi.sensor.accuracy: Second</text>
+<line clip-path="url(#clipPath62)" fill="none" x1="299" x2="509" y1="362" y2="362" stroke="rgb(0,47,0)"/>
+<rect x="731" y="335" clip-path="url(#clipPath63)" fill="rgb(131,122,133)" width="223" rx="4" opacity="0.2549" ry="4" height="79" stroke="none"/>
+<rect x="732" y="336" clip-path="url(#clipPath63)" fill="rgb(131,122,133)" width="223" rx="4" opacity="0.2549" ry="4" height="79" stroke="none"/>
+<rect x="730" y="334" clip-path="url(#clipPath64)" fill="url(#linearGradient5)" width="223" rx="4" ry="4" height="79" stroke="none"/>
+<rect x="730" y="334" clip-path="url(#clipPath64)" fill="none" width="222" rx="4" ry="4" height="78" stroke="rgb(0,47,0)"/>
+<text xml:space="preserve" x="789" y="354" clip-path="url(#clipPath65)" stroke="none">DataGatherer</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath66)" preserveAspectRatio="none" height="16" x="735" y="364" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="754" font-size="13" y="378" clip-path="url(#clipPath67)" stroke="none" xml:space="preserve">occi.collector.period: Second</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath68)" preserveAspectRatio="none" font-weight="normal" height="16" x="735" y="380" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="754" font-size="13" y="394" clip-path="url(#clipPath69)" stroke="none" font-weight="normal" xml:space="preserve">occi.collector.granularity: Second</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath70)" preserveAspectRatio="none" font-weight="normal" height="16" x="735" y="396" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="754" font-size="13" y="410" clip-path="url(#clipPath71)" stroke="none" font-weight="normal" xml:space="preserve">occi.collector.accuracy: Second</text>
+<line clip-path="url(#clipPath72)" fill="none" x1="731" x2="952" y1="362" y2="362" stroke="rgb(0,47,0)"/>
+<rect x="695" y="381" clip-path="url(#clipPath73)" fill="rgb(131,122,133)" width="170" rx="4" opacity="0.2549" ry="4" height="47" stroke="none"/>
+<rect x="696" y="382" clip-path="url(#clipPath73)" fill="rgb(131,122,133)" width="170" rx="4" opacity="0.2549" ry="4" height="47" stroke="none"/>
+<rect x="694" y="380" clip-path="url(#clipPath74)" fill="url(#linearGradient6)" width="170" rx="4" ry="4" height="47" stroke="none"/>
+<rect x="694" y="380" clip-path="url(#clipPath74)" fill="none" width="169" rx="4" ry="4" height="46" stroke="rgb(0,47,0)"/>
+<text xml:space="preserve" x="740" y="400" clip-path="url(#clipPath75)" stroke="none">Processor</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath76)" preserveAspectRatio="none" font-weight="normal" height="16" x="699" y="410" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="718" font-size="13" y="424" clip-path="url(#clipPath77)" stroke="none" font-weight="normal" xml:space="preserve">gatherer.address: String</text>
+<line clip-path="url(#clipPath78)" fill="none" x1="695" x2="863" y1="408" y2="408" stroke="rgb(0,47,0)"/>
+<rect x="551" y="335" clip-path="url(#clipPath79)" fill="rgb(131,122,133)" width="193" rx="4" opacity="0.2549" ry="4" height="47" stroke="none"/>
+<rect x="552" y="336" clip-path="url(#clipPath79)" fill="rgb(131,122,133)" width="193" rx="4" opacity="0.2549" ry="4" height="47" stroke="none"/>
+<rect x="550" y="334" clip-path="url(#clipPath80)" fill="url(#linearGradient7)" width="193" rx="4" ry="4" height="47" stroke="none"/>
+<rect x="550" y="334" clip-path="url(#clipPath80)" fill="none" width="192" rx="4" ry="4" height="46" stroke="rgb(0,47,0)"/>
+<text xml:space="preserve" x="610" y="354" clip-path="url(#clipPath81)" stroke="none">Publisher</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath82)" preserveAspectRatio="none" height="16" x="555" y="364" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="574" font-size="13" y="378" clip-path="url(#clipPath83)" stroke="none" xml:space="preserve">publisher.endpoint: String</text>
+<line clip-path="url(#clipPath84)" fill="none" x1="551" x2="742" y1="362" y2="362" stroke="rgb(0,47,0)"/>
+<rect x="959" y="83" clip-path="url(#clipPath85)" fill="rgb(131,122,133)" width="306" rx="0" opacity="0.2549" ry="0" height="109" stroke="none"/>
+<rect x="960" y="84" clip-path="url(#clipPath85)" fill="rgb(131,122,133)" width="306" rx="0" opacity="0.2549" ry="0" height="109" stroke="none"/>
+<rect x="958" y="82" clip-path="url(#clipPath86)" fill="url(#linearGradient8)" width="306" rx="0" ry="0" height="109" stroke="none"/>
+<rect x="958" y="82" clip-path="url(#clipPath86)" fill="none" width="305" rx="0" ry="0" height="108"/>
+<image x="1084" y="88" clip-path="url(#clipPath87)" width="16" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAXUlEQVR42mNgGPKA&#10;EUTExsb+x6Vg8eLFjPgMYIExFi1ahCEZFxdHuQvwAZDr4C5obW0lSXN1dTWqF0CA&#10;n5+fZFcwURoLKC5gYWGhzABGRkbKDGBiYiLfAFiojkAAAOmKD9Q+w1PmAAAAAElF&#10;TkSuQmCC" xlink:type="simple" xlink:actuate="onLoad" height="16" preserveAspectRatio="none" xlink:show="embed"/>
+<text xml:space="preserve" x="1103" y="102" clip-path="url(#clipPath88)" stroke="none">core</text>
+<rect x="983" y="111" clip-path="url(#clipPath89)" fill="rgb(131,122,133)" width="108" rx="4" opacity="0.2549" ry="4" height="63" stroke="none"/>
+<rect x="984" y="112" clip-path="url(#clipPath89)" fill="rgb(131,122,133)" width="108" rx="4" opacity="0.2549" ry="4" height="63" stroke="none"/>
+<rect x="982" y="110" clip-path="url(#clipPath90)" fill="url(#linearGradient9)" width="108" rx="4" ry="4" height="63" stroke="none"/>
+<rect x="982" y="110" clip-path="url(#clipPath90)" fill="none" width="107" rx="4" ry="4" height="62" stroke="rgb(0,47,0)"/>
+<text xml:space="preserve" x="1012" y="130" clip-path="url(#clipPath91)" stroke="none">Entity</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath92)" preserveAspectRatio="none" height="16" font-style="italic" x="987" y="140" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="1006" font-size="13" y="154" clip-path="url(#clipPath93)" font-style="italic" stroke="none" xml:space="preserve">occi.core.id</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath94)" preserveAspectRatio="none" font-weight="normal" height="16" x="987" y="156" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="1006" font-size="13" y="170" clip-path="url(#clipPath95)" stroke="none" font-weight="normal" xml:space="preserve">occi.core.title</text>
+<line clip-path="url(#clipPath96)" fill="none" x1="983" x2="1089" y1="138" y2="138" stroke="rgb(0,47,0)"/>
+<rect x="1120" y="137" clip-path="url(#clipPath97)" fill="rgb(131,122,133)" width="137" rx="4" opacity="0.2549" ry="4" height="47" stroke="none"/>
+<rect x="1121" y="138" clip-path="url(#clipPath97)" fill="rgb(131,122,133)" width="137" rx="4" opacity="0.2549" ry="4" height="47" stroke="none"/>
+<rect x="1119" y="136" clip-path="url(#clipPath98)" fill="url(#linearGradient10)" width="137" rx="4" ry="4" height="47" stroke="none"/>
+<rect x="1119" y="136" clip-path="url(#clipPath98)" fill="none" width="136" rx="4" ry="4" height="46" stroke="rgb(0,47,0)"/>
+<text xml:space="preserve" x="1152" y="156" clip-path="url(#clipPath99)" stroke="none">Resource</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath100)" preserveAspectRatio="none" font-weight="normal" height="16" x="1124" y="166" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="1143" font-size="13" y="180" clip-path="url(#clipPath101)" stroke="none" font-weight="normal" xml:space="preserve">occi.core.summary</text>
+<line clip-path="url(#clipPath102)" fill="none" x1="1120" x2="1255" y1="164" y2="164" stroke="rgb(0,47,0)"/>
+<rect x="155" y="527" clip-path="url(#clipPath103)" fill="rgb(131,122,133)" width="229" rx="4" opacity="0.2549" ry="4" height="63" stroke="none"/>
+<rect x="156" y="528" clip-path="url(#clipPath103)" fill="rgb(131,122,133)" width="229" rx="4" opacity="0.2549" ry="4" height="63" stroke="none"/>
+<rect x="154" y="526" clip-path="url(#clipPath104)" fill="url(#linearGradient11)" width="229" rx="4" ry="4" height="63" stroke="none"/>
+<rect x="154" y="526" clip-path="url(#clipPath104)" fill="none" width="228" rx="4" ry="4" height="62" stroke="rgb(0,47,0)"/>
+<text xml:space="preserve" x="191" y="546" clip-path="url(#clipPath105)" stroke="none">MonitoringProperty</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath106)" preserveAspectRatio="none" height="16" font-style="italic" x="159" y="556" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="178" font-size="13" y="570" clip-path="url(#clipPath107)" font-style="italic" stroke="none" xml:space="preserve">monitoring.property.name: String</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath108)" preserveAspectRatio="none" font-weight="normal" height="16" x="159" y="572" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="178" font-size="13" y="586" clip-path="url(#clipPath109)" stroke="none" font-weight="normal" xml:space="preserve">monitoring.property.value: String</text>
+<line clip-path="url(#clipPath110)" fill="none" x1="155" x2="382" y1="554" y2="554" stroke="rgb(0,47,0)"/>
+<rect x="527" y="539" clip-path="url(#clipPath111)" fill="rgb(131,122,133)" width="249" rx="4" opacity="0.2549" ry="4" height="79" stroke="none"/>
+<rect x="528" y="540" clip-path="url(#clipPath111)" fill="rgb(131,122,133)" width="249" rx="4" opacity="0.2549" ry="4" height="79" stroke="none"/>
+<rect x="526" y="538" clip-path="url(#clipPath112)" fill="url(#linearGradient12)" width="249" rx="4" ry="4" height="79" stroke="none"/>
+<rect x="526" y="538" clip-path="url(#clipPath112)" fill="none" width="248" rx="4" ry="4" height="78" stroke="rgb(0,37,74)"/>
+<text xml:space="preserve" x="596" y="558" clip-path="url(#clipPath113)" stroke="none">MartPublisher</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath114)" preserveAspectRatio="none" height="16" font-style="italic" x="531" y="568" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="550" font-size="13" y="582" clip-path="url(#clipPath115)" font-style="italic" stroke="none" xml:space="preserve">monitoring.property.name: String</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath116)" preserveAspectRatio="none" font-weight="normal" height="16" x="531" y="584" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="550" font-size="13" y="598" clip-path="url(#clipPath117)" stroke="none" font-weight="normal" xml:space="preserve">monitoring.property.id: String</text>
+<image width="16" xlink:show="embed" xlink:type="simple" clip-path="url(#clipPath118)" preserveAspectRatio="none" height="16" font-style="italic" x="531" y="600" font-size="13" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAqElEQVR42u1TwQ3D&#10;IAx0UAdgGGZiAb4RD8SXBZiJVYAowJe0IIGIkrTpt+o9fAbjM8YC4I+pmHmet28T&#10;pZQ191FMSgmEELeTOefd7wIFjLHKOWdACB38AqVUP98FQgjQWGt9WZlSWjnG2Peq&#10;tPceRr5CizvnzgXWdX0r0OJjoV0L1loghHx8xGVZ9gJN2RhzawrjTessMcZbe+3C&#10;vb+TdZvMS2T6kb/wBKduW9nDgi/SAAAAAElFTkSuQmCC" xlink:actuate="onLoad"/>
+<text x="550" font-size="13" y="614" clip-path="url(#clipPath119)" font-style="italic" stroke="none" xml:space="preserve">monitoring.property.resource: String</text>
+<line clip-path="url(#clipPath120)" fill="none" x1="527" x2="774" y1="566" y2="566" stroke="rgb(0,37,74)"/>
+<rect x="11" y="83" clip-path="url(#clipPath121)" fill="rgb(131,122,133)" width="98" rx="0" opacity="0.2549" ry="0" height="45" stroke="none"/>
+<rect x="12" y="84" clip-path="url(#clipPath121)" fill="rgb(131,122,133)" width="98" rx="0" opacity="0.2549" ry="0" height="45" stroke="none"/>
+<rect x="10" y="82" clip-path="url(#clipPath122)" fill="url(#linearGradient13)" width="98" rx="0" ry="0" height="45" stroke="none"/>
+<rect x="10" y="82" clip-path="url(#clipPath122)" fill="none" width="97" rx="0" ry="0" height="44"/>
+<text xml:space="preserve" x="21" y="102" clip-path="url(#clipPath123)" stroke="none">DateTime</text>
+<text x="15" font-size="13" y="125" clip-path="url(#clipPath124)" font-style="italic" stroke="none" font-weight="normal" xml:space="preserve">java.lang.String</text>
+<line clip-path="url(#clipPath125)" fill="none" x1="11" x2="107" y1="110" y2="110"/>
+<rect x="11" y="11" clip-path="url(#clipPath126)" fill="rgb(131,122,133)" width="98" rx="0" opacity="0.2549" ry="0" height="45" stroke="none"/>
+<rect x="12" y="12" clip-path="url(#clipPath126)" fill="rgb(131,122,133)" width="98" rx="0" opacity="0.2549" ry="0" height="45" stroke="none"/>
+<rect x="10" y="10" clip-path="url(#clipPath127)" fill="url(#linearGradient14)" width="98" rx="0" ry="0" height="45" stroke="none"/>
+<rect x="10" y="10" clip-path="url(#clipPath127)" fill="none" width="97" rx="0" ry="0" height="44"/>
+<text xml:space="preserve" x="31" y="30" clip-path="url(#clipPath128)" stroke="none">Second</text>
+<text x="15" font-size="13" y="53" clip-path="url(#clipPath129)" font-style="italic" stroke="none" font-weight="normal" xml:space="preserve">java.lang.String</text>
+<line clip-path="url(#clipPath130)" fill="none" x1="11" x2="107" y1="38" y2="38"/>
+<rect x="167" y="11" clip-path="url(#clipPath131)" fill="rgb(131,122,133)" width="98" rx="0" opacity="0.2549" ry="0" height="45" stroke="none"/>
+<rect x="168" y="12" clip-path="url(#clipPath131)" fill="rgb(131,122,133)" width="98" rx="0" opacity="0.2549" ry="0" height="45" stroke="none"/>
+<rect x="166" y="10" clip-path="url(#clipPath132)" fill="url(#linearGradient15)" width="98" rx="0" ry="0" height="45" stroke="none"/>
+<rect x="166" y="10" clip-path="url(#clipPath132)" fill="none" width="97" rx="0" ry="0" height="44"/>
+<text xml:space="preserve" x="191" y="30" clip-path="url(#clipPath133)" stroke="none">String</text>
+<text x="171" font-size="13" y="53" clip-path="url(#clipPath134)" font-style="italic" stroke="none" font-weight="normal" xml:space="preserve">java.lang.String</text>
+<line clip-path="url(#clipPath135)" fill="none" x1="167" x2="263" y1="38" y2="38"/>
+</g>
+<g stroke-linecap="butt" font-size="11" fill="rgb(136,136,136)" font-family="'Ubuntu'" stroke="rgb(136,136,136)" stroke-width="2.1">
+<line clip-path="url(#clipPath136)" fill="none" x1="1119" x2="1090" y1="151" y2="151"/>
+<polygon fill="white" clip-path="url(#clipPath137)" points=" 1090 151 1098 147 1098 155" stroke="none"/>
+<polygon fill="none" clip-path="url(#clipPath137)" points=" 1090 151 1098 147 1098 155"/>
+<line clip-path="url(#clipPath136)" fill="none" x1="803" x2="733" y1="334" y2="261"/>
+<polygon fill="white" clip-path="url(#clipPath138)" points=" 733 261 741 264 736 270" stroke="none"/>
+<polygon fill="none" clip-path="url(#clipPath138)" points=" 733 261 741 264 736 270"/>
+<line clip-path="url(#clipPath136)" fill="none" x1="412" x2="415" y1="334" y2="309"/>
+<polygon fill="white" clip-path="url(#clipPath139)" points=" 415 309 418 317 410 316" stroke="none"/>
+<polygon fill="none" clip-path="url(#clipPath139)" points=" 415 309 418 317 410 316"/>
+<line clip-path="url(#clipPath136)" fill="none" x1="797" x2="682" y1="380" y2="261"/>
+<polygon fill="white" clip-path="url(#clipPath140)" points=" 682 261 690 264 685 270" stroke="none"/>
+<polygon fill="none" clip-path="url(#clipPath140)" points=" 682 261 690 264 685 270"/>
+<line clip-path="url(#clipPath136)" fill="none" x1="642" x2="628" y1="334" y2="261"/>
+<polygon fill="white" clip-path="url(#clipPath141)" points=" 628 261 633 268 626 270" stroke="none"/>
+<polygon fill="none" clip-path="url(#clipPath141)" points=" 628 261 633 268 626 270"/>
+<line clip-path="url(#clipPath136)" fill="none" x1="1119" x2="1090" y1="151" y2="151"/>
+<polygon fill="white" clip-path="url(#clipPath137)" points=" 1090 151 1098 147 1098 155" stroke="none"/>
+<polygon fill="none" clip-path="url(#clipPath137)" points=" 1090 151 1098 147 1098 155"/>
+<line clip-path="url(#clipPath136)" fill="none" x1="647" x2="647" y1="538" y2="381" stroke-dasharray="5,5"/>
+<line clip-path="url(#clipPath142)" fill="none" x1="650" x2="647" y1="388" y2="381"/>
+<line clip-path="url(#clipPath142)" fill="none" x1="647" x2="644" y1="381" y2="388"/>
+</g>
+<g stroke-width="2.1" font-size="13" font-family="'Ubuntu'" font-weight="bold" stroke-linecap="butt">
+<line clip-path="url(#clipPath136)" fill="none" x1="269" x2="405" y1="526" y2="461"/>
+<text xml:space="preserve" x="319" y="489" clip-path="url(#clipPath143)" stroke="none">target</text>
+<line clip-path="url(#clipPath144)" fill="none" x1="400" x2="405" y1="467" y2="461"/>
+<line clip-path="url(#clipPath144)" fill="none" x1="405" x2="397" y1="461" y2="461"/>
+</g>
+</g>
+</svg>
diff --git a/de.ugoe.cs.rwm.mocci.model/representations.aird b/de.ugoe.cs.rwm.mocci.model/representations.aird
index 8e01604e5179f9e69217c1bb077a176f4629ed70..23c7e40418cfc8e7ec27b3cab7d11836394171c7 100644
--- a/de.ugoe.cs.rwm.mocci.model/representations.aird
+++ b/de.ugoe.cs.rwm.mocci.model/representations.aird
@@ -9,11 +9,11 @@
     <semanticResources>model/monitoring.occie</semanticResources>
     <semanticResources>http://schemas.modmacao.org/occi/platform</semanticResources>
     <semanticResources>http://schemas.ogf.org/occi/core</semanticResources>
-    <semanticResources>model/monitoring.ecore</semanticResources>
-    <semanticResources>model/monitoring.genmodel</semanticResources>
     <semanticResources>build/resources/main/model/monitoring.ecore</semanticResources>
     <semanticResources>build/resources/main/model/monitoring.genmodel</semanticResources>
     <semanticResources>build/resources/main/model/monitoring.occie</semanticResources>
+    <semanticResources>model/monitoring.ecore</semanticResources>
+    <semanticResources>model/monitoring.genmodel</semanticResources>
     <ownedViews xmi:type="viewpoint:DView" xmi:id="_y2oZQPcHEeiCiOA5ZDMQdg">
       <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']"/>
       <ownedRepresentationDescriptors xmi:type="viewpoint:DRepresentationDescriptor" xmi:id="_zR2VoPcHEeiCiOA5ZDMQdg" name="new Extension diagram" repPath="#_zIRi4PcHEeiCiOA5ZDMQdg">
@@ -445,44 +445,26 @@
           <styles xmi:type="notation:ShapeStyle" xmi:id="_zUA40fcHEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="12" bold="true"/>
           <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zUA40vcHEeiCiOA5ZDMQdg" x="720" y="252"/>
         </children>
-        <children xmi:type="notation:Node" xmi:id="_zUDVFPcHEeiCiOA5ZDMQdg" type="2003" element="_zRxdYPcHEeiCiOA5ZDMQdg">
-          <children xmi:type="notation:Node" xmi:id="_zUD8IPcHEeiCiOA5ZDMQdg" type="5007"/>
-          <children xmi:type="notation:Node" xmi:id="_zUD8IfcHEeiCiOA5ZDMQdg" type="7004">
-            <children xmi:type="notation:Node" xmi:id="_zVAXU_cHEeiCiOA5ZDMQdg" type="3010" element="_zRxdYvcHEeiCiOA5ZDMQdg">
-              <styles xmi:type="notation:FontStyle" xmi:id="_zVAXVPcHEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="10" italic="true"/>
-              <layoutConstraint xmi:type="notation:Location" xmi:id="_zVAXVfcHEeiCiOA5ZDMQdg"/>
-            </children>
-            <styles xmi:type="notation:SortingStyle" xmi:id="_zUD8IvcHEeiCiOA5ZDMQdg"/>
-            <styles xmi:type="notation:FilteringStyle" xmi:id="_zUD8I_cHEeiCiOA5ZDMQdg"/>
-          </children>
-          <styles xmi:type="notation:ShapeStyle" xmi:id="_zUDVFfcHEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="12" bold="true"/>
-          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zUDVFvcHEeiCiOA5ZDMQdg" x="156" y="54"/>
-        </children>
-        <children xmi:type="notation:Node" xmi:id="_zUD8JPcHEeiCiOA5ZDMQdg" type="2003" element="_zRxdZPcHEeiCiOA5ZDMQdg">
-          <children xmi:type="notation:Node" xmi:id="_zUD8J_cHEeiCiOA5ZDMQdg" type="5007"/>
-          <children xmi:type="notation:Node" xmi:id="_zUEjMPcHEeiCiOA5ZDMQdg" type="7004">
-            <children xmi:type="notation:Node" xmi:id="_zVAXVvcHEeiCiOA5ZDMQdg" type="3010" element="_zRxdZvcHEeiCiOA5ZDMQdg">
-              <styles xmi:type="notation:FontStyle" xmi:id="_zVAXV_cHEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="10" italic="true"/>
-              <layoutConstraint xmi:type="notation:Location" xmi:id="_zVAXWPcHEeiCiOA5ZDMQdg"/>
-            </children>
-            <styles xmi:type="notation:SortingStyle" xmi:id="_zUEjMfcHEeiCiOA5ZDMQdg"/>
-            <styles xmi:type="notation:FilteringStyle" xmi:id="_zUEjMvcHEeiCiOA5ZDMQdg"/>
-          </children>
-          <styles xmi:type="notation:ShapeStyle" xmi:id="_zUD8JfcHEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="12" bold="true"/>
-          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zUD8JvcHEeiCiOA5ZDMQdg" x="156"/>
-        </children>
         <children xmi:type="notation:Node" xmi:id="_Cr_IYPcIEeiCiOA5ZDMQdg" type="2003" element="_CqlaMPcIEeiCiOA5ZDMQdg">
           <children xmi:type="notation:Node" xmi:id="_Cr_vcPcIEeiCiOA5ZDMQdg" type="5007"/>
           <children xmi:type="notation:Node" xmi:id="_Cr_vcfcIEeiCiOA5ZDMQdg" type="7004">
+            <children xmi:type="notation:Node" xmi:id="_tnRP4A9aEemWZoTWtpdGMw" type="3010" element="_tlZAkA9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnRP4Q9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnRP4g9aEemWZoTWtpdGMw"/>
+            </children>
             <styles xmi:type="notation:SortingStyle" xmi:id="_Cr_vcvcIEeiCiOA5ZDMQdg"/>
             <styles xmi:type="notation:FilteringStyle" xmi:id="_Cr_vc_cIEeiCiOA5ZDMQdg"/>
           </children>
           <styles xmi:type="notation:ShapeStyle" xmi:id="_Cr_IYfcIEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="12" bold="true"/>
-          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cr_IYvcIEeiCiOA5ZDMQdg" x="624" y="252"/>
+          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cr_IYvcIEeiCiOA5ZDMQdg" x="684" y="298"/>
         </children>
         <children xmi:type="notation:Node" xmi:id="_IhtloPcIEeiCiOA5ZDMQdg" type="2003" element="_IhgKQPcIEeiCiOA5ZDMQdg">
           <children xmi:type="notation:Node" xmi:id="_Ihtlo_cIEeiCiOA5ZDMQdg" type="5007"/>
           <children xmi:type="notation:Node" xmi:id="_IhtlpPcIEeiCiOA5ZDMQdg" type="7004">
+            <children xmi:type="notation:Node" xmi:id="_tnR28A9aEemWZoTWtpdGMw" type="3010" element="_tla1wA9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnR28Q9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10" bold="true"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnR28g9aEemWZoTWtpdGMw"/>
+            </children>
             <styles xmi:type="notation:SortingStyle" xmi:id="_IhtlpfcIEeiCiOA5ZDMQdg"/>
             <styles xmi:type="notation:FilteringStyle" xmi:id="_IhtlpvcIEeiCiOA5ZDMQdg"/>
           </children>
@@ -537,65 +519,82 @@
           <styles xmi:type="notation:ShapeStyle" xmi:id="_SBkLQfcIEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="12" bold="true"/>
           <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SBkLQvcIEeiCiOA5ZDMQdg" x="948"/>
         </children>
-        <children xmi:type="notation:Node" xmi:id="_uIWPwPcIEeiCiOA5ZDMQdg" type="2003" element="_uHIHwPcIEeiCiOA5ZDMQdg">
-          <children xmi:type="notation:Node" xmi:id="_uIWPw_cIEeiCiOA5ZDMQdg" type="5007"/>
-          <children xmi:type="notation:Node" xmi:id="_uIWPxPcIEeiCiOA5ZDMQdg" type="7004">
-            <children xmi:type="notation:Node" xmi:id="_uIW20PcIEeiCiOA5ZDMQdg" type="3010" element="_uID74PcIEeiCiOA5ZDMQdg">
-              <styles xmi:type="notation:FontStyle" xmi:id="_uIW20fcIEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="10" italic="true"/>
-              <layoutConstraint xmi:type="notation:Location" xmi:id="_uIW20vcIEeiCiOA5ZDMQdg"/>
+        <children xmi:type="notation:Node" xmi:id="_tnAxMA9aEemWZoTWtpdGMw" type="2003" element="_tlIh4A9aEemWZoTWtpdGMw">
+          <children xmi:type="notation:Node" xmi:id="_tnIF8A9aEemWZoTWtpdGMw" type="5007"/>
+          <children xmi:type="notation:Node" xmi:id="_tnItAA9aEemWZoTWtpdGMw" type="7004">
+            <children xmi:type="notation:Node" xmi:id="_tnR28w9aEemWZoTWtpdGMw" type="3010" element="_tlK-IA9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnR29A9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10" bold="true" italic="true"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnR29Q9aEemWZoTWtpdGMw"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_tnSeAA9aEemWZoTWtpdGMw" type="3010" element="_tlMzUA9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnSeAQ9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnSeAg9aEemWZoTWtpdGMw"/>
             </children>
-            <styles xmi:type="notation:SortingStyle" xmi:id="_uIWPxfcIEeiCiOA5ZDMQdg"/>
-            <styles xmi:type="notation:FilteringStyle" xmi:id="_uIWPxvcIEeiCiOA5ZDMQdg"/>
+            <styles xmi:type="notation:SortingStyle" xmi:id="_tnItAQ9aEemWZoTWtpdGMw"/>
+            <styles xmi:type="notation:FilteringStyle" xmi:id="_tnItAg9aEemWZoTWtpdGMw"/>
           </children>
-          <styles xmi:type="notation:ShapeStyle" xmi:id="_uIWPwfcIEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="12" bold="true"/>
-          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uIWPwvcIEeiCiOA5ZDMQdg" x="156" y="108"/>
+          <styles xmi:type="notation:ShapeStyle" xmi:id="_tnAxMQ9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="12" bold="true"/>
+          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tnAxMg9aEemWZoTWtpdGMw" x="144" y="444"/>
         </children>
-        <children xmi:type="notation:Node" xmi:id="_w0y1IP0tEei-2r9L9rzO0w" type="2003" element="_wzfNkP0tEei-2r9L9rzO0w">
-          <children xmi:type="notation:Node" xmi:id="_w03toP0tEei-2r9L9rzO0w" type="5007"/>
-          <children xmi:type="notation:Node" xmi:id="_w04UsP0tEei-2r9L9rzO0w" type="7004">
-            <children xmi:type="notation:Node" xmi:id="_w09NMP0tEei-2r9L9rzO0w" type="3010" element="_wzgbsP0tEei-2r9L9rzO0w">
-              <styles xmi:type="notation:FontStyle" xmi:id="_w09NMf0tEei-2r9L9rzO0w" fontName="Ubuntu" fontHeight="10" bold="true" italic="true"/>
-              <layoutConstraint xmi:type="notation:Location" xmi:id="_w09NMv0tEei-2r9L9rzO0w"/>
+        <children xmi:type="notation:Node" xmi:id="_tnM-cA9aEemWZoTWtpdGMw" type="2003" element="_tld5EA9aEemWZoTWtpdGMw">
+          <children xmi:type="notation:Node" xmi:id="_tnM-cw9aEemWZoTWtpdGMw" type="5007"/>
+          <children xmi:type="notation:Node" xmi:id="_tnNlgA9aEemWZoTWtpdGMw" type="7004">
+            <children xmi:type="notation:Node" xmi:id="_tnSeAw9aEemWZoTWtpdGMw" type="3010" element="_tlegIA9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnSeBA9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10" bold="true" italic="true"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnSeBQ9aEemWZoTWtpdGMw"/>
             </children>
-            <styles xmi:type="notation:SortingStyle" xmi:id="_w04Usf0tEei-2r9L9rzO0w"/>
-            <styles xmi:type="notation:FilteringStyle" xmi:id="_w04Usv0tEei-2r9L9rzO0w"/>
+            <children xmi:type="notation:Node" xmi:id="_tnTsIA9aEemWZoTWtpdGMw" type="3010" element="_tlfuQA9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnTsIQ9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnTsIg9aEemWZoTWtpdGMw"/>
+            </children>
+            <children xmi:type="notation:Node" xmi:id="_tnUTMA9aEemWZoTWtpdGMw" type="3010" element="_tloRIA9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnUTMQ9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10" bold="true" italic="true"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnUTMg9aEemWZoTWtpdGMw"/>
+            </children>
+            <styles xmi:type="notation:SortingStyle" xmi:id="_tnNlgQ9aEemWZoTWtpdGMw"/>
+            <styles xmi:type="notation:FilteringStyle" xmi:id="_tnNlgg9aEemWZoTWtpdGMw"/>
           </children>
-          <styles xmi:type="notation:ShapeStyle" xmi:id="_w0y1If0tEei-2r9L9rzO0w" fontName="Ubuntu" fontHeight="12" bold="true"/>
-          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_w0y1Iv0tEei-2r9L9rzO0w" x="950" y="132" width="303"/>
+          <styles xmi:type="notation:ShapeStyle" xmi:id="_tnM-cQ9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="12" bold="true"/>
+          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tnM-cg9aEemWZoTWtpdGMw" x="516" y="456"/>
         </children>
-        <children xmi:type="notation:Node" xmi:id="_VZoGAAH6EemtgKPSfKVeNA" type="2003" element="_VXmswAH6EemtgKPSfKVeNA">
-          <children xmi:type="notation:Node" xmi:id="_VZsXcAH6EemtgKPSfKVeNA" type="5007"/>
-          <children xmi:type="notation:Node" xmi:id="_VZsXcQH6EemtgKPSfKVeNA" type="7004">
-            <children xmi:type="notation:Node" xmi:id="_BxEVkAH7EemtgKPSfKVeNA" type="3010" element="_BvN7cAH7EemtgKPSfKVeNA">
-              <styles xmi:type="notation:FontStyle" xmi:id="_BxEVkQH7EemtgKPSfKVeNA" fontName="Ubuntu" fontHeight="10"/>
-              <layoutConstraint xmi:type="notation:Location" xmi:id="_BxEVkgH7EemtgKPSfKVeNA"/>
+        <children xmi:type="notation:Node" xmi:id="_tnNlgw9aEemWZoTWtpdGMw" type="2003" element="_tlpfQA9aEemWZoTWtpdGMw">
+          <children xmi:type="notation:Node" xmi:id="_tnNlhg9aEemWZoTWtpdGMw" type="5007"/>
+          <children xmi:type="notation:Node" xmi:id="_tnOMkA9aEemWZoTWtpdGMw" type="7004">
+            <children xmi:type="notation:Node" xmi:id="_tnUTMw9aEemWZoTWtpdGMw" type="3010" element="_tlqtYg9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnUTNA9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10" italic="true"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnUTNQ9aEemWZoTWtpdGMw"/>
             </children>
-            <children xmi:type="notation:Node" xmi:id="_C0loEAH7EemtgKPSfKVeNA" type="3010" element="_CzKrwAH7EemtgKPSfKVeNA">
-              <styles xmi:type="notation:FontStyle" xmi:id="_C0loEQH7EemtgKPSfKVeNA" fontName="Ubuntu" fontHeight="10"/>
-              <layoutConstraint xmi:type="notation:Location" xmi:id="_C0loEgH7EemtgKPSfKVeNA"/>
-            </children>
-            <children xmi:type="notation:Node" xmi:id="_UeQNcAH7EemtgKPSfKVeNA" type="3010" element="_UdYDsAH7EemtgKPSfKVeNA">
-              <styles xmi:type="notation:FontStyle" xmi:id="_UeQNcQH7EemtgKPSfKVeNA" fontName="Ubuntu" fontHeight="10"/>
-              <layoutConstraint xmi:type="notation:Location" xmi:id="_UeQNcgH7EemtgKPSfKVeNA"/>
+            <styles xmi:type="notation:SortingStyle" xmi:id="_tnOMkQ9aEemWZoTWtpdGMw"/>
+            <styles xmi:type="notation:FilteringStyle" xmi:id="_tnOMkg9aEemWZoTWtpdGMw"/>
+          </children>
+          <styles xmi:type="notation:ShapeStyle" xmi:id="_tnNlhA9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="12" bold="true"/>
+          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tnNlhQ9aEemWZoTWtpdGMw"/>
+        </children>
+        <children xmi:type="notation:Node" xmi:id="_tnOMkw9aEemWZoTWtpdGMw" type="2003" element="_tlqGUQ9aEemWZoTWtpdGMw">
+          <children xmi:type="notation:Node" xmi:id="_tnOMlg9aEemWZoTWtpdGMw" type="5007"/>
+          <children xmi:type="notation:Node" xmi:id="_tnOMlw9aEemWZoTWtpdGMw" type="7004">
+            <children xmi:type="notation:Node" xmi:id="_tnU6QA9aEemWZoTWtpdGMw" type="3010" element="_tlsikA9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnU6QQ9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10" italic="true"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnU6Qg9aEemWZoTWtpdGMw"/>
             </children>
-            <styles xmi:type="notation:SortingStyle" xmi:id="_VZsXcgH6EemtgKPSfKVeNA"/>
-            <styles xmi:type="notation:FilteringStyle" xmi:id="_VZsXcwH6EemtgKPSfKVeNA"/>
+            <styles xmi:type="notation:SortingStyle" xmi:id="_tnOMmA9aEemWZoTWtpdGMw"/>
+            <styles xmi:type="notation:FilteringStyle" xmi:id="_tnOMmQ9aEemWZoTWtpdGMw"/>
           </children>
-          <styles xmi:type="notation:ShapeStyle" xmi:id="_VZoGAQH6EemtgKPSfKVeNA" fontName="Ubuntu" fontHeight="12" bold="true"/>
-          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VZoGAgH6EemtgKPSfKVeNA" x="950" y="208" width="159" height="97"/>
+          <styles xmi:type="notation:ShapeStyle" xmi:id="_tnOMlA9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="12" bold="true"/>
+          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tnOMlQ9aEemWZoTWtpdGMw" y="-72"/>
         </children>
-        <children xmi:type="notation:Node" xmi:id="_Cp17MAH8EemtgKPSfKVeNA" type="2003" element="_ConzMAH8EemtgKPSfKVeNA">
-          <children xmi:type="notation:Node" xmi:id="_Cp2iQAH8EemtgKPSfKVeNA" type="5007"/>
-          <children xmi:type="notation:Node" xmi:id="_Cp2iQQH8EemtgKPSfKVeNA" type="7004">
-            <children xmi:type="notation:Node" xmi:id="_Cp3wYAH8EemtgKPSfKVeNA" type="3010" element="_Cpeu0AH8EemtgKPSfKVeNA">
-              <styles xmi:type="notation:FontStyle" xmi:id="_Cp3wYQH8EemtgKPSfKVeNA" fontName="Ubuntu" fontHeight="10" italic="true"/>
-              <layoutConstraint xmi:type="notation:Location" xmi:id="_Cp3wYgH8EemtgKPSfKVeNA"/>
+        <children xmi:type="notation:Node" xmi:id="_tnOzoA9aEemWZoTWtpdGMw" type="2003" element="_tlqtYA9aEemWZoTWtpdGMw">
+          <children xmi:type="notation:Node" xmi:id="_tnOzow9aEemWZoTWtpdGMw" type="5007"/>
+          <children xmi:type="notation:Node" xmi:id="_tnOzpA9aEemWZoTWtpdGMw" type="7004">
+            <children xmi:type="notation:Node" xmi:id="_tnVhUA9aEemWZoTWtpdGMw" type="3010" element="_tltJoA9aEemWZoTWtpdGMw">
+              <styles xmi:type="notation:FontStyle" xmi:id="_tnVhUQ9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10" italic="true"/>
+              <layoutConstraint xmi:type="notation:Location" xmi:id="_tnVhUg9aEemWZoTWtpdGMw"/>
             </children>
-            <styles xmi:type="notation:SortingStyle" xmi:id="_Cp2iQgH8EemtgKPSfKVeNA"/>
-            <styles xmi:type="notation:FilteringStyle" xmi:id="_Cp2iQwH8EemtgKPSfKVeNA"/>
+            <styles xmi:type="notation:SortingStyle" xmi:id="_tnOzpQ9aEemWZoTWtpdGMw"/>
+            <styles xmi:type="notation:FilteringStyle" xmi:id="_tnOzpg9aEemWZoTWtpdGMw"/>
           </children>
-          <styles xmi:type="notation:ShapeStyle" xmi:id="_Cp17MQH8EemtgKPSfKVeNA" fontName="Ubuntu" fontHeight="12" bold="true"/>
-          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cp17MgH8EemtgKPSfKVeNA" x="1118" y="233"/>
+          <styles xmi:type="notation:ShapeStyle" xmi:id="_tnOzoQ9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="12" bold="true"/>
+          <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tnOzog9aEemWZoTWtpdGMw" x="156" y="-72"/>
         </children>
         <styles xmi:type="notation:DiagramStyle" xmi:id="_zTc4IvcHEeiCiOA5ZDMQdg"/>
         <edges xmi:type="notation:Edge" xmi:id="_zVrswPcHEeiCiOA5ZDMQdg" type="4001" element="_zRxda_cHEeiCiOA5ZDMQdg" source="_zUA40PcHEeiCiOA5ZDMQdg" target="_zUINkPcHEeiCiOA5ZDMQdg">
@@ -1208,17 +1207,17 @@
         </edges>
         <edges xmi:type="notation:Edge" xmi:id="_HERXQPcIEeiCiOA5ZDMQdg" type="4001" element="_HDKkAPcIEeiCiOA5ZDMQdg" source="_Cr_IYPcIEeiCiOA5ZDMQdg" target="_zUINkPcHEeiCiOA5ZDMQdg">
           <children xmi:type="notation:Node" xmi:id="_HER-UPcIEeiCiOA5ZDMQdg" type="6001">
-            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HER-UfcIEeiCiOA5ZDMQdg" x="1" y="-4"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HER-UfcIEeiCiOA5ZDMQdg" x="3" y="-5"/>
           </children>
           <children xmi:type="notation:Node" xmi:id="_HER-UvcIEeiCiOA5ZDMQdg" type="6002">
-            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HER-U_cIEeiCiOA5ZDMQdg" x="3" y="3"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HER-U_cIEeiCiOA5ZDMQdg" x="5" y="3"/>
           </children>
           <children xmi:type="notation:Node" xmi:id="_HER-VPcIEeiCiOA5ZDMQdg" type="6003">
-            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HER-VfcIEeiCiOA5ZDMQdg" x="3" y="6"/>
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HER-VfcIEeiCiOA5ZDMQdg" x="4" y="6"/>
           </children>
           <styles xmi:type="notation:ConnectorStyle" xmi:id="_HERXQfcIEeiCiOA5ZDMQdg"/>
           <styles xmi:type="notation:FontStyle" xmi:id="_HERXQvcIEeiCiOA5ZDMQdg" fontName="Ubuntu" fontHeight="8"/>
-          <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HERXQ_cIEeiCiOA5ZDMQdg" points="[0, 0, 0, 73]$[0, -73, 0, 0]"/>
+          <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HERXQ_cIEeiCiOA5ZDMQdg" points="[0, 0, 115, 119]$[-115, -119, 0, 0]"/>
           <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HESlYPcIEeiCiOA5ZDMQdg" id="(0.6075949367088608,0.0)"/>
           <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HESlYfcIEeiCiOA5ZDMQdg" id="(0.5739130434782609,1.0)"/>
         </edges>
@@ -1366,37 +1365,53 @@
           <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SBsHEPcIEeiCiOA5ZDMQdg" id="(0.5,0.5)"/>
           <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SBsuIPcIEeiCiOA5ZDMQdg" id="(0.5,0.5)"/>
         </edges>
-        <edges xmi:type="notation:Edge" xmi:id="_Jv_egAH8EemtgKPSfKVeNA" type="4001" element="_JvyqMAH8EemtgKPSfKVeNA" source="_Cp17MAH8EemtgKPSfKVeNA" target="_VZoGAAH6EemtgKPSfKVeNA">
-          <children xmi:type="notation:Node" xmi:id="_JwAsoAH8EemtgKPSfKVeNA" type="6001">
-            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JwAsoQH8EemtgKPSfKVeNA" x="-3" y="-6"/>
+        <edges xmi:type="notation:Edge" xmi:id="_tnn1MA9aEemWZoTWtpdGMw" visible="false" type="4001" element="_tl3hsA9aEemWZoTWtpdGMw" source="_tnAxMA9aEemWZoTWtpdGMw" target="_SBlZZ_cIEeiCiOA5ZDMQdg">
+          <children xmi:type="notation:Node" xmi:id="_tnpDUA9aEemWZoTWtpdGMw" type="6001">
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tnpDUQ9aEemWZoTWtpdGMw" y="-10"/>
+          </children>
+          <children xmi:type="notation:Node" xmi:id="_tnpqYA9aEemWZoTWtpdGMw" type="6002">
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tnpqYQ9aEemWZoTWtpdGMw" y="10"/>
+          </children>
+          <children xmi:type="notation:Node" xmi:id="_tnqRcA9aEemWZoTWtpdGMw" type="6003">
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tnqRcQ9aEemWZoTWtpdGMw" y="10"/>
+          </children>
+          <styles xmi:type="notation:ConnectorStyle" xmi:id="_tnn1MQ9aEemWZoTWtpdGMw"/>
+          <styles xmi:type="notation:FontStyle" xmi:id="_tnn1Mg9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="8"/>
+          <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_tnn1Mw9aEemWZoTWtpdGMw" points="[0, 0, -1116, -60]$[1116, 60, 0, 0]"/>
+          <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tn468A9aEemWZoTWtpdGMw" id="(0.5,0.5)"/>
+          <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tn468Q9aEemWZoTWtpdGMw" id="(0.5,0.5)"/>
+        </edges>
+        <edges xmi:type="notation:Edge" xmi:id="_tn468g9aEemWZoTWtpdGMw" type="4001" element="_tl5W4A9aEemWZoTWtpdGMw" source="_tnM-cA9aEemWZoTWtpdGMw" target="_IhtloPcIEeiCiOA5ZDMQdg">
+          <children xmi:type="notation:Node" xmi:id="_tn5iAA9aEemWZoTWtpdGMw" type="6001">
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tn5iAQ9aEemWZoTWtpdGMw" x="12" y="5"/>
           </children>
-          <children xmi:type="notation:Node" xmi:id="_JwB6wAH8EemtgKPSfKVeNA" type="6002">
-            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JwB6wQH8EemtgKPSfKVeNA" x="6" y="9"/>
+          <children xmi:type="notation:Node" xmi:id="_tn5iAg9aEemWZoTWtpdGMw" type="6002">
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tn5iAw9aEemWZoTWtpdGMw" x="-11" y="-6"/>
           </children>
-          <children xmi:type="notation:Node" xmi:id="_JwCh0AH8EemtgKPSfKVeNA" type="6003">
-            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JwCh0QH8EemtgKPSfKVeNA" x="7" y="9"/>
+          <children xmi:type="notation:Node" xmi:id="_tn5iBA9aEemWZoTWtpdGMw" type="6003">
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tn5iBQ9aEemWZoTWtpdGMw" x="-11" y="-6"/>
           </children>
-          <styles xmi:type="notation:ConnectorStyle" xmi:id="_Jv_egQH8EemtgKPSfKVeNA"/>
-          <styles xmi:type="notation:FontStyle" xmi:id="_Jv_eggH8EemtgKPSfKVeNA" fontName="Ubuntu" fontHeight="8"/>
-          <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Jv_egwH8EemtgKPSfKVeNA" points="[-100, 0, 90, 0]$[-111, 0, 79, 0]"/>
-          <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JwHaUAH8EemtgKPSfKVeNA" id="(0.5,0.5)"/>
-          <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JwHaUQH8EemtgKPSfKVeNA" id="(0.5,0.5)"/>
+          <styles xmi:type="notation:ConnectorStyle" xmi:id="_tn468w9aEemWZoTWtpdGMw"/>
+          <styles xmi:type="notation:FontStyle" xmi:id="_tn469A9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="8"/>
+          <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_tn469Q9aEemWZoTWtpdGMw" points="[0, 0, 4, 157]$[-4, -157, 0, 0]"/>
+          <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tn6JEA9aEemWZoTWtpdGMw" id="(0.5020080321285141,0.0)"/>
+          <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tn6JEQ9aEemWZoTWtpdGMw" id="(0.5025906735751295,1.0)"/>
         </edges>
-        <edges xmi:type="notation:Edge" xmi:id="_0gOeYANqEem6HrygHybokg" type="4001" element="_0eHlkANqEem6HrygHybokg" source="_w0y1IP0tEei-2r9L9rzO0w" target="_SBlZYPcIEeiCiOA5ZDMQdg">
-          <children xmi:type="notation:Node" xmi:id="_0gSIwANqEem6HrygHybokg" type="6001">
-            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0gSIwQNqEem6HrygHybokg" x="-13" y="3"/>
+        <edges xmi:type="notation:Edge" xmi:id="_tn6JEg9aEemWZoTWtpdGMw" type="4001" element="_tmwSgA9aEemWZoTWtpdGMw" source="_tnAxMA9aEemWZoTWtpdGMw" target="_zT_qsPcHEeiCiOA5ZDMQdg">
+          <children xmi:type="notation:Node" xmi:id="_tn6JFg9aEemWZoTWtpdGMw" type="6001">
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tn6JFw9aEemWZoTWtpdGMw" x="5" y="-9"/>
           </children>
-          <children xmi:type="notation:Node" xmi:id="_0gSv0ANqEem6HrygHybokg" type="6002">
-            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0gSv0QNqEem6HrygHybokg" x="15" y="-5"/>
+          <children xmi:type="notation:Node" xmi:id="_tn6JGA9aEemWZoTWtpdGMw" type="6002">
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tn6JGQ9aEemWZoTWtpdGMw" x="-7" y="8"/>
           </children>
-          <children xmi:type="notation:Node" xmi:id="_0gTW4ANqEem6HrygHybokg" type="6003">
-            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0gTW4QNqEem6HrygHybokg" x="-11"/>
+          <children xmi:type="notation:Node" xmi:id="_tn6JGg9aEemWZoTWtpdGMw" type="6003">
+            <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tn6JGw9aEemWZoTWtpdGMw" x="-6" y="7"/>
           </children>
-          <styles xmi:type="notation:ConnectorStyle" xmi:id="_0gOeYQNqEem6HrygHybokg"/>
-          <styles xmi:type="notation:FontStyle" xmi:id="_0gOeYgNqEem6HrygHybokg" fontName="Ubuntu" fontHeight="8"/>
-          <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0gOeYwNqEem6HrygHybokg" points="[1, -10, -14, 73]$[7, -41, -8, 42]"/>
-          <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0gVzIANqEem6HrygHybokg" id="(0.6644518272425249,0.1694915254237288)"/>
-          <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0gVzIQNqEem6HrygHybokg" id="(0.40875912408759124,0.10638297872340426)"/>
+          <styles xmi:type="notation:ConnectorStyle" xmi:id="_tn6JEw9aEemWZoTWtpdGMw"/>
+          <styles xmi:type="notation:FontStyle" xmi:id="_tn6JFA9aEemWZoTWtpdGMw" fontName="Ubuntu" fontHeight="10" bold="true"/>
+          <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_tn6JFQ9aEemWZoTWtpdGMw" points="[0, 0, -136, 65]$[136, -65, 0, 0]"/>
+          <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tn6wIA9aEemWZoTWtpdGMw" id="(0.5021834061135371,0.0)"/>
+          <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tn6wIQ9aEemWZoTWtpdGMw" id="(0.5047169811320755,1.0)"/>
         </edges>
       </data>
     </ownedAnnotationEntries>
@@ -1727,7 +1742,7 @@
           <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='EObjectTypeContainer']/@style"/>
         </ownedStyle>
         <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='EObjectTypeContainer']"/>
-        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_zRw2XPcHEeiCiOA5ZDMQdg" name="java.net.URL" visible="false" tooltipText="org.eclipse.cmf.occi.core.impl.EObjectTypeImpl@2c5281b1 (name: URL, documentation: null) (instanceClassName: java.net.URL)">
+        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_zRw2XPcHEeiCiOA5ZDMQdg" name="java.net.URL" visible="false" tooltipText="org.eclipse.cmf.occi.core.impl.EObjectTypeImpl@3e42c7c6 (name: URL, documentation: null) (instanceClassName: java.net.URL)">
           <target xmi:type="occi:EObjectType" href="http://schemas.modmacao.org/occi/platform#//@types.0"/>
           <semanticElements xmi:type="occi:EObjectType" href="http://schemas.modmacao.org/occi/platform#//@types.0"/>
           <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_zRw2XfcHEeiCiOA5ZDMQdg" labelSize="10" showIcon="false">
@@ -1746,7 +1761,7 @@
           <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='EObjectTypeContainer']/@style"/>
         </ownedStyle>
         <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='EObjectTypeContainer']"/>
-        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_zRxdIvcHEeiCiOA5ZDMQdg" name="java.net.URI" visible="false" tooltipText="org.eclipse.cmf.occi.core.impl.EObjectTypeImpl@12888eb5 (name: URI, documentation: null) (instanceClassName: java.net.URI)">
+        <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_zRxdIvcHEeiCiOA5ZDMQdg" name="java.net.URI" visible="false" tooltipText="org.eclipse.cmf.occi.core.impl.EObjectTypeImpl@5dcb4826 (name: URI, documentation: null) (instanceClassName: java.net.URI)">
           <target xmi:type="occi:EObjectType" href="http://schemas.modmacao.org/occi/platform#//@types.1"/>
           <semanticElements xmi:type="occi:EObjectType" href="http://schemas.modmacao.org/occi/platform#//@types.1"/>
           <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_zRxdI_cHEeiCiOA5ZDMQdg" labelSize="10" showIcon="false">
@@ -1897,7 +1912,7 @@
         </ownedDiagramElements>
       </ownedDiagramElements>
     </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_zRxdRPcHEeiCiOA5ZDMQdg" name="Sensor" outgoingEdges="__q-OcPcHEeiCiOA5ZDMQdg">
+    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_zRxdRPcHEeiCiOA5ZDMQdg" name="Sensor" outgoingEdges="__q-OcPcHEeiCiOA5ZDMQdg" incomingEdges="_tmwSgA9aEemWZoTWtpdGMw">
       <target xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='sensor']"/>
       <semanticElements xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='sensor']"/>
       <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
@@ -1995,45 +2010,6 @@
         <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']"/>
       </ownedElements>
     </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_zRxdYPcHEeiCiOA5ZDMQdg" name="DateTime">
-      <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.0"/>
-      <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.0"/>
-      <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
-      <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
-      <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
-      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_zRxdYfcHEeiCiOA5ZDMQdg" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,250,191">
-        <labelFormat>bold</labelFormat>
-        <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@style"/>
-      </ownedStyle>
-      <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']"/>
-      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_zRxdYvcHEeiCiOA5ZDMQdg" name="java.lang.String" tooltipText="org.eclipse.cmf.occi.core.impl.StringTypeImpl@5708121f (name: DateTime, documentation: null) (pattern: ^(\d{4}((-)?(0[1-9]|1[0-2])((-)?(0[1-9]|[1-2][0-9]|3[0-1])(T(24:00(:00(\.[0]+)?)?|(([0-1][0-9]|2[0-3])(:)[0-5][0-9])((:)[0-5][0-9](\.[\d]+)?)?)((\+|-)(14:00|(0[0-9]|1[0-3])(:)[0-5][0-9])|Z))?)?)?)$, length: &lt;unset>, minLength: &lt;unset>, maxLength: &lt;unset>)">
-        <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.0"/>
-        <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.0"/>
-        <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_zRxdY_cHEeiCiOA5ZDMQdg" labelSize="10" showIcon="false">
-          <labelFormat>italic</labelFormat>
-          <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']/@style"/>
-        </ownedStyle>
-        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']"/>
-      </ownedElements>
-    </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_zRxdZPcHEeiCiOA5ZDMQdg" name="Second">
-      <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.1"/>
-      <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.1"/>
-      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_zRxdZfcHEeiCiOA5ZDMQdg" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,250,191">
-        <labelFormat>bold</labelFormat>
-        <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@style"/>
-      </ownedStyle>
-      <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']"/>
-      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_zRxdZvcHEeiCiOA5ZDMQdg" name="java.lang.String" tooltipText="org.eclipse.cmf.occi.core.impl.StringTypeImpl@26f9165b (name: Second, documentation: null) (pattern: null, length: &lt;unset>, minLength: &lt;unset>, maxLength: &lt;unset>)">
-        <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.1"/>
-        <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.1"/>
-        <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_zRxdZ_cHEeiCiOA5ZDMQdg" labelSize="10" showIcon="false">
-          <labelFormat>italic</labelFormat>
-          <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']/@style"/>
-        </ownedStyle>
-        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']"/>
-      </ownedElements>
-    </ownedDiagramElements>
     <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_zRxda_cHEeiCiOA5ZDMQdg" sourceNode="_zRxdUvcHEeiCiOA5ZDMQdg" targetNode="_zRw2LPcHEeiCiOA5ZDMQdg">
       <target xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='datagatherer']"/>
       <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_zRxdbPcHEeiCiOA5ZDMQdg" targetArrow="InputClosedArrow" size="2">
@@ -2435,6 +2411,14 @@
         <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@style"/>
       </ownedStyle>
       <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']"/>
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tlZAkA9aEemWZoTWtpdGMw" name="gatherer.address: String">
+        <target xmi:type="occi:Attribute" href="model/monitoring.occie#//@kinds[term='processor']/@attributes.0"/>
+        <semanticElements xmi:type="occi:Attribute" href="model/monitoring.occie#//@kinds[term='processor']/@attributes.0"/>
+        <ownedStyle xmi:type="diagram:Square" xmi:id="_tlaOsA9aEemWZoTWtpdGMw" labelSize="10" labelAlignment="LEFT" labelPosition="node">
+          <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']/@conditionnalStyles.2/@style"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']"/>
+      </ownedElements>
     </ownedDiagramElements>
     <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_HDKkAPcIEeiCiOA5ZDMQdg" sourceNode="_CqlaMPcIEeiCiOA5ZDMQdg" targetNode="_zRw2LPcHEeiCiOA5ZDMQdg">
       <target xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='processor']"/>
@@ -2444,7 +2428,7 @@
       </ownedStyle>
       <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='ParentEdge']"/>
     </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_IhgKQPcIEeiCiOA5ZDMQdg" name="Publisher" outgoingEdges="_Ihlp0PcIEeiCiOA5ZDMQdg">
+    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_IhgKQPcIEeiCiOA5ZDMQdg" name="Publisher" outgoingEdges="_Ihlp0PcIEeiCiOA5ZDMQdg" incomingEdges="_tl5W4A9aEemWZoTWtpdGMw">
       <target xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='publisher']"/>
       <semanticElements xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='publisher']"/>
       <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
@@ -2455,6 +2439,15 @@
         <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@style"/>
       </ownedStyle>
       <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']"/>
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tla1wA9aEemWZoTWtpdGMw" name="publisher.endpoint: String">
+        <target xmi:type="occi:Attribute" href="model/monitoring.occie#//@kinds[term='publisher']/@attributes.0"/>
+        <semanticElements xmi:type="occi:Attribute" href="model/monitoring.occie#//@kinds[term='publisher']/@attributes.0"/>
+        <ownedStyle xmi:type="diagram:Square" xmi:id="_tlcD4A9aEemWZoTWtpdGMw" labelSize="10" labelAlignment="LEFT" labelPosition="node">
+          <labelFormat>bold</labelFormat>
+          <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']/@conditionnalStyles.3/@style"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']"/>
+      </ownedElements>
     </ownedDiagramElements>
     <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_Ihlp0PcIEeiCiOA5ZDMQdg" sourceNode="_IhgKQPcIEeiCiOA5ZDMQdg" targetNode="_zRw2LPcHEeiCiOA5ZDMQdg">
       <target xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='publisher']"/>
@@ -2505,7 +2498,7 @@
           <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']"/>
         </ownedElements>
       </ownedDiagramElements>
-      <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_SAWqUvcIEeiCiOA5ZDMQdg" name="Resource" outgoingEdges="_SBKioPcIEeiCiOA5ZDMQdg" incomingEdges="_SBLJs_cIEeiCiOA5ZDMQdg _SBLJtvcIEeiCiOA5ZDMQdg _SBddkPcIEeiCiOA5ZDMQdg _SBeEoPcIEeiCiOA5ZDMQdg _0eHlkANqEem6HrygHybokg">
+      <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_SAWqUvcIEeiCiOA5ZDMQdg" name="Resource" outgoingEdges="_SBKioPcIEeiCiOA5ZDMQdg" incomingEdges="_SBLJs_cIEeiCiOA5ZDMQdg _SBLJtvcIEeiCiOA5ZDMQdg _SBddkPcIEeiCiOA5ZDMQdg _SBeEoPcIEeiCiOA5ZDMQdg">
         <target xmi:type="occi:Kind" href="http://schemas.ogf.org/occi/core#//@kinds[term='resource']"/>
         <semanticElements xmi:type="occi:Kind" href="http://schemas.ogf.org/occi/core#//@kinds[term='resource']"/>
         <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_SAWqU_cIEeiCiOA5ZDMQdg" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" borderColor="0,47,0" backgroundStyle="GradientTopToBottom" backgroundColor="187,242,196" foregroundColor="255,255,255">
@@ -2522,7 +2515,7 @@
           <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']"/>
         </ownedElements>
       </ownedDiagramElements>
-      <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_SAXRYPcIEeiCiOA5ZDMQdg" name="Link" visible="false" outgoingEdges="_SBLJsPcIEeiCiOA5ZDMQdg _SBddkPcIEeiCiOA5ZDMQdg _SBeEoPcIEeiCiOA5ZDMQdg" incomingEdges="_SBLJufcIEeiCiOA5ZDMQdg">
+      <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_SAXRYPcIEeiCiOA5ZDMQdg" name="Link" visible="false" outgoingEdges="_SBLJsPcIEeiCiOA5ZDMQdg _SBddkPcIEeiCiOA5ZDMQdg _SBeEoPcIEeiCiOA5ZDMQdg" incomingEdges="_SBLJufcIEeiCiOA5ZDMQdg _tl3hsA9aEemWZoTWtpdGMw">
         <target xmi:type="occi:Kind" href="http://schemas.ogf.org/occi/core#//@kinds[term='link']"/>
         <semanticElements xmi:type="occi:Kind" href="http://schemas.ogf.org/occi/core#//@kinds[term='link']"/>
         <graphicalFilters xmi:type="diagram:HideFilter" xmi:id="_Uj0FkPcIEeiCiOA5ZDMQdg"/>
@@ -2604,120 +2597,156 @@
       </ownedStyle>
       <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='TargetEdge']"/>
     </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_uHIHwPcIEeiCiOA5ZDMQdg" name="String">
-      <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.2"/>
-      <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.2"/>
+    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_tlIh4A9aEemWZoTWtpdGMw" name="MonitoringProperty" outgoingEdges="_tl3hsA9aEemWZoTWtpdGMw _tmwSgA9aEemWZoTWtpdGMw">
+      <target xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='monitoringproperty']"/>
+      <semanticElements xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='monitoringproperty']"/>
       <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
       <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
       <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
-      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_uHIu0PcIEeiCiOA5ZDMQdg" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,250,191">
+      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_tlJI8A9aEemWZoTWtpdGMw" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" borderColor="0,47,0" backgroundStyle="GradientTopToBottom" backgroundColor="187,242,196" foregroundColor="255,255,255">
         <labelFormat>bold</labelFormat>
-        <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@style"/>
+        <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@style"/>
       </ownedStyle>
-      <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']"/>
-      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_uID74PcIEeiCiOA5ZDMQdg" name="java.lang.String" tooltipText="org.eclipse.cmf.occi.core.impl.StringTypeImpl@556ef86d (name: String, documentation: null) (pattern: null, length: &lt;unset>, minLength: &lt;unset>, maxLength: &lt;unset>)">
-        <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.2"/>
-        <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.2"/>
-        <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_uID74fcIEeiCiOA5ZDMQdg" labelSize="10" showIcon="false">
+      <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']"/>
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tlK-IA9aEemWZoTWtpdGMw" name="monitoring.property.name: String">
+        <target xmi:type="occi:Attribute" href="model/monitoring.occie#//@kinds[term='monitoringproperty']/@attributes.0"/>
+        <semanticElements xmi:type="occi:Attribute" href="model/monitoring.occie#//@kinds[term='monitoringproperty']/@attributes.0"/>
+        <ownedStyle xmi:type="diagram:Square" xmi:id="_tlMMQA9aEemWZoTWtpdGMw" labelSize="10" labelAlignment="LEFT" labelPosition="node">
           <labelFormat>italic</labelFormat>
-          <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']/@style"/>
+          <labelFormat>bold</labelFormat>
+          <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']/@conditionnalStyles.1/@style"/>
         </ownedStyle>
-        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']"/>
+        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']"/>
+      </ownedElements>
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tlMzUA9aEemWZoTWtpdGMw" name="monitoring.property.value: String">
+        <target xmi:type="occi:Attribute" href="model/monitoring.occie#//@kinds[term='monitoringproperty']/@attributes.1"/>
+        <semanticElements xmi:type="occi:Attribute" href="model/monitoring.occie#//@kinds[term='monitoringproperty']/@attributes.1"/>
+        <ownedStyle xmi:type="diagram:Square" xmi:id="_tlOogA9aEemWZoTWtpdGMw" labelSize="10" labelAlignment="LEFT" labelPosition="node">
+          <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']/@conditionnalStyles.2/@style"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='KindContainer']/@subNodeMappings[name='KindAttribute']"/>
       </ownedElements>
     </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_wzfNkP0tEei-2r9L9rzO0w" name="MonitoringProperties" outgoingEdges="_0eHlkANqEem6HrygHybokg">
-      <target xmi:type="occi:Mixin" href="model/monitoring.occie#//@mixins[term='monitoringproperties']"/>
-      <semanticElements xmi:type="occi:Mixin" href="model/monitoring.occie#//@mixins[term='monitoringproperties']"/>
+    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_tld5EA9aEemWZoTWtpdGMw" name="MartPublisher" outgoingEdges="_tl5W4A9aEemWZoTWtpdGMw">
+      <target xmi:type="occi:Mixin" href="model/monitoring.occie#//@mixins[term='martpublisher']"/>
+      <semanticElements xmi:type="occi:Mixin" href="model/monitoring.occie#//@mixins[term='martpublisher']"/>
       <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
       <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
       <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
-      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_wzf0oP0tEei-2r9L9rzO0w" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" borderColor="0,37,74" backgroundStyle="GradientTopToBottom" backgroundColor="187,221,255" foregroundColor="255,255,255">
+      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_tld5EQ9aEemWZoTWtpdGMw" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" borderColor="0,37,74" backgroundStyle="GradientTopToBottom" backgroundColor="187,221,255" foregroundColor="255,255,255">
         <labelFormat>bold</labelFormat>
         <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='MixinContainer']/@style"/>
       </ownedStyle>
       <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='MixinContainer']"/>
-      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_wzgbsP0tEei-2r9L9rzO0w" name="monitoring.properties: MonitoringPropertyArray">
-        <target xmi:type="occi:Attribute" href="model/monitoring.occie#//@mixins[term='monitoringproperties']/@attributes.0"/>
-        <semanticElements xmi:type="occi:Attribute" href="model/monitoring.occie#//@mixins[term='monitoringproperties']/@attributes.0"/>
-        <ownedStyle xmi:type="diagram:Square" xmi:id="_L-s6AAN2Eem6HrygHybokg" labelSize="10" labelAlignment="LEFT" labelPosition="node">
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tlegIA9aEemWZoTWtpdGMw" name="monitoring.property.name: String">
+        <target xmi:type="occi:Attribute" href="model/monitoring.occie#//@mixins[term='martpublisher']/@attributes.0"/>
+        <semanticElements xmi:type="occi:Attribute" href="model/monitoring.occie#//@mixins[term='martpublisher']/@attributes.0"/>
+        <ownedStyle xmi:type="diagram:Square" xmi:id="_tlfHMA9aEemWZoTWtpdGMw" labelSize="10" labelAlignment="LEFT" labelPosition="node">
+          <labelFormat>italic</labelFormat>
+          <labelFormat>bold</labelFormat>
+          <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='MixinContainer']/@subNodeMappings[name='MixinAttribute']/@conditionnalStyles.1/@style"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='MixinContainer']/@subNodeMappings[name='MixinAttribute']"/>
+      </ownedElements>
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tlfuQA9aEemWZoTWtpdGMw" name="monitoring.property.id: String">
+        <target xmi:type="occi:Attribute" href="model/monitoring.occie#//@mixins[term='martpublisher']/@attributes.1"/>
+        <semanticElements xmi:type="occi:Attribute" href="model/monitoring.occie#//@mixins[term='martpublisher']/@attributes.1"/>
+        <ownedStyle xmi:type="diagram:Square" xmi:id="_tlnqEA9aEemWZoTWtpdGMw" labelSize="10" labelAlignment="LEFT" labelPosition="node">
           <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='MixinContainer']/@subNodeMappings[name='MixinAttribute']/@conditionnalStyles.2/@style"/>
         </ownedStyle>
         <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='MixinContainer']/@subNodeMappings[name='MixinAttribute']"/>
       </ownedElements>
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tloRIA9aEemWZoTWtpdGMw" name="monitoring.property.resource: String">
+        <target xmi:type="occi:Attribute" href="model/monitoring.occie#//@mixins[term='martpublisher']/@attributes.2"/>
+        <semanticElements xmi:type="occi:Attribute" href="model/monitoring.occie#//@mixins[term='martpublisher']/@attributes.2"/>
+        <ownedStyle xmi:type="diagram:Square" xmi:id="_tlo4MA9aEemWZoTWtpdGMw" labelSize="10" labelAlignment="LEFT" labelPosition="node">
+          <labelFormat>italic</labelFormat>
+          <labelFormat>bold</labelFormat>
+          <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='MixinContainer']/@subNodeMappings[name='MixinAttribute']/@conditionnalStyles.1/@style"/>
+        </ownedStyle>
+        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='MixinContainer']/@subNodeMappings[name='MixinAttribute']"/>
+      </ownedElements>
     </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_VXmswAH6EemtgKPSfKVeNA" name="MonitoringProperty" incomingEdges="_JvyqMAH8EemtgKPSfKVeNA">
-      <target xmi:type="occi:RecordType" href="model/monitoring.occie#//@types.3"/>
-      <semanticElements xmi:type="occi:RecordType" href="model/monitoring.occie#//@types.3"/>
-      <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
-      <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
-      <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
-      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_VXnT0AH6EemtgKPSfKVeNA" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="221,236,202">
+    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_tlpfQA9aEemWZoTWtpdGMw" name="DateTime">
+      <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.0"/>
+      <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.0"/>
+      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_tlqGUA9aEemWZoTWtpdGMw" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,250,191">
         <labelFormat>bold</labelFormat>
-        <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='RecordTypeContainer']/@style"/>
+        <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@style"/>
       </ownedStyle>
-      <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='RecordTypeContainer']"/>
-      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_BvN7cAH7EemtgKPSfKVeNA" name="name: String">
-        <target xmi:type="occi:RecordField" href="model/monitoring.occie#//@types.3/@recordFields.0"/>
-        <semanticElements xmi:type="occi:RecordField" href="model/monitoring.occie#//@types.3/@recordFields.0"/>
-        <ownedStyle xmi:type="diagram:Square" xmi:id="_BvRl0AH7EemtgKPSfKVeNA" labelSize="10" labelAlignment="LEFT" labelPosition="node">
-          <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='RecordTypeContainer']/@subNodeMappings[name='RecordField']/@style"/>
-        </ownedStyle>
-        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='RecordTypeContainer']/@subNodeMappings[name='RecordField']"/>
-      </ownedElements>
-      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_CzKrwAH7EemtgKPSfKVeNA" name="value: String">
-        <target xmi:type="occi:RecordField" href="model/monitoring.occie#//@types.3/@recordFields.1"/>
-        <semanticElements xmi:type="occi:RecordField" href="model/monitoring.occie#//@types.3/@recordFields.1"/>
-        <ownedStyle xmi:type="diagram:Square" xmi:id="_CzL54AH7EemtgKPSfKVeNA" labelSize="10" labelAlignment="LEFT" labelPosition="node">
-          <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='RecordTypeContainer']/@subNodeMappings[name='RecordField']/@style"/>
+      <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']"/>
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tlqtYg9aEemWZoTWtpdGMw" name="java.lang.String" tooltipText="org.eclipse.cmf.occi.core.impl.StringTypeImpl@5fadbc46 (name: DateTime, documentation: null) (pattern: ^(\d{4}((-)?(0[1-9]|1[0-2])((-)?(0[1-9]|[1-2][0-9]|3[0-1])(T(24:00(:00(\.[0]+)?)?|(([0-1][0-9]|2[0-3])(:)[0-5][0-9])((:)[0-5][0-9](\.[\d]+)?)?)((\+|-)(14:00|(0[0-9]|1[0-3])(:)[0-5][0-9])|Z))?)?)?)$, length: &lt;unset>, minLength: &lt;unset>, maxLength: &lt;unset>)">
+        <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.0"/>
+        <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.0"/>
+        <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_tlr7gA9aEemWZoTWtpdGMw" labelSize="10" showIcon="false">
+          <labelFormat>italic</labelFormat>
+          <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']/@style"/>
         </ownedStyle>
-        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='RecordTypeContainer']/@subNodeMappings[name='RecordField']"/>
+        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']"/>
       </ownedElements>
-      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_UdYDsAH7EemtgKPSfKVeNA" name="Id: String">
-        <target xmi:type="occi:RecordField" href="model/monitoring.occie#//@types.3/@recordFields.2"/>
-        <semanticElements xmi:type="occi:RecordField" href="model/monitoring.occie#//@types.3/@recordFields.2"/>
-        <ownedStyle xmi:type="diagram:Square" xmi:id="_UdYqwAH7EemtgKPSfKVeNA" labelSize="10" labelAlignment="LEFT" labelPosition="node">
-          <description xmi:type="style:SquareDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='RecordTypeContainer']/@subNodeMappings[name='RecordField']/@style"/>
+    </ownedDiagramElements>
+    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_tlqGUQ9aEemWZoTWtpdGMw" name="Second">
+      <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.1"/>
+      <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.1"/>
+      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_tlqGUg9aEemWZoTWtpdGMw" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,250,191">
+        <labelFormat>bold</labelFormat>
+        <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@style"/>
+      </ownedStyle>
+      <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']"/>
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tlsikA9aEemWZoTWtpdGMw" name="java.lang.String" tooltipText="org.eclipse.cmf.occi.core.impl.StringTypeImpl@78fe3714 (name: Second, documentation: null) (pattern: null, length: &lt;unset>, minLength: &lt;unset>, maxLength: &lt;unset>)">
+        <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.1"/>
+        <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.1"/>
+        <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_tlsikQ9aEemWZoTWtpdGMw" labelSize="10" showIcon="false">
+          <labelFormat>italic</labelFormat>
+          <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']/@style"/>
         </ownedStyle>
-        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='RecordTypeContainer']/@subNodeMappings[name='RecordField']"/>
+        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']"/>
       </ownedElements>
     </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_ConzMAH8EemtgKPSfKVeNA" name="MonitoringPropertyArray" outgoingEdges="_JvyqMAH8EemtgKPSfKVeNA">
-      <target xmi:type="occi:ArrayType" href="model/monitoring.occie#//@types.4"/>
-      <semanticElements xmi:type="occi:ArrayType" href="model/monitoring.occie#//@types.4"/>
-      <arrangeConstraints>KEEP_LOCATION</arrangeConstraints>
-      <arrangeConstraints>KEEP_SIZE</arrangeConstraints>
-      <arrangeConstraints>KEEP_RATIO</arrangeConstraints>
-      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_CooaQAH8EemtgKPSfKVeNA" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="221,236,202">
+    <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_tlqtYA9aEemWZoTWtpdGMw" name="String">
+      <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.2"/>
+      <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.2"/>
+      <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_tlqtYQ9aEemWZoTWtpdGMw" labelSize="12" showIcon="false" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,250,191">
         <labelFormat>bold</labelFormat>
-        <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='ArrayTypeContainer']/@style"/>
+        <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@style"/>
       </ownedStyle>
-      <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='ArrayTypeContainer']"/>
-      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_Cpeu0AH8EemtgKPSfKVeNA" name="Array" tooltipText="org.eclipse.cmf.occi.core.impl.ArrayTypeImpl@3f832bd (name: MonitoringPropertyArray, documentation: null)">
-        <target xmi:type="occi:ArrayType" href="model/monitoring.occie#//@types.4"/>
-        <semanticElements xmi:type="occi:ArrayType" href="model/monitoring.occie#//@types.4"/>
-        <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_CpfV4AH8EemtgKPSfKVeNA" labelSize="10" showIcon="false">
+      <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']"/>
+      <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_tltJoA9aEemWZoTWtpdGMw" name="java.lang.String" tooltipText="org.eclipse.cmf.occi.core.impl.StringTypeImpl@4bf44bcd (name: String, documentation: null) (pattern: null, length: &lt;unset>, minLength: &lt;unset>, maxLength: &lt;unset>)">
+        <target xmi:type="occi:StringType" href="model/monitoring.occie#//@types.2"/>
+        <semanticElements xmi:type="occi:StringType" href="model/monitoring.occie#//@types.2"/>
+        <ownedStyle xmi:type="diagram:BundledImage" xmi:id="_tltJoQ9aEemWZoTWtpdGMw" labelSize="10" showIcon="false">
           <labelFormat>italic</labelFormat>
-          <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='ArrayTypeContainer']/@subNodeMappings[name='EC_ArrayType_Name']/@style"/>
+          <description xmi:type="style:BundledImageDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']/@style"/>
         </ownedStyle>
-        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='ArrayTypeContainer']/@subNodeMappings[name='EC_ArrayType_Name']"/>
+        <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@containerMappings[name='StringTypeContainer']/@subNodeMappings[name='EC_StringType_Type']"/>
       </ownedElements>
     </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_JvyqMAH8EemtgKPSfKVeNA" sourceNode="_ConzMAH8EemtgKPSfKVeNA" targetNode="_VXmswAH6EemtgKPSfKVeNA">
-      <target xmi:type="occi:ArrayType" href="model/monitoring.occie#//@types.4"/>
-      <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_JvyqMQH8EemtgKPSfKVeNA" size="2">
-        <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='TypeEdge']/@style"/>
-        <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_JvyqMgH8EemtgKPSfKVeNA"/>
+    <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_tl3hsA9aEemWZoTWtpdGMw" visible="false" sourceNode="_tlIh4A9aEemWZoTWtpdGMw" targetNode="_SAXRYPcIEeiCiOA5ZDMQdg">
+      <target xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='monitoringproperty']"/>
+      <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_tl4IwA9aEemWZoTWtpdGMw" targetArrow="InputClosedArrow" size="2">
+        <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='ParentEdge']/@style"/>
+        <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_tl4IwQ9aEemWZoTWtpdGMw"/>
       </ownedStyle>
-      <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='TypeEdge']"/>
+      <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='ParentEdge']"/>
     </ownedDiagramElements>
-    <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_0eHlkANqEem6HrygHybokg" sourceNode="_wzfNkP0tEei-2r9L9rzO0w" targetNode="_SAWqUvcIEeiCiOA5ZDMQdg">
-      <target xmi:type="occi:Mixin" href="model/monitoring.occie#//@mixins[term='monitoringproperties']"/>
-      <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_0eIMoANqEem6HrygHybokg" lineStyle="dash" size="2">
+    <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_tl5W4A9aEemWZoTWtpdGMw" sourceNode="_tld5EA9aEemWZoTWtpdGMw" targetNode="_IhgKQPcIEeiCiOA5ZDMQdg">
+      <target xmi:type="occi:Mixin" href="model/monitoring.occie#//@mixins[term='martpublisher']"/>
+      <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_tl598A9aEemWZoTWtpdGMw" lineStyle="dash" size="2">
         <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='AppliesEdge']/@style"/>
-        <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_0eIMoQNqEem6HrygHybokg"/>
+        <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_tl598Q9aEemWZoTWtpdGMw"/>
       </ownedStyle>
       <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='AppliesEdge']"/>
     </ownedDiagramElements>
+    <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_tmwSgA9aEemWZoTWtpdGMw" name="target" sourceNode="_tlIh4A9aEemWZoTWtpdGMw" targetNode="_zRxdRPcHEeiCiOA5ZDMQdg">
+      <target xmi:type="occi:Kind" href="model/monitoring.occie#//@kinds[term='monitoringproperty']"/>
+      <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_tmwSgQ9aEemWZoTWtpdGMw" size="2" strokeColor="0,0,0">
+        <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='TargetEdge']/@style"/>
+        <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_tmwSgg9aEemWZoTWtpdGMw" labelSize="10" showIcon="false">
+          <labelFormat>bold</labelFormat>
+        </centerLabelStyle>
+      </ownedStyle>
+      <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer/@edgeMappings[name='TargetEdge']"/>
+    </ownedDiagramElements>
     <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']"/>
     <filterVariableHistory xmi:type="diagram:FilterVariableHistory" xmi:id="_zRxd4_cHEeiCiOA5ZDMQdg"/>
     <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.cmf.occi.core.design/description/OCCIware.odesign#//@ownedViewpoints[name='OCCI%20Extension']/@ownedRepresentations[name='Extension%20diagram']/@defaultLayer"/>
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Martpublisher.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Martpublisher.java
new file mode 100644
index 0000000000000000000000000000000000000000..b180ac74ccf4a95191d282a497821d25157c3b37
--- /dev/null
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Martpublisher.java
@@ -0,0 +1,126 @@
+/**
+ * Copyright (c) 2015-2017 Obeo, Inria
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 	
+ * Contributors:
+ * - William Piers <william.piers@obeo.fr>
+ * - Philippe Merle <philippe.merle@inria.fr>
+ * - Faiez Zalila <faiez.zalila@inria.fr>
+ */
+package monitoring;
+
+import java.util.Map;
+
+import org.eclipse.cmf.occi.core.MixinBase;
+
+import org.eclipse.emf.common.util.DiagnosticChain;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Martpublisher</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link monitoring.Martpublisher#getMonitoringPropertyName <em>Monitoring Property Name</em>}</li>
+ *   <li>{@link monitoring.Martpublisher#getMonitoringPropertyId <em>Monitoring Property Id</em>}</li>
+ *   <li>{@link monitoring.Martpublisher#getMonitoringPropertyResource <em>Monitoring Property Resource</em>}</li>
+ * </ul>
+ *
+ * @see monitoring.MonitoringPackage#getMartpublisher()
+ * @model annotation="http://www.eclipse.org/emf/2002/Ecore constraints='appliesConstraint'"
+ * @generated
+ */
+public interface Martpublisher extends MixinBase {
+	/**
+	 * Returns the value of the '<em><b>Monitoring Property Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * 
+	 * <!-- end-model-doc -->
+	 * @return the value of the '<em>Monitoring Property Name</em>' attribute.
+	 * @see #setMonitoringPropertyName(String)
+	 * @see monitoring.MonitoringPackage#getMartpublisher_MonitoringPropertyName()
+	 * @model dataType="monitoring.String" required="true"
+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!Martpublisher!monitoringPropertyName'"
+	 * @generated
+	 */
+	String getMonitoringPropertyName();
+
+	/**
+	 * Sets the value of the '{@link monitoring.Martpublisher#getMonitoringPropertyName <em>Monitoring Property Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Monitoring Property Name</em>' attribute.
+	 * @see #getMonitoringPropertyName()
+	 * @generated
+	 */
+	void setMonitoringPropertyName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Monitoring Property Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * 
+	 * <!-- end-model-doc -->
+	 * @return the value of the '<em>Monitoring Property Id</em>' attribute.
+	 * @see #setMonitoringPropertyId(String)
+	 * @see monitoring.MonitoringPackage#getMartpublisher_MonitoringPropertyId()
+	 * @model dataType="monitoring.String"
+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!Martpublisher!monitoringPropertyId'"
+	 * @generated
+	 */
+	String getMonitoringPropertyId();
+
+	/**
+	 * Sets the value of the '{@link monitoring.Martpublisher#getMonitoringPropertyId <em>Monitoring Property Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Monitoring Property Id</em>' attribute.
+	 * @see #getMonitoringPropertyId()
+	 * @generated
+	 */
+	void setMonitoringPropertyId(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Monitoring Property Resource</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * 
+	 * <!-- end-model-doc -->
+	 * @return the value of the '<em>Monitoring Property Resource</em>' attribute.
+	 * @see #setMonitoringPropertyResource(String)
+	 * @see monitoring.MonitoringPackage#getMartpublisher_MonitoringPropertyResource()
+	 * @model dataType="monitoring.String" required="true"
+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!Martpublisher!monitoringPropertyResource'"
+	 * @generated
+	 */
+	String getMonitoringPropertyResource();
+
+	/**
+	 * Sets the value of the '{@link monitoring.Martpublisher#getMonitoringPropertyResource <em>Monitoring Property Resource</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Monitoring Property Resource</em>' attribute.
+	 * @see #getMonitoringPropertyResource()
+	 * @generated
+	 */
+	void setMonitoringPropertyResource(String value);
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv appliesConstraint:\n *   let severity : Integer[1] = \'Martpublisher::appliesConstraint\'.getSeverity()\n *   in\n *     if severity &lt;= 0\n *     then true\n *     else\n *       let\n *         result : occi::Boolean[1] = self.entity.oclIsKindOf(Publisher)\n *       in\n *         \'Martpublisher::appliesConstraint\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.evaluation.Executor%&gt; executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.ids.IdResolver%&gt; idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.values.IntegerValue%&gt; severity_0 = &lt;%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%&gt;.INSTANCE.evaluate(executor, &lt;%monitoring.MonitoringTables%&gt;.STR_Martpublisher_c_c_appliesConstraint);\nfinal /*@NonInvalid\052/ boolean le = &lt;%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%&gt;.INSTANCE.evaluate(executor, severity_0, &lt;%monitoring.MonitoringTables%&gt;.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.Class%&gt; TYP_monitoring_c_c_Publisher = idResolver.getClass(&lt;%monitoring.MonitoringTables%&gt;.CLSSid_Publisher, null);\n\tfinal /*@NonInvalid\052/ &lt;%org.eclipse.cmf.occi.core.Entity%&gt; entity = this.getEntity();\n\tfinal /*@NonInvalid\052/ boolean result = &lt;%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%&gt;.INSTANCE.evaluate(executor, entity, TYP_monitoring_c_c_Publisher).booleanValue();\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = &lt;%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%&gt;.INSTANCE.evaluate(executor, &lt;%org.eclipse.ocl.pivot.ids.TypeId%&gt;.BOOLEAN, &lt;%monitoring.MonitoringTables%&gt;.STR_Martpublisher_c_c_appliesConstraint, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, &lt;%monitoring.MonitoringTables%&gt;.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'"
+	 * @generated
+	 */
+	boolean appliesConstraint(DiagnosticChain diagnostics, Map<Object, Object> context);
+
+} // Martpublisher
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringFactory.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringFactory.java
index 0bc0165fffd68f60eb4e54e0a91a9726d6c2e747..a7ed41c06a1213f2ef73e24cd4f3f63f1a6fb923 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringFactory.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringFactory.java
@@ -31,24 +31,6 @@ public interface MonitoringFactory extends EFactory {
 	 */
 	MonitoringFactory eINSTANCE = monitoring.impl.MonitoringFactoryImpl.init();
 
-	/**
-	 * Returns a new object of class '<em>Property</em>'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Property</em>'.
-	 * @generated
-	 */
-	MonitoringProperty createMonitoringProperty();
-
-	/**
-	 * Returns a new object of class '<em>Property Array</em>'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Property Array</em>'.
-	 * @generated
-	 */
-	MonitoringPropertyArray createMonitoringPropertyArray();
-
 	/**
 	 * Returns a new object of class '<em>Sensor</em>'.
 	 * <!-- begin-user-doc -->
@@ -86,13 +68,22 @@ public interface MonitoringFactory extends EFactory {
 	Publisher createPublisher();
 
 	/**
-	 * Returns a new object of class '<em>Monitoringproperties</em>'.
+	 * Returns a new object of class '<em>Monitoringproperty</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Monitoringproperty</em>'.
+	 * @generated
+	 */
+	Monitoringproperty createMonitoringproperty();
+
+	/**
+	 * Returns a new object of class '<em>Martpublisher</em>'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Monitoringproperties</em>'.
+	 * @return a new object of class '<em>Martpublisher</em>'.
 	 * @generated
 	 */
-	Monitoringproperties createMonitoringproperties();
+	Martpublisher createMartpublisher();
 
 	/**
 	 * Returns the package supported by this factory.
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringPackage.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringPackage.java
index 3818574a5d7c43738be40d209932a13630fe8991..eae2d2d4f136a2a6605ecb4739e37060a7e97b6b 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringPackage.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringPackage.java
@@ -19,7 +19,6 @@ import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EDataType;
 import org.eclipse.emf.ecore.EOperation;
 import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
 
 import org.modmacao.occi.platform.PlatformPackage;
 
@@ -72,98 +71,6 @@ public interface MonitoringPackage extends EPackage {
 	 */
 	MonitoringPackage eINSTANCE = monitoring.impl.MonitoringPackageImpl.init();
 
-	/**
-	 * The meta object id for the '{@link monitoring.impl.MonitoringPropertyImpl <em>Property</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see monitoring.impl.MonitoringPropertyImpl
-	 * @see monitoring.impl.MonitoringPackageImpl#getMonitoringProperty()
-	 * @generated
-	 */
-	int MONITORING_PROPERTY = 0;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int MONITORING_PROPERTY__NAME = 0;
-
-	/**
-	 * The feature id for the '<em><b>Value</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int MONITORING_PROPERTY__VALUE = 1;
-
-	/**
-	 * The feature id for the '<em><b>Id</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int MONITORING_PROPERTY__ID = 2;
-
-	/**
-	 * The number of structural features of the '<em>Property</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int MONITORING_PROPERTY_FEATURE_COUNT = 3;
-
-	/**
-	 * The number of operations of the '<em>Property</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int MONITORING_PROPERTY_OPERATION_COUNT = 0;
-
-	/**
-	 * The meta object id for the '{@link monitoring.impl.MonitoringPropertyArrayImpl <em>Property Array</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see monitoring.impl.MonitoringPropertyArrayImpl
-	 * @see monitoring.impl.MonitoringPackageImpl#getMonitoringPropertyArray()
-	 * @generated
-	 */
-	int MONITORING_PROPERTY_ARRAY = 1;
-
-	/**
-	 * The feature id for the '<em><b>Monitoringpropertyarray Values</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES = 0;
-
-	/**
-	 * The number of structural features of the '<em>Property Array</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int MONITORING_PROPERTY_ARRAY_FEATURE_COUNT = 1;
-
-	/**
-	 * The number of operations of the '<em>Property Array</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int MONITORING_PROPERTY_ARRAY_OPERATION_COUNT = 0;
-
 	/**
 	 * The meta object id for the '{@link monitoring.impl.SensorImpl <em>Sensor</em>}' class.
 	 * <!-- begin-user-doc -->
@@ -172,7 +79,7 @@ public interface MonitoringPackage extends EPackage {
 	 * @see monitoring.impl.MonitoringPackageImpl#getSensor()
 	 * @generated
 	 */
-	int SENSOR = 2;
+	int SENSOR = 0;
 
 	/**
 	 * The feature id for the '<em><b>Id</b></em>' attribute.
@@ -470,7 +377,7 @@ public interface MonitoringPackage extends EPackage {
 	 * @see monitoring.impl.MonitoringPackageImpl#getDatagatherer()
 	 * @generated
 	 */
-	int DATAGATHERER = 3;
+	int DATAGATHERER = 1;
 
 	/**
 	 * The feature id for the '<em><b>Id</b></em>' attribute.
@@ -714,7 +621,7 @@ public interface MonitoringPackage extends EPackage {
 	 * @see monitoring.impl.MonitoringPackageImpl#getProcessor()
 	 * @generated
 	 */
-	int PROCESSOR = 4;
+	int PROCESSOR = 2;
 
 	/**
 	 * The feature id for the '<em><b>Id</b></em>' attribute.
@@ -824,6 +731,15 @@ public interface MonitoringPackage extends EPackage {
 	 */
 	int PROCESSOR__OCCI_COMPONENT_STATE_MESSAGE = PlatformPackage.COMPONENT__OCCI_COMPONENT_STATE_MESSAGE;
 
+	/**
+	 * The feature id for the '<em><b>Gatherer Address</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROCESSOR__GATHERER_ADDRESS = PlatformPackage.COMPONENT_FEATURE_COUNT + 0;
+
 	/**
 	 * The number of structural features of the '<em>Processor</em>' class.
 	 * <!-- begin-user-doc -->
@@ -831,7 +747,7 @@ public interface MonitoringPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int PROCESSOR_FEATURE_COUNT = PlatformPackage.COMPONENT_FEATURE_COUNT + 0;
+	int PROCESSOR_FEATURE_COUNT = PlatformPackage.COMPONENT_FEATURE_COUNT + 1;
 
 	/**
 	 * The operation id for the '<em>Occi Create</em>' operation.
@@ -931,7 +847,7 @@ public interface MonitoringPackage extends EPackage {
 	 * @see monitoring.impl.MonitoringPackageImpl#getPublisher()
 	 * @generated
 	 */
-	int PUBLISHER = 5;
+	int PUBLISHER = 3;
 
 	/**
 	 * The feature id for the '<em><b>Id</b></em>' attribute.
@@ -1041,6 +957,15 @@ public interface MonitoringPackage extends EPackage {
 	 */
 	int PUBLISHER__OCCI_COMPONENT_STATE_MESSAGE = PlatformPackage.COMPONENT__OCCI_COMPONENT_STATE_MESSAGE;
 
+	/**
+	 * The feature id for the '<em><b>Publisher Endpoint</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PUBLISHER__PUBLISHER_ENDPOINT = PlatformPackage.COMPONENT_FEATURE_COUNT + 0;
+
 	/**
 	 * The number of structural features of the '<em>Publisher</em>' class.
 	 * <!-- begin-user-doc -->
@@ -1048,7 +973,7 @@ public interface MonitoringPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int PUBLISHER_FEATURE_COUNT = PlatformPackage.COMPONENT_FEATURE_COUNT + 0;
+	int PUBLISHER_FEATURE_COUNT = PlatformPackage.COMPONENT_FEATURE_COUNT + 1;
 
 	/**
 	 * The operation id for the '<em>Occi Create</em>' operation.
@@ -1141,32 +1066,50 @@ public interface MonitoringPackage extends EPackage {
 	int PUBLISHER_OPERATION_COUNT = PlatformPackage.COMPONENT_OPERATION_COUNT + 0;
 
 	/**
-	 * The meta object id for the '{@link monitoring.impl.MonitoringpropertiesImpl <em>Monitoringproperties</em>}' class.
+	 * The meta object id for the '{@link monitoring.impl.MonitoringpropertyImpl <em>Monitoringproperty</em>}' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @see monitoring.impl.MonitoringpropertiesImpl
-	 * @see monitoring.impl.MonitoringPackageImpl#getMonitoringproperties()
+	 * @see monitoring.impl.MonitoringpropertyImpl
+	 * @see monitoring.impl.MonitoringPackageImpl#getMonitoringproperty()
 	 * @generated
 	 */
-	int MONITORINGPROPERTIES = 6;
+	int MONITORINGPROPERTY = 4;
 
 	/**
-	 * The feature id for the '<em><b>Mixin</b></em>' reference.
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int MONITORINGPROPERTIES__MIXIN = OCCIPackage.MIXIN_BASE__MIXIN;
+	int MONITORINGPROPERTY__ID = OCCIPackage.LINK__ID;
 
 	/**
-	 * The feature id for the '<em><b>Entity</b></em>' container reference.
+	 * The feature id for the '<em><b>Title</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int MONITORINGPROPERTIES__ENTITY = OCCIPackage.MIXIN_BASE__ENTITY;
+	int MONITORINGPROPERTY__TITLE = OCCIPackage.LINK__TITLE;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY__KIND = OCCIPackage.LINK__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Location</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY__LOCATION = OCCIPackage.LINK__LOCATION;
 
 	/**
 	 * The feature id for the '<em><b>Attributes</b></em>' containment reference list.
@@ -1175,138 +1118,264 @@ public interface MonitoringPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int MONITORINGPROPERTIES__ATTRIBUTES = OCCIPackage.MIXIN_BASE__ATTRIBUTES;
+	int MONITORINGPROPERTY__ATTRIBUTES = OCCIPackage.LINK__ATTRIBUTES;
 
 	/**
-	 * The feature id for the '<em><b>Monitoring Properties</b></em>' containment reference.
+	 * The feature id for the '<em><b>Mixins</b></em>' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int MONITORINGPROPERTIES__MONITORING_PROPERTIES = OCCIPackage.MIXIN_BASE_FEATURE_COUNT + 0;
+	int MONITORINGPROPERTY__MIXINS = OCCIPackage.LINK__MIXINS;
 
 	/**
-	 * The number of structural features of the '<em>Monitoringproperties</em>' class.
+	 * The feature id for the '<em><b>Parts</b></em>' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int MONITORINGPROPERTIES_FEATURE_COUNT = OCCIPackage.MIXIN_BASE_FEATURE_COUNT + 1;
+	int MONITORINGPROPERTY__PARTS = OCCIPackage.LINK__PARTS;
 
 	/**
-	 * The operation id for the '<em>Applies Constraint</em>' operation.
+	 * The feature id for the '<em><b>Source</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int MONITORINGPROPERTIES___APPLIES_CONSTRAINT__DIAGNOSTICCHAIN_MAP = OCCIPackage.MIXIN_BASE_OPERATION_COUNT + 0;
+	int MONITORINGPROPERTY__SOURCE = OCCIPackage.LINK__SOURCE;
 
 	/**
-	 * The number of operations of the '<em>Monitoringproperties</em>' class.
+	 * The feature id for the '<em><b>Target</b></em>' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int MONITORINGPROPERTIES_OPERATION_COUNT = OCCIPackage.MIXIN_BASE_OPERATION_COUNT + 1;
+	int MONITORINGPROPERTY__TARGET = OCCIPackage.LINK__TARGET;
 
 	/**
-	 * The meta object id for the '<em>Date Time</em>' data type.
+	 * The feature id for the '<em><b>Monitoring Property Name</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @see java.lang.String
-	 * @see monitoring.impl.MonitoringPackageImpl#getDateTime()
 	 * @generated
+	 * @ordered
 	 */
-	int DATE_TIME = 7;
+	int MONITORINGPROPERTY__MONITORING_PROPERTY_NAME = OCCIPackage.LINK_FEATURE_COUNT + 0;
 
 	/**
-	 * The meta object id for the '<em>Second</em>' data type.
+	 * The feature id for the '<em><b>Monitoring Property Value</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @see java.lang.String
-	 * @see monitoring.impl.MonitoringPackageImpl#getSecond()
 	 * @generated
+	 * @ordered
 	 */
-	int SECOND = 8;
+	int MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE = OCCIPackage.LINK_FEATURE_COUNT + 1;
 
 	/**
-	 * The meta object id for the '<em>String</em>' data type.
+	 * The number of structural features of the '<em>Monitoringproperty</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY_FEATURE_COUNT = OCCIPackage.LINK_FEATURE_COUNT + 2;
+
+	/**
+	 * The operation id for the '<em>Occi Create</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY___OCCI_CREATE = OCCIPackage.LINK___OCCI_CREATE;
+
+	/**
+	 * The operation id for the '<em>Occi Retrieve</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY___OCCI_RETRIEVE = OCCIPackage.LINK___OCCI_RETRIEVE;
+
+	/**
+	 * The operation id for the '<em>Occi Update</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY___OCCI_UPDATE = OCCIPackage.LINK___OCCI_UPDATE;
+
+	/**
+	 * The operation id for the '<em>Occi Delete</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY___OCCI_DELETE = OCCIPackage.LINK___OCCI_DELETE;
+
+	/**
+	 * The operation id for the '<em>Link Target Invariant</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY___LINK_TARGET_INVARIANT__KIND_KIND = OCCIPackage.LINK___LINK_TARGET_INVARIANT__KIND_KIND;
+
+	/**
+	 * The operation id for the '<em>Link Source Invariant</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY___LINK_SOURCE_INVARIANT__KIND_KIND = OCCIPackage.LINK___LINK_SOURCE_INVARIANT__KIND_KIND;
+
+	/**
+	 * The operation id for the '<em>Target Constraint</em>' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY___TARGET_CONSTRAINT__DIAGNOSTICCHAIN_MAP = OCCIPackage.LINK_OPERATION_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>Monitoringproperty</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MONITORINGPROPERTY_OPERATION_COUNT = OCCIPackage.LINK_OPERATION_COUNT + 1;
+
+	/**
+	 * The meta object id for the '{@link monitoring.impl.MartpublisherImpl <em>Martpublisher</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see monitoring.impl.MartpublisherImpl
+	 * @see monitoring.impl.MonitoringPackageImpl#getMartpublisher()
+	 * @generated
+	 */
+	int MARTPUBLISHER = 5;
+
+	/**
+	 * The feature id for the '<em><b>Mixin</b></em>' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @see java.lang.String
-	 * @see monitoring.impl.MonitoringPackageImpl#getString()
 	 * @generated
+	 * @ordered
 	 */
-	int STRING = 9;
+	int MARTPUBLISHER__MIXIN = OCCIPackage.MIXIN_BASE__MIXIN;
 
+	/**
+	 * The feature id for the '<em><b>Entity</b></em>' container reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MARTPUBLISHER__ENTITY = OCCIPackage.MIXIN_BASE__ENTITY;
 
 	/**
-	 * Returns the meta object for class '{@link monitoring.MonitoringProperty <em>Property</em>}'.
+	 * The feature id for the '<em><b>Attributes</b></em>' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Property</em>'.
-	 * @see monitoring.MonitoringProperty
 	 * @generated
+	 * @ordered
 	 */
-	EClass getMonitoringProperty();
+	int MARTPUBLISHER__ATTRIBUTES = OCCIPackage.MIXIN_BASE__ATTRIBUTES;
 
 	/**
-	 * Returns the meta object for the attribute '{@link monitoring.MonitoringProperty#getName <em>Name</em>}'.
+	 * The feature id for the '<em><b>Monitoring Property Name</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Name</em>'.
-	 * @see monitoring.MonitoringProperty#getName()
-	 * @see #getMonitoringProperty()
 	 * @generated
+	 * @ordered
 	 */
-	EAttribute getMonitoringProperty_Name();
+	int MARTPUBLISHER__MONITORING_PROPERTY_NAME = OCCIPackage.MIXIN_BASE_FEATURE_COUNT + 0;
 
 	/**
-	 * Returns the meta object for the attribute '{@link monitoring.MonitoringProperty#getValue <em>Value</em>}'.
+	 * The feature id for the '<em><b>Monitoring Property Id</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Value</em>'.
-	 * @see monitoring.MonitoringProperty#getValue()
-	 * @see #getMonitoringProperty()
 	 * @generated
+	 * @ordered
 	 */
-	EAttribute getMonitoringProperty_Value();
+	int MARTPUBLISHER__MONITORING_PROPERTY_ID = OCCIPackage.MIXIN_BASE_FEATURE_COUNT + 1;
 
 	/**
-	 * Returns the meta object for the attribute '{@link monitoring.MonitoringProperty#getId <em>Id</em>}'.
+	 * The feature id for the '<em><b>Monitoring Property Resource</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Id</em>'.
-	 * @see monitoring.MonitoringProperty#getId()
-	 * @see #getMonitoringProperty()
 	 * @generated
+	 * @ordered
 	 */
-	EAttribute getMonitoringProperty_Id();
+	int MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE = OCCIPackage.MIXIN_BASE_FEATURE_COUNT + 2;
 
 	/**
-	 * Returns the meta object for class '{@link monitoring.MonitoringPropertyArray <em>Property Array</em>}'.
+	 * The number of structural features of the '<em>Martpublisher</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Property Array</em>'.
-	 * @see monitoring.MonitoringPropertyArray
 	 * @generated
+	 * @ordered
 	 */
-	EClass getMonitoringPropertyArray();
+	int MARTPUBLISHER_FEATURE_COUNT = OCCIPackage.MIXIN_BASE_FEATURE_COUNT + 3;
 
 	/**
-	 * Returns the meta object for the containment reference list '{@link monitoring.MonitoringPropertyArray#getMonitoringpropertyarrayValues <em>Monitoringpropertyarray Values</em>}'.
+	 * The operation id for the '<em>Applies Constraint</em>' operation.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Monitoringpropertyarray Values</em>'.
-	 * @see monitoring.MonitoringPropertyArray#getMonitoringpropertyarrayValues()
-	 * @see #getMonitoringPropertyArray()
+	 * @generated
+	 * @ordered
+	 */
+	int MARTPUBLISHER___APPLIES_CONSTRAINT__DIAGNOSTICCHAIN_MAP = OCCIPackage.MIXIN_BASE_OPERATION_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>Martpublisher</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int MARTPUBLISHER_OPERATION_COUNT = OCCIPackage.MIXIN_BASE_OPERATION_COUNT + 1;
+
+	/**
+	 * The meta object id for the '<em>Date Time</em>' data type.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see java.lang.String
+	 * @see monitoring.impl.MonitoringPackageImpl#getDateTime()
+	 * @generated
+	 */
+	int DATE_TIME = 6;
+
+	/**
+	 * The meta object id for the '<em>Second</em>' data type.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see java.lang.String
+	 * @see monitoring.impl.MonitoringPackageImpl#getSecond()
 	 * @generated
 	 */
-	EReference getMonitoringPropertyArray_MonitoringpropertyarrayValues();
+	int SECOND = 7;
+
+	/**
+	 * The meta object id for the '<em>String</em>' data type.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see java.lang.String
+	 * @see monitoring.impl.MonitoringPackageImpl#getString()
+	 * @generated
+	 */
+	int STRING = 8;
+
 
 	/**
 	 * Returns the meta object for class '{@link monitoring.Sensor <em>Sensor</em>}'.
@@ -1437,6 +1506,17 @@ public interface MonitoringPackage extends EPackage {
 	 */
 	EClass getProcessor();
 
+	/**
+	 * Returns the meta object for the attribute '{@link monitoring.Processor#getGathererAddress <em>Gatherer Address</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Gatherer Address</em>'.
+	 * @see monitoring.Processor#getGathererAddress()
+	 * @see #getProcessor()
+	 * @generated
+	 */
+	EAttribute getProcessor_GathererAddress();
+
 	/**
 	 * Returns the meta object for class '{@link monitoring.Publisher <em>Publisher</em>}'.
 	 * <!-- begin-user-doc -->
@@ -1448,35 +1528,110 @@ public interface MonitoringPackage extends EPackage {
 	EClass getPublisher();
 
 	/**
-	 * Returns the meta object for class '{@link monitoring.Monitoringproperties <em>Monitoringproperties</em>}'.
+	 * Returns the meta object for the attribute '{@link monitoring.Publisher#getPublisherEndpoint <em>Publisher Endpoint</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Publisher Endpoint</em>'.
+	 * @see monitoring.Publisher#getPublisherEndpoint()
+	 * @see #getPublisher()
+	 * @generated
+	 */
+	EAttribute getPublisher_PublisherEndpoint();
+
+	/**
+	 * Returns the meta object for class '{@link monitoring.Monitoringproperty <em>Monitoringproperty</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Monitoringproperty</em>'.
+	 * @see monitoring.Monitoringproperty
+	 * @generated
+	 */
+	EClass getMonitoringproperty();
+
+	/**
+	 * Returns the meta object for the attribute '{@link monitoring.Monitoringproperty#getMonitoringPropertyName <em>Monitoring Property Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Monitoring Property Name</em>'.
+	 * @see monitoring.Monitoringproperty#getMonitoringPropertyName()
+	 * @see #getMonitoringproperty()
+	 * @generated
+	 */
+	EAttribute getMonitoringproperty_MonitoringPropertyName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link monitoring.Monitoringproperty#getMonitoringPropertyValue <em>Monitoring Property Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Monitoring Property Value</em>'.
+	 * @see monitoring.Monitoringproperty#getMonitoringPropertyValue()
+	 * @see #getMonitoringproperty()
+	 * @generated
+	 */
+	EAttribute getMonitoringproperty_MonitoringPropertyValue();
+
+	/**
+	 * Returns the meta object for the '{@link monitoring.Monitoringproperty#targetConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Target Constraint</em>}' operation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the '<em>Target Constraint</em>' operation.
+	 * @see monitoring.Monitoringproperty#targetConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
+	 * @generated
+	 */
+	EOperation getMonitoringproperty__TargetConstraint__DiagnosticChain_Map();
+
+	/**
+	 * Returns the meta object for class '{@link monitoring.Martpublisher <em>Martpublisher</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Monitoringproperties</em>'.
-	 * @see monitoring.Monitoringproperties
+	 * @return the meta object for class '<em>Martpublisher</em>'.
+	 * @see monitoring.Martpublisher
 	 * @generated
 	 */
-	EClass getMonitoringproperties();
+	EClass getMartpublisher();
 
 	/**
-	 * Returns the meta object for the containment reference '{@link monitoring.Monitoringproperties#getMonitoringProperties <em>Monitoring Properties</em>}'.
+	 * Returns the meta object for the attribute '{@link monitoring.Martpublisher#getMonitoringPropertyName <em>Monitoring Property Name</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference '<em>Monitoring Properties</em>'.
-	 * @see monitoring.Monitoringproperties#getMonitoringProperties()
-	 * @see #getMonitoringproperties()
+	 * @return the meta object for the attribute '<em>Monitoring Property Name</em>'.
+	 * @see monitoring.Martpublisher#getMonitoringPropertyName()
+	 * @see #getMartpublisher()
 	 * @generated
 	 */
-	EReference getMonitoringproperties_MonitoringProperties();
+	EAttribute getMartpublisher_MonitoringPropertyName();
 
 	/**
-	 * Returns the meta object for the '{@link monitoring.Monitoringproperties#appliesConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Applies Constraint</em>}' operation.
+	 * Returns the meta object for the attribute '{@link monitoring.Martpublisher#getMonitoringPropertyId <em>Monitoring Property Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Monitoring Property Id</em>'.
+	 * @see monitoring.Martpublisher#getMonitoringPropertyId()
+	 * @see #getMartpublisher()
+	 * @generated
+	 */
+	EAttribute getMartpublisher_MonitoringPropertyId();
+
+	/**
+	 * Returns the meta object for the attribute '{@link monitoring.Martpublisher#getMonitoringPropertyResource <em>Monitoring Property Resource</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Monitoring Property Resource</em>'.
+	 * @see monitoring.Martpublisher#getMonitoringPropertyResource()
+	 * @see #getMartpublisher()
+	 * @generated
+	 */
+	EAttribute getMartpublisher_MonitoringPropertyResource();
+
+	/**
+	 * Returns the meta object for the '{@link monitoring.Martpublisher#appliesConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map) <em>Applies Constraint</em>}' operation.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @return the meta object for the '<em>Applies Constraint</em>' operation.
-	 * @see monitoring.Monitoringproperties#appliesConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
+	 * @see monitoring.Martpublisher#appliesConstraint(org.eclipse.emf.common.util.DiagnosticChain, java.util.Map)
 	 * @generated
 	 */
-	EOperation getMonitoringproperties__AppliesConstraint__DiagnosticChain_Map();
+	EOperation getMartpublisher__AppliesConstraint__DiagnosticChain_Map();
 
 	/**
 	 * Returns the meta object for data type '{@link java.lang.String <em>Date Time</em>}'.
@@ -1536,186 +1691,200 @@ public interface MonitoringPackage extends EPackage {
 	 */
 	interface Literals {
 		/**
-		 * The meta object literal for the '{@link monitoring.impl.MonitoringPropertyImpl <em>Property</em>}' class.
+		 * The meta object literal for the '{@link monitoring.impl.SensorImpl <em>Sensor</em>}' class.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
-		 * @see monitoring.impl.MonitoringPropertyImpl
-		 * @see monitoring.impl.MonitoringPackageImpl#getMonitoringProperty()
+		 * @see monitoring.impl.SensorImpl
+		 * @see monitoring.impl.MonitoringPackageImpl#getSensor()
 		 * @generated
 		 */
-		EClass MONITORING_PROPERTY = eINSTANCE.getMonitoringProperty();
+		EClass SENSOR = eINSTANCE.getSensor();
 
 		/**
-		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+		 * The meta object literal for the '<em><b>Occi Sensor Timebase</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EAttribute MONITORING_PROPERTY__NAME = eINSTANCE.getMonitoringProperty_Name();
+		EAttribute SENSOR__OCCI_SENSOR_TIMEBASE = eINSTANCE.getSensor_OcciSensorTimebase();
 
 		/**
-		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * The meta object literal for the '<em><b>Occi Sensor Timestart</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EAttribute MONITORING_PROPERTY__VALUE = eINSTANCE.getMonitoringProperty_Value();
+		EAttribute SENSOR__OCCI_SENSOR_TIMESTART = eINSTANCE.getSensor_OcciSensorTimestart();
 
 		/**
-		 * The meta object literal for the '<em><b>Id</b></em>' attribute feature.
+		 * The meta object literal for the '<em><b>Occi Sensor Timestop</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EAttribute MONITORING_PROPERTY__ID = eINSTANCE.getMonitoringProperty_Id();
+		EAttribute SENSOR__OCCI_SENSOR_TIMESTOP = eINSTANCE.getSensor_OcciSensorTimestop();
 
 		/**
-		 * The meta object literal for the '{@link monitoring.impl.MonitoringPropertyArrayImpl <em>Property Array</em>}' class.
+		 * The meta object literal for the '<em><b>Occi Sensor Period</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
-		 * @see monitoring.impl.MonitoringPropertyArrayImpl
-		 * @see monitoring.impl.MonitoringPackageImpl#getMonitoringPropertyArray()
 		 * @generated
 		 */
-		EClass MONITORING_PROPERTY_ARRAY = eINSTANCE.getMonitoringPropertyArray();
+		EAttribute SENSOR__OCCI_SENSOR_PERIOD = eINSTANCE.getSensor_OcciSensorPeriod();
 
 		/**
-		 * The meta object literal for the '<em><b>Monitoringpropertyarray Values</b></em>' containment reference list feature.
+		 * The meta object literal for the '<em><b>Occi Sensor Granularity</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES = eINSTANCE.getMonitoringPropertyArray_MonitoringpropertyarrayValues();
+		EAttribute SENSOR__OCCI_SENSOR_GRANULARITY = eINSTANCE.getSensor_OcciSensorGranularity();
 
 		/**
-		 * The meta object literal for the '{@link monitoring.impl.SensorImpl <em>Sensor</em>}' class.
+		 * The meta object literal for the '<em><b>Occi Sensor Accuracy</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
-		 * @see monitoring.impl.SensorImpl
-		 * @see monitoring.impl.MonitoringPackageImpl#getSensor()
 		 * @generated
 		 */
-		EClass SENSOR = eINSTANCE.getSensor();
+		EAttribute SENSOR__OCCI_SENSOR_ACCURACY = eINSTANCE.getSensor_OcciSensorAccuracy();
 
 		/**
-		 * The meta object literal for the '<em><b>Occi Sensor Timebase</b></em>' attribute feature.
+		 * The meta object literal for the '{@link monitoring.impl.DatagathererImpl <em>Datagatherer</em>}' class.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
+		 * @see monitoring.impl.DatagathererImpl
+		 * @see monitoring.impl.MonitoringPackageImpl#getDatagatherer()
 		 * @generated
 		 */
-		EAttribute SENSOR__OCCI_SENSOR_TIMEBASE = eINSTANCE.getSensor_OcciSensorTimebase();
+		EClass DATAGATHERER = eINSTANCE.getDatagatherer();
 
 		/**
-		 * The meta object literal for the '<em><b>Occi Sensor Timestart</b></em>' attribute feature.
+		 * The meta object literal for the '<em><b>Occi Collector Period</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EAttribute SENSOR__OCCI_SENSOR_TIMESTART = eINSTANCE.getSensor_OcciSensorTimestart();
+		EAttribute DATAGATHERER__OCCI_COLLECTOR_PERIOD = eINSTANCE.getDatagatherer_OcciCollectorPeriod();
 
 		/**
-		 * The meta object literal for the '<em><b>Occi Sensor Timestop</b></em>' attribute feature.
+		 * The meta object literal for the '<em><b>Occi Collector Granularity</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EAttribute SENSOR__OCCI_SENSOR_TIMESTOP = eINSTANCE.getSensor_OcciSensorTimestop();
+		EAttribute DATAGATHERER__OCCI_COLLECTOR_GRANULARITY = eINSTANCE.getDatagatherer_OcciCollectorGranularity();
 
 		/**
-		 * The meta object literal for the '<em><b>Occi Sensor Period</b></em>' attribute feature.
+		 * The meta object literal for the '<em><b>Occi Collector Accuracy</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EAttribute SENSOR__OCCI_SENSOR_PERIOD = eINSTANCE.getSensor_OcciSensorPeriod();
+		EAttribute DATAGATHERER__OCCI_COLLECTOR_ACCURACY = eINSTANCE.getDatagatherer_OcciCollectorAccuracy();
 
 		/**
-		 * The meta object literal for the '<em><b>Occi Sensor Granularity</b></em>' attribute feature.
+		 * The meta object literal for the '{@link monitoring.impl.ProcessorImpl <em>Processor</em>}' class.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
+		 * @see monitoring.impl.ProcessorImpl
+		 * @see monitoring.impl.MonitoringPackageImpl#getProcessor()
 		 * @generated
 		 */
-		EAttribute SENSOR__OCCI_SENSOR_GRANULARITY = eINSTANCE.getSensor_OcciSensorGranularity();
+		EClass PROCESSOR = eINSTANCE.getProcessor();
 
 		/**
-		 * The meta object literal for the '<em><b>Occi Sensor Accuracy</b></em>' attribute feature.
+		 * The meta object literal for the '<em><b>Gatherer Address</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EAttribute SENSOR__OCCI_SENSOR_ACCURACY = eINSTANCE.getSensor_OcciSensorAccuracy();
+		EAttribute PROCESSOR__GATHERER_ADDRESS = eINSTANCE.getProcessor_GathererAddress();
 
 		/**
-		 * The meta object literal for the '{@link monitoring.impl.DatagathererImpl <em>Datagatherer</em>}' class.
+		 * The meta object literal for the '{@link monitoring.impl.PublisherImpl <em>Publisher</em>}' class.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
-		 * @see monitoring.impl.DatagathererImpl
-		 * @see monitoring.impl.MonitoringPackageImpl#getDatagatherer()
+		 * @see monitoring.impl.PublisherImpl
+		 * @see monitoring.impl.MonitoringPackageImpl#getPublisher()
 		 * @generated
 		 */
-		EClass DATAGATHERER = eINSTANCE.getDatagatherer();
+		EClass PUBLISHER = eINSTANCE.getPublisher();
 
 		/**
-		 * The meta object literal for the '<em><b>Occi Collector Period</b></em>' attribute feature.
+		 * The meta object literal for the '<em><b>Publisher Endpoint</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EAttribute DATAGATHERER__OCCI_COLLECTOR_PERIOD = eINSTANCE.getDatagatherer_OcciCollectorPeriod();
+		EAttribute PUBLISHER__PUBLISHER_ENDPOINT = eINSTANCE.getPublisher_PublisherEndpoint();
 
 		/**
-		 * The meta object literal for the '<em><b>Occi Collector Granularity</b></em>' attribute feature.
+		 * The meta object literal for the '{@link monitoring.impl.MonitoringpropertyImpl <em>Monitoringproperty</em>}' class.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
+		 * @see monitoring.impl.MonitoringpropertyImpl
+		 * @see monitoring.impl.MonitoringPackageImpl#getMonitoringproperty()
 		 * @generated
 		 */
-		EAttribute DATAGATHERER__OCCI_COLLECTOR_GRANULARITY = eINSTANCE.getDatagatherer_OcciCollectorGranularity();
+		EClass MONITORINGPROPERTY = eINSTANCE.getMonitoringproperty();
 
 		/**
-		 * The meta object literal for the '<em><b>Occi Collector Accuracy</b></em>' attribute feature.
+		 * The meta object literal for the '<em><b>Monitoring Property Name</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EAttribute DATAGATHERER__OCCI_COLLECTOR_ACCURACY = eINSTANCE.getDatagatherer_OcciCollectorAccuracy();
+		EAttribute MONITORINGPROPERTY__MONITORING_PROPERTY_NAME = eINSTANCE.getMonitoringproperty_MonitoringPropertyName();
 
 		/**
-		 * The meta object literal for the '{@link monitoring.impl.ProcessorImpl <em>Processor</em>}' class.
+		 * The meta object literal for the '<em><b>Monitoring Property Value</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
-		 * @see monitoring.impl.ProcessorImpl
-		 * @see monitoring.impl.MonitoringPackageImpl#getProcessor()
 		 * @generated
 		 */
-		EClass PROCESSOR = eINSTANCE.getProcessor();
+		EAttribute MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE = eINSTANCE.getMonitoringproperty_MonitoringPropertyValue();
 
 		/**
-		 * The meta object literal for the '{@link monitoring.impl.PublisherImpl <em>Publisher</em>}' class.
+		 * The meta object literal for the '<em><b>Target Constraint</b></em>' operation.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
-		 * @see monitoring.impl.PublisherImpl
-		 * @see monitoring.impl.MonitoringPackageImpl#getPublisher()
 		 * @generated
 		 */
-		EClass PUBLISHER = eINSTANCE.getPublisher();
+		EOperation MONITORINGPROPERTY___TARGET_CONSTRAINT__DIAGNOSTICCHAIN_MAP = eINSTANCE.getMonitoringproperty__TargetConstraint__DiagnosticChain_Map();
+
+		/**
+		 * The meta object literal for the '{@link monitoring.impl.MartpublisherImpl <em>Martpublisher</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see monitoring.impl.MartpublisherImpl
+		 * @see monitoring.impl.MonitoringPackageImpl#getMartpublisher()
+		 * @generated
+		 */
+		EClass MARTPUBLISHER = eINSTANCE.getMartpublisher();
+
+		/**
+		 * The meta object literal for the '<em><b>Monitoring Property Name</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute MARTPUBLISHER__MONITORING_PROPERTY_NAME = eINSTANCE.getMartpublisher_MonitoringPropertyName();
 
 		/**
-		 * The meta object literal for the '{@link monitoring.impl.MonitoringpropertiesImpl <em>Monitoringproperties</em>}' class.
+		 * The meta object literal for the '<em><b>Monitoring Property Id</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
-		 * @see monitoring.impl.MonitoringpropertiesImpl
-		 * @see monitoring.impl.MonitoringPackageImpl#getMonitoringproperties()
 		 * @generated
 		 */
-		EClass MONITORINGPROPERTIES = eINSTANCE.getMonitoringproperties();
+		EAttribute MARTPUBLISHER__MONITORING_PROPERTY_ID = eINSTANCE.getMartpublisher_MonitoringPropertyId();
 
 		/**
-		 * The meta object literal for the '<em><b>Monitoring Properties</b></em>' containment reference feature.
+		 * The meta object literal for the '<em><b>Monitoring Property Resource</b></em>' attribute feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference MONITORINGPROPERTIES__MONITORING_PROPERTIES = eINSTANCE.getMonitoringproperties_MonitoringProperties();
+		EAttribute MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE = eINSTANCE.getMartpublisher_MonitoringPropertyResource();
 
 		/**
 		 * The meta object literal for the '<em><b>Applies Constraint</b></em>' operation.
@@ -1723,7 +1892,7 @@ public interface MonitoringPackage extends EPackage {
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EOperation MONITORINGPROPERTIES___APPLIES_CONSTRAINT__DIAGNOSTICCHAIN_MAP = eINSTANCE.getMonitoringproperties__AppliesConstraint__DiagnosticChain_Map();
+		EOperation MARTPUBLISHER___APPLIES_CONSTRAINT__DIAGNOSTICCHAIN_MAP = eINSTANCE.getMartpublisher__AppliesConstraint__DiagnosticChain_Map();
 
 		/**
 		 * The meta object literal for the '<em>Date Time</em>' data type.
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringProperty.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringProperty.java
deleted file mode 100644
index 5912e67814865393cf82fc114cecdfb7189096fb..0000000000000000000000000000000000000000
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringProperty.java
+++ /dev/null
@@ -1,114 +0,0 @@
-/**
- * Copyright (c) 2015-2017 Obeo, Inria
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 	
- * Contributors:
- * - William Piers <william.piers@obeo.fr>
- * - Philippe Merle <philippe.merle@inria.fr>
- * - Faiez Zalila <faiez.zalila@inria.fr>
- */
-package monitoring;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Property</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * </p>
- * <ul>
- *   <li>{@link monitoring.MonitoringProperty#getName <em>Name</em>}</li>
- *   <li>{@link monitoring.MonitoringProperty#getValue <em>Value</em>}</li>
- *   <li>{@link monitoring.MonitoringProperty#getId <em>Id</em>}</li>
- * </ul>
- *
- * @see monitoring.MonitoringPackage#getMonitoringProperty()
- * @model
- * @generated
- */
-public interface MonitoringProperty extends EObject {
-	/**
-	 * Returns the value of the '<em><b>Name</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * <!-- begin-model-doc -->
-	 * 
-	 * <!-- end-model-doc -->
-	 * @return the value of the '<em>Name</em>' attribute.
-	 * @see #setName(String)
-	 * @see monitoring.MonitoringPackage#getMonitoringProperty_Name()
-	 * @model dataType="monitoring.String" required="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!MonitoringProperty!name'"
-	 * @generated
-	 */
-	String getName();
-
-	/**
-	 * Sets the value of the '{@link monitoring.MonitoringProperty#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
-	 */
-	void setName(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Value</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * <!-- begin-model-doc -->
-	 * 
-	 * <!-- end-model-doc -->
-	 * @return the value of the '<em>Value</em>' attribute.
-	 * @see #setValue(String)
-	 * @see monitoring.MonitoringPackage#getMonitoringProperty_Value()
-	 * @model dataType="monitoring.String" required="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!MonitoringProperty!value'"
-	 * @generated
-	 */
-	String getValue();
-
-	/**
-	 * Sets the value of the '{@link monitoring.MonitoringProperty#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
-	 */
-	void setValue(String value);
-
-	/**
-	 * Returns the value of the '<em><b>Id</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * <!-- begin-model-doc -->
-	 * 
-	 * <!-- end-model-doc -->
-	 * @return the value of the '<em>Id</em>' attribute.
-	 * @see #setId(String)
-	 * @see monitoring.MonitoringPackage#getMonitoringProperty_Id()
-	 * @model dataType="monitoring.String" required="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!MonitoringProperty!Id'"
-	 * @generated
-	 */
-	String getId();
-
-	/**
-	 * Sets the value of the '{@link monitoring.MonitoringProperty#getId <em>Id</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Id</em>' attribute.
-	 * @see #getId()
-	 * @generated
-	 */
-	void setId(String value);
-
-} // MonitoringProperty
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringPropertyArray.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringPropertyArray.java
deleted file mode 100644
index dda505b4e66797d4a9c2226be3a5d291b0f73d1b..0000000000000000000000000000000000000000
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringPropertyArray.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/**
- * Copyright (c) 2015-2017 Obeo, Inria
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 	
- * Contributors:
- * - William Piers <william.piers@obeo.fr>
- * - Philippe Merle <philippe.merle@inria.fr>
- * - Faiez Zalila <faiez.zalila@inria.fr>
- */
-package monitoring;
-
-import org.eclipse.emf.common.util.EList;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Property Array</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * </p>
- * <ul>
- *   <li>{@link monitoring.MonitoringPropertyArray#getMonitoringpropertyarrayValues <em>Monitoringpropertyarray Values</em>}</li>
- * </ul>
- *
- * @see monitoring.MonitoringPackage#getMonitoringPropertyArray()
- * @model
- * @generated
- */
-public interface MonitoringPropertyArray extends EObject {
-	/**
-	 * Returns the value of the '<em><b>Monitoringpropertyarray Values</b></em>' containment reference list.
-	 * The list contents are of type {@link monitoring.MonitoringProperty}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Monitoringpropertyarray Values</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>Monitoringpropertyarray Values</em>' containment reference list.
-	 * @see monitoring.MonitoringPackage#getMonitoringPropertyArray_MonitoringpropertyarrayValues()
-	 * @model containment="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!MonitoringPropertyArray!monitoringpropertyarrayValues'"
-	 * @generated
-	 */
-	EList<MonitoringProperty> getMonitoringpropertyarrayValues();
-
-} // MonitoringPropertyArray
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringTables.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringTables.java
index 1ad948b2a97db604686cf29c50ec00861f590db8..57a1073f7fbceb12fa3c52e31b154e4218a8bcb5 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringTables.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/MonitoringTables.java
@@ -29,11 +29,9 @@ import org.eclipse.ocl.pivot.ids.TypeId;
 import org.eclipse.ocl.pivot.internal.library.ecore.EcoreExecutorPackage;
 import org.eclipse.ocl.pivot.internal.library.ecore.EcoreExecutorProperty;
 import org.eclipse.ocl.pivot.internal.library.ecore.EcoreExecutorType;
-import org.eclipse.ocl.pivot.internal.library.ecore.EcoreLibraryOppositeProperty;
 import org.eclipse.ocl.pivot.internal.library.executor.ExecutorFragment;
 import org.eclipse.ocl.pivot.internal.library.executor.ExecutorOperation;
 import org.eclipse.ocl.pivot.internal.library.executor.ExecutorProperty;
-import org.eclipse.ocl.pivot.internal.library.executor.ExecutorPropertyWithImplementation;
 import org.eclipse.ocl.pivot.internal.library.executor.ExecutorStandardLibrary;
 import org.eclipse.ocl.pivot.oclstdlib.OCLstdlibTables;
 import org.eclipse.ocl.pivot.utilities.TypeUtil;
@@ -70,15 +68,16 @@ public class MonitoringTables
 	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.NsURIPackageId PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore = org.eclipse.ocl.pivot.ids.IdManager.getNsURIPackageId("http://schemas.ugoe.cs.rwm/monitoring/ecore", null, monitoring.MonitoringPackage.eINSTANCE);
 	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_Class = monitoring.MonitoringTables.PACKid_$metamodel$.getClassId("Class", 0);
 	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_Entity = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ogf_org_s_occi_s_core_s_ecore.getClassId("Entity", 0);
-	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_MonitoringProperty = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore.getClassId("MonitoringProperty", 0);
-	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_MonitoringPropertyArray = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore.getClassId("MonitoringPropertyArray", 0);
-	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_Monitoringproperties = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore.getClassId("Monitoringproperties", 0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_Martpublisher = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore.getClassId("Martpublisher", 0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_Monitoringproperty = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore.getClassId("Monitoringproperty", 0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_Publisher = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore.getClassId("Publisher", 0);
 	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_Resource = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ogf_org_s_occi_s_core_s_ecore.getClassId("Resource", 0);
+	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.ClassId CLSSid_Sensor = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore.getClassId("Sensor", 0);
 	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.DataTypeId DATAid_DateTime = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore.getDataTypeId("DateTime", 0);
 	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.DataTypeId DATAid_Second = monitoring.MonitoringTables.PACKid_http_c_s_s_schemas_ugoe_cs_rwm_s_monitoring_s_ecore.getDataTypeId("Second", 0);
 	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.values.IntegerValue INT_0 = org.eclipse.ocl.pivot.utilities.ValueUtil.integerValueOf("0");
-	public static final /*@NonInvalid*/ java.lang.String STR_Monitoringproperties_c_c_appliesConstraint = "Monitoringproperties::appliesConstraint";
-	public static final /*@NonInvalid*/ org.eclipse.ocl.pivot.ids.CollectionTypeId ORD_CLSSid_MonitoringProperty = org.eclipse.ocl.pivot.ids.TypeId.ORDERED_SET.getSpecializedId(monitoring.MonitoringTables.CLSSid_MonitoringProperty);
+	public static final /*@NonInvalid*/ java.lang.String STR_Martpublisher_c_c_appliesConstraint = "Martpublisher::appliesConstraint";
+	public static final /*@NonInvalid*/ java.lang.String STR_Monitoringproperty_c_c_targetConstraint = "Monitoringproperty::targetConstraint";
 
 	/**
 	 *	The type parameters for templated types and operations.
@@ -110,9 +109,8 @@ public class MonitoringTables
 
 		public static final /*@NonNull*/ EcoreExecutorType _Datagatherer = new EcoreExecutorType(MonitoringPackage.Literals.DATAGATHERER, PACKAGE, 0);
 		public static final /*@NonNull*/ EcoreExecutorType _DateTime = new EcoreExecutorType("DateTime", PACKAGE, 0);
-		public static final /*@NonNull*/ EcoreExecutorType _MonitoringProperty = new EcoreExecutorType(MonitoringPackage.Literals.MONITORING_PROPERTY, PACKAGE, 0);
-		public static final /*@NonNull*/ EcoreExecutorType _MonitoringPropertyArray = new EcoreExecutorType(MonitoringPackage.Literals.MONITORING_PROPERTY_ARRAY, PACKAGE, 0);
-		public static final /*@NonNull*/ EcoreExecutorType _Monitoringproperties = new EcoreExecutorType(MonitoringPackage.Literals.MONITORINGPROPERTIES, PACKAGE, 0);
+		public static final /*@NonNull*/ EcoreExecutorType _Martpublisher = new EcoreExecutorType(MonitoringPackage.Literals.MARTPUBLISHER, PACKAGE, 0);
+		public static final /*@NonNull*/ EcoreExecutorType _Monitoringproperty = new EcoreExecutorType(MonitoringPackage.Literals.MONITORINGPROPERTY, PACKAGE, 0);
 		public static final /*@NonNull*/ EcoreExecutorType _Processor = new EcoreExecutorType(MonitoringPackage.Literals.PROCESSOR, PACKAGE, 0);
 		public static final /*@NonNull*/ EcoreExecutorType _Publisher = new EcoreExecutorType(MonitoringPackage.Literals.PUBLISHER, PACKAGE, 0);
 		public static final /*@NonNull*/ EcoreExecutorType _Second = new EcoreExecutorType("Second", PACKAGE, 0);
@@ -122,9 +120,8 @@ public class MonitoringTables
 		private static final /*@NonNull*/ EcoreExecutorType /*@NonNull*/ [] types = {
 			_Datagatherer,
 			_DateTime,
-			_MonitoringProperty,
-			_MonitoringPropertyArray,
-			_Monitoringproperties,
+			_Martpublisher,
+			_Monitoringproperty,
 			_Processor,
 			_Publisher,
 			_Second,
@@ -165,18 +162,16 @@ public class MonitoringTables
 		private static final /*@NonNull*/ ExecutorFragment _DateTime__DateTime = new ExecutorFragment(Types._DateTime, MonitoringTables.Types._DateTime);
 		private static final /*@NonNull*/ ExecutorFragment _DateTime__OclAny = new ExecutorFragment(Types._DateTime, OCLstdlibTables.Types._OclAny);
 
-		private static final /*@NonNull*/ ExecutorFragment _MonitoringProperty__MonitoringProperty = new ExecutorFragment(Types._MonitoringProperty, MonitoringTables.Types._MonitoringProperty);
-		private static final /*@NonNull*/ ExecutorFragment _MonitoringProperty__OclAny = new ExecutorFragment(Types._MonitoringProperty, OCLstdlibTables.Types._OclAny);
-		private static final /*@NonNull*/ ExecutorFragment _MonitoringProperty__OclElement = new ExecutorFragment(Types._MonitoringProperty, OCLstdlibTables.Types._OclElement);
+		private static final /*@NonNull*/ ExecutorFragment _Martpublisher__Martpublisher = new ExecutorFragment(Types._Martpublisher, MonitoringTables.Types._Martpublisher);
+		private static final /*@NonNull*/ ExecutorFragment _Martpublisher__MixinBase = new ExecutorFragment(Types._Martpublisher, OCCITables.Types._MixinBase);
+		private static final /*@NonNull*/ ExecutorFragment _Martpublisher__OclAny = new ExecutorFragment(Types._Martpublisher, OCLstdlibTables.Types._OclAny);
+		private static final /*@NonNull*/ ExecutorFragment _Martpublisher__OclElement = new ExecutorFragment(Types._Martpublisher, OCLstdlibTables.Types._OclElement);
 
-		private static final /*@NonNull*/ ExecutorFragment _MonitoringPropertyArray__MonitoringPropertyArray = new ExecutorFragment(Types._MonitoringPropertyArray, MonitoringTables.Types._MonitoringPropertyArray);
-		private static final /*@NonNull*/ ExecutorFragment _MonitoringPropertyArray__OclAny = new ExecutorFragment(Types._MonitoringPropertyArray, OCLstdlibTables.Types._OclAny);
-		private static final /*@NonNull*/ ExecutorFragment _MonitoringPropertyArray__OclElement = new ExecutorFragment(Types._MonitoringPropertyArray, OCLstdlibTables.Types._OclElement);
-
-		private static final /*@NonNull*/ ExecutorFragment _Monitoringproperties__MixinBase = new ExecutorFragment(Types._Monitoringproperties, OCCITables.Types._MixinBase);
-		private static final /*@NonNull*/ ExecutorFragment _Monitoringproperties__Monitoringproperties = new ExecutorFragment(Types._Monitoringproperties, MonitoringTables.Types._Monitoringproperties);
-		private static final /*@NonNull*/ ExecutorFragment _Monitoringproperties__OclAny = new ExecutorFragment(Types._Monitoringproperties, OCLstdlibTables.Types._OclAny);
-		private static final /*@NonNull*/ ExecutorFragment _Monitoringproperties__OclElement = new ExecutorFragment(Types._Monitoringproperties, OCLstdlibTables.Types._OclElement);
+		private static final /*@NonNull*/ ExecutorFragment _Monitoringproperty__Entity = new ExecutorFragment(Types._Monitoringproperty, OCCITables.Types._Entity);
+		private static final /*@NonNull*/ ExecutorFragment _Monitoringproperty__Link = new ExecutorFragment(Types._Monitoringproperty, OCCITables.Types._Link);
+		private static final /*@NonNull*/ ExecutorFragment _Monitoringproperty__Monitoringproperty = new ExecutorFragment(Types._Monitoringproperty, MonitoringTables.Types._Monitoringproperty);
+		private static final /*@NonNull*/ ExecutorFragment _Monitoringproperty__OclAny = new ExecutorFragment(Types._Monitoringproperty, OCLstdlibTables.Types._OclAny);
+		private static final /*@NonNull*/ ExecutorFragment _Monitoringproperty__OclElement = new ExecutorFragment(Types._Monitoringproperty, OCLstdlibTables.Types._OclElement);
 
 		private static final /*@NonNull*/ ExecutorFragment _Processor__Component = new ExecutorFragment(Types._Processor, PlatformTables.Types._Component);
 		private static final /*@NonNull*/ ExecutorFragment _Processor__Entity = new ExecutorFragment(Types._Processor, OCCITables.Types._Entity);
@@ -366,15 +361,16 @@ public class MonitoringTables
 		public static final /*@NonNull*/ ExecutorProperty _Datagatherer__occiCollectorGranularity = new EcoreExecutorProperty(MonitoringPackage.Literals.DATAGATHERER__OCCI_COLLECTOR_GRANULARITY, Types._Datagatherer, 1);
 		public static final /*@NonNull*/ ExecutorProperty _Datagatherer__occiCollectorPeriod = new EcoreExecutorProperty(MonitoringPackage.Literals.DATAGATHERER__OCCI_COLLECTOR_PERIOD, Types._Datagatherer, 2);
 
-		public static final /*@NonNull*/ ExecutorProperty _MonitoringProperty__Id = new EcoreExecutorProperty(MonitoringPackage.Literals.MONITORING_PROPERTY__ID, Types._MonitoringProperty, 0);
-		public static final /*@NonNull*/ ExecutorProperty _MonitoringProperty__name = new EcoreExecutorProperty(MonitoringPackage.Literals.MONITORING_PROPERTY__NAME, Types._MonitoringProperty, 1);
-		public static final /*@NonNull*/ ExecutorProperty _MonitoringProperty__value = new EcoreExecutorProperty(MonitoringPackage.Literals.MONITORING_PROPERTY__VALUE, Types._MonitoringProperty, 2);
-		public static final /*@NonNull*/ ExecutorProperty _MonitoringProperty__MonitoringPropertyArray__monitoringpropertyarrayValues = new ExecutorPropertyWithImplementation("MonitoringPropertyArray", Types._MonitoringProperty, 3, new EcoreLibraryOppositeProperty(MonitoringPackage.Literals.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES));
+		public static final /*@NonNull*/ ExecutorProperty _Martpublisher__monitoringPropertyId = new EcoreExecutorProperty(MonitoringPackage.Literals.MARTPUBLISHER__MONITORING_PROPERTY_ID, Types._Martpublisher, 0);
+		public static final /*@NonNull*/ ExecutorProperty _Martpublisher__monitoringPropertyName = new EcoreExecutorProperty(MonitoringPackage.Literals.MARTPUBLISHER__MONITORING_PROPERTY_NAME, Types._Martpublisher, 1);
+		public static final /*@NonNull*/ ExecutorProperty _Martpublisher__monitoringPropertyResource = new EcoreExecutorProperty(MonitoringPackage.Literals.MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE, Types._Martpublisher, 2);
+
+		public static final /*@NonNull*/ ExecutorProperty _Monitoringproperty__monitoringPropertyName = new EcoreExecutorProperty(MonitoringPackage.Literals.MONITORINGPROPERTY__MONITORING_PROPERTY_NAME, Types._Monitoringproperty, 0);
+		public static final /*@NonNull*/ ExecutorProperty _Monitoringproperty__monitoringPropertyValue = new EcoreExecutorProperty(MonitoringPackage.Literals.MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE, Types._Monitoringproperty, 1);
 
-		public static final /*@NonNull*/ ExecutorProperty _MonitoringPropertyArray__monitoringpropertyarrayValues = new EcoreExecutorProperty(MonitoringPackage.Literals.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES, Types._MonitoringPropertyArray, 0);
-		public static final /*@NonNull*/ ExecutorProperty _MonitoringPropertyArray__Monitoringproperties__monitoringProperties = new ExecutorPropertyWithImplementation("Monitoringproperties", Types._MonitoringPropertyArray, 1, new EcoreLibraryOppositeProperty(MonitoringPackage.Literals.MONITORINGPROPERTIES__MONITORING_PROPERTIES));
+		public static final /*@NonNull*/ ExecutorProperty _Processor__gathererAddress = new EcoreExecutorProperty(MonitoringPackage.Literals.PROCESSOR__GATHERER_ADDRESS, Types._Processor, 0);
 
-		public static final /*@NonNull*/ ExecutorProperty _Monitoringproperties__monitoringProperties = new EcoreExecutorProperty(MonitoringPackage.Literals.MONITORINGPROPERTIES__MONITORING_PROPERTIES, Types._Monitoringproperties, 0);
+		public static final /*@NonNull*/ ExecutorProperty _Publisher__publisherEndpoint = new EcoreExecutorProperty(MonitoringPackage.Literals.PUBLISHER__PUBLISHER_ENDPOINT, Types._Publisher, 0);
 
 		public static final /*@NonNull*/ ExecutorProperty _Sensor__occiSensorAccuracy = new EcoreExecutorProperty(MonitoringPackage.Literals.SENSOR__OCCI_SENSOR_ACCURACY, Types._Sensor, 0);
 		public static final /*@NonNull*/ ExecutorProperty _Sensor__occiSensorGranularity = new EcoreExecutorProperty(MonitoringPackage.Literals.SENSOR__OCCI_SENSOR_GRANULARITY, Types._Sensor, 1);
@@ -419,30 +415,24 @@ public class MonitoringTables
 		};
 		private static final int /*@NonNull*/ [] __DateTime = { 1,1 };
 
-		private static final /*@NonNull*/ ExecutorFragment /*@NonNull*/ [] _MonitoringProperty =
-		{
-			Fragments._MonitoringProperty__OclAny /* 0 */,
-			Fragments._MonitoringProperty__OclElement /* 1 */,
-			Fragments._MonitoringProperty__MonitoringProperty /* 2 */
-		};
-		private static final int /*@NonNull*/ [] __MonitoringProperty = { 1,1,1 };
-
-		private static final /*@NonNull*/ ExecutorFragment /*@NonNull*/ [] _MonitoringPropertyArray =
+		private static final /*@NonNull*/ ExecutorFragment /*@NonNull*/ [] _Martpublisher =
 		{
-			Fragments._MonitoringPropertyArray__OclAny /* 0 */,
-			Fragments._MonitoringPropertyArray__OclElement /* 1 */,
-			Fragments._MonitoringPropertyArray__MonitoringPropertyArray /* 2 */
+			Fragments._Martpublisher__OclAny /* 0 */,
+			Fragments._Martpublisher__OclElement /* 1 */,
+			Fragments._Martpublisher__MixinBase /* 2 */,
+			Fragments._Martpublisher__Martpublisher /* 3 */
 		};
-		private static final int /*@NonNull*/ [] __MonitoringPropertyArray = { 1,1,1 };
+		private static final int /*@NonNull*/ [] __Martpublisher = { 1,1,1,1 };
 
-		private static final /*@NonNull*/ ExecutorFragment /*@NonNull*/ [] _Monitoringproperties =
+		private static final /*@NonNull*/ ExecutorFragment /*@NonNull*/ [] _Monitoringproperty =
 		{
-			Fragments._Monitoringproperties__OclAny /* 0 */,
-			Fragments._Monitoringproperties__OclElement /* 1 */,
-			Fragments._Monitoringproperties__MixinBase /* 2 */,
-			Fragments._Monitoringproperties__Monitoringproperties /* 3 */
+			Fragments._Monitoringproperty__OclAny /* 0 */,
+			Fragments._Monitoringproperty__OclElement /* 1 */,
+			Fragments._Monitoringproperty__Entity /* 2 */,
+			Fragments._Monitoringproperty__Link /* 3 */,
+			Fragments._Monitoringproperty__Monitoringproperty /* 4 */
 		};
-		private static final int /*@NonNull*/ [] __Monitoringproperties = { 1,1,1,1 };
+		private static final int /*@NonNull*/ [] __Monitoringproperty = { 1,1,1,1,1 };
 
 		private static final /*@NonNull*/ ExecutorFragment /*@NonNull*/ [] _Processor =
 		{
@@ -499,9 +489,8 @@ public class MonitoringTables
 		static {
 			Types._Datagatherer.initFragments(_Datagatherer, __Datagatherer);
 			Types._DateTime.initFragments(_DateTime, __DateTime);
-			Types._MonitoringProperty.initFragments(_MonitoringProperty, __MonitoringProperty);
-			Types._MonitoringPropertyArray.initFragments(_MonitoringPropertyArray, __MonitoringPropertyArray);
-			Types._Monitoringproperties.initFragments(_Monitoringproperties, __Monitoringproperties);
+			Types._Martpublisher.initFragments(_Martpublisher, __Martpublisher);
+			Types._Monitoringproperty.initFragments(_Monitoringproperty, __Monitoringproperty);
 			Types._Processor.initFragments(_Processor, __Processor);
 			Types._Publisher.initFragments(_Publisher, __Publisher);
 			Types._Second.initFragments(_Second, __Second);
@@ -591,8 +580,9 @@ public class MonitoringTables
 			OCLstdlibTables.Operations._OclAny__toString /* toString() */
 		};
 
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _MonitoringProperty__MonitoringProperty = {};
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _MonitoringProperty__OclAny = {
+		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Martpublisher__Martpublisher = {};
+		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Martpublisher__MixinBase = {};
+		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Martpublisher__OclAny = {
 			OCLstdlibTables.Operations._OclAny___lt__gt_ /* _'<>'(OclSelf[?]) */,
 			OCLstdlibTables.Operations._OclAny___eq_ /* _'='(OclSelf[?]) */,
 			OCLstdlibTables.Operations._OclAny__oclAsSet /* oclAsSet() */,
@@ -609,7 +599,7 @@ public class MonitoringTables
 			OCLstdlibTables.Operations._OclAny__oclTypes /* oclTypes() */,
 			OCLstdlibTables.Operations._OclAny__toString /* toString() */
 		};
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _MonitoringProperty__OclElement = {
+		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Martpublisher__OclElement = {
 			OCLstdlibTables.Operations._OclElement__allInstances /* allInstances() */,
 			OCLstdlibTables.Operations._OclElement__oclAsModelType /* oclAsModelType(TT)(TT[?]) */,
 			OCLstdlibTables.Operations._OclElement__oclContainer /* oclContainer() */,
@@ -619,37 +609,24 @@ public class MonitoringTables
 			OCLstdlibTables.Operations._OclElement__oclModelTypes /* oclModelTypes() */
 		};
 
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _MonitoringPropertyArray__MonitoringPropertyArray = {};
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _MonitoringPropertyArray__OclAny = {
-			OCLstdlibTables.Operations._OclAny___lt__gt_ /* _'<>'(OclSelf[?]) */,
-			OCLstdlibTables.Operations._OclAny___eq_ /* _'='(OclSelf[?]) */,
-			OCLstdlibTables.Operations._OclAny__oclAsSet /* oclAsSet() */,
-			OCLstdlibTables.Operations._OclAny__oclAsType /* oclAsType(TT)(TT[?]) */,
-			OCLstdlibTables.Operations._OclAny__oclIsInState /* oclIsInState(OclState[?]) */,
-			OCLstdlibTables.Operations._OclAny__oclIsInvalid /* oclIsInvalid() */,
-			OCLstdlibTables.Operations._OclAny__oclIsKindOf /* oclIsKindOf(OclType[?]) */,
-			OCLstdlibTables.Operations._OclAny__oclIsNew /* oclIsNew() */,
-			OCLstdlibTables.Operations._OclAny__oclIsTypeOf /* oclIsTypeOf(OclType[?]) */,
-			OCLstdlibTables.Operations._OclAny__oclIsUndefined /* oclIsUndefined() */,
-			OCLstdlibTables.Operations._OclAny__0_oclLog /* oclLog() */,
-			OCLstdlibTables.Operations._OclAny__1_oclLog /* oclLog(String[?]) */,
-			OCLstdlibTables.Operations._OclAny__oclType /* oclType() */,
-			OCLstdlibTables.Operations._OclAny__oclTypes /* oclTypes() */,
-			OCLstdlibTables.Operations._OclAny__toString /* toString() */
+		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Monitoringproperty__Monitoringproperty = {};
+		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Monitoringproperty__Entity = {
+			OCCITables.Operations._Entity__occiCreate /* occiCreate() */,
+			OCCITables.Operations._Entity__occiCreate /* occiCreate() */,
+			OCCITables.Operations._Entity__occiDelete /* occiDelete() */,
+			OCCITables.Operations._Entity__occiDelete /* occiDelete() */,
+			OCCITables.Operations._Entity__occiRetrieve /* occiRetrieve() */,
+			OCCITables.Operations._Entity__occiRetrieve /* occiRetrieve() */,
+			OCCITables.Operations._Entity__occiUpdate /* occiUpdate() */,
+			OCCITables.Operations._Entity__occiUpdate /* occiUpdate() */
 		};
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _MonitoringPropertyArray__OclElement = {
-			OCLstdlibTables.Operations._OclElement__allInstances /* allInstances() */,
-			OCLstdlibTables.Operations._OclElement__oclAsModelType /* oclAsModelType(TT)(TT[?]) */,
-			OCLstdlibTables.Operations._OclElement__oclContainer /* oclContainer() */,
-			OCLstdlibTables.Operations._OclElement__oclContents /* oclContents() */,
-			OCLstdlibTables.Operations._OclElement__oclIsModelKindOf /* oclIsModelKindOf(OclType[?]) */,
-			OCLstdlibTables.Operations._OclElement__oclModelType /* oclModelType() */,
-			OCLstdlibTables.Operations._OclElement__oclModelTypes /* oclModelTypes() */
+		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Monitoringproperty__Link = {
+			OCCITables.Operations._Link__LinkSourceInvariant /* LinkSourceInvariant(Kind[?],Kind[?]) */,
+			OCCITables.Operations._Link__LinkSourceInvariant /* LinkSourceInvariant(Kind[?],Kind[?]) */,
+			OCCITables.Operations._Link__LinkTargetInvariant /* LinkTargetInvariant(Kind[?],Kind[?]) */,
+			OCCITables.Operations._Link__LinkTargetInvariant /* LinkTargetInvariant(Kind[?],Kind[?]) */
 		};
-
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Monitoringproperties__Monitoringproperties = {};
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Monitoringproperties__MixinBase = {};
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Monitoringproperties__OclAny = {
+		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Monitoringproperty__OclAny = {
 			OCLstdlibTables.Operations._OclAny___lt__gt_ /* _'<>'(OclSelf[?]) */,
 			OCLstdlibTables.Operations._OclAny___eq_ /* _'='(OclSelf[?]) */,
 			OCLstdlibTables.Operations._OclAny__oclAsSet /* oclAsSet() */,
@@ -666,7 +643,7 @@ public class MonitoringTables
 			OCLstdlibTables.Operations._OclAny__oclTypes /* oclTypes() */,
 			OCLstdlibTables.Operations._OclAny__toString /* toString() */
 		};
-		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Monitoringproperties__OclElement = {
+		private static final /*@NonNull*/ ExecutorOperation /*@NonNull*/ [] _Monitoringproperty__OclElement = {
 			OCLstdlibTables.Operations._OclElement__allInstances /* allInstances() */,
 			OCLstdlibTables.Operations._OclElement__oclAsModelType /* oclAsModelType(TT)(TT[?]) */,
 			OCLstdlibTables.Operations._OclElement__oclContainer /* oclContainer() */,
@@ -916,18 +893,16 @@ public class MonitoringTables
 			Fragments._DateTime__DateTime.initOperations(_DateTime__DateTime);
 			Fragments._DateTime__OclAny.initOperations(_DateTime__OclAny);
 
-			Fragments._MonitoringProperty__MonitoringProperty.initOperations(_MonitoringProperty__MonitoringProperty);
-			Fragments._MonitoringProperty__OclAny.initOperations(_MonitoringProperty__OclAny);
-			Fragments._MonitoringProperty__OclElement.initOperations(_MonitoringProperty__OclElement);
-
-			Fragments._MonitoringPropertyArray__MonitoringPropertyArray.initOperations(_MonitoringPropertyArray__MonitoringPropertyArray);
-			Fragments._MonitoringPropertyArray__OclAny.initOperations(_MonitoringPropertyArray__OclAny);
-			Fragments._MonitoringPropertyArray__OclElement.initOperations(_MonitoringPropertyArray__OclElement);
+			Fragments._Martpublisher__Martpublisher.initOperations(_Martpublisher__Martpublisher);
+			Fragments._Martpublisher__MixinBase.initOperations(_Martpublisher__MixinBase);
+			Fragments._Martpublisher__OclAny.initOperations(_Martpublisher__OclAny);
+			Fragments._Martpublisher__OclElement.initOperations(_Martpublisher__OclElement);
 
-			Fragments._Monitoringproperties__MixinBase.initOperations(_Monitoringproperties__MixinBase);
-			Fragments._Monitoringproperties__Monitoringproperties.initOperations(_Monitoringproperties__Monitoringproperties);
-			Fragments._Monitoringproperties__OclAny.initOperations(_Monitoringproperties__OclAny);
-			Fragments._Monitoringproperties__OclElement.initOperations(_Monitoringproperties__OclElement);
+			Fragments._Monitoringproperty__Entity.initOperations(_Monitoringproperty__Entity);
+			Fragments._Monitoringproperty__Link.initOperations(_Monitoringproperty__Link);
+			Fragments._Monitoringproperty__Monitoringproperty.initOperations(_Monitoringproperty__Monitoringproperty);
+			Fragments._Monitoringproperty__OclAny.initOperations(_Monitoringproperty__OclAny);
+			Fragments._Monitoringproperty__OclElement.initOperations(_Monitoringproperty__OclElement);
 
 			Fragments._Processor__Component.initOperations(_Processor__Component);
 			Fragments._Processor__Entity.initOperations(_Processor__Entity);
@@ -984,23 +959,24 @@ public class MonitoringTables
 
 		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _DateTime = {};
 
-		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _MonitoringProperty = {
-			MonitoringTables.Properties._MonitoringProperty__Id,
-			MonitoringTables.Properties._MonitoringProperty__name,
-			MonitoringTables.Properties._MonitoringProperty__value
+		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _Martpublisher = {
+			MonitoringTables.Properties._Martpublisher__monitoringPropertyId,
+			MonitoringTables.Properties._Martpublisher__monitoringPropertyName,
+			MonitoringTables.Properties._Martpublisher__monitoringPropertyResource
 		};
 
-		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _MonitoringPropertyArray = {
-			MonitoringTables.Properties._MonitoringPropertyArray__monitoringpropertyarrayValues
+		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _Monitoringproperty = {
+			MonitoringTables.Properties._Monitoringproperty__monitoringPropertyName,
+			MonitoringTables.Properties._Monitoringproperty__monitoringPropertyValue
 		};
 
-		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _Monitoringproperties = {
-			MonitoringTables.Properties._Monitoringproperties__monitoringProperties
+		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _Processor = {
+			MonitoringTables.Properties._Processor__gathererAddress
 		};
 
-		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _Processor = {};
-
-		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _Publisher = {};
+		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _Publisher = {
+			MonitoringTables.Properties._Publisher__publisherEndpoint
+		};
 
 		private static final /*@NonNull*/ ExecutorProperty /*@NonNull*/ [] _Second = {};
 
@@ -1021,9 +997,8 @@ public class MonitoringTables
 		static {
 			Fragments._Datagatherer__Datagatherer.initProperties(_Datagatherer);
 			Fragments._DateTime__DateTime.initProperties(_DateTime);
-			Fragments._MonitoringProperty__MonitoringProperty.initProperties(_MonitoringProperty);
-			Fragments._MonitoringPropertyArray__MonitoringPropertyArray.initProperties(_MonitoringPropertyArray);
-			Fragments._Monitoringproperties__Monitoringproperties.initProperties(_Monitoringproperties);
+			Fragments._Martpublisher__Martpublisher.initProperties(_Martpublisher);
+			Fragments._Monitoringproperty__Monitoringproperty.initProperties(_Monitoringproperty);
 			Fragments._Processor__Processor.initProperties(_Processor);
 			Fragments._Publisher__Publisher.initProperties(_Publisher);
 			Fragments._Second__Second.initProperties(_Second);
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Monitoringproperties.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Monitoringproperties.java
deleted file mode 100644
index 30bff2ba341ccc992316763d5bb5f95693e73c9e..0000000000000000000000000000000000000000
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Monitoringproperties.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/**
- * Copyright (c) 2015-2017 Obeo, Inria
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 	
- * Contributors:
- * - William Piers <william.piers@obeo.fr>
- * - Philippe Merle <philippe.merle@inria.fr>
- * - Faiez Zalila <faiez.zalila@inria.fr>
- */
-package monitoring;
-
-import java.util.Map;
-
-import org.eclipse.cmf.occi.core.MixinBase;
-
-import org.eclipse.emf.common.util.DiagnosticChain;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Monitoringproperties</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * </p>
- * <ul>
- *   <li>{@link monitoring.Monitoringproperties#getMonitoringProperties <em>Monitoring Properties</em>}</li>
- * </ul>
- *
- * @see monitoring.MonitoringPackage#getMonitoringproperties()
- * @model annotation="http://www.eclipse.org/emf/2002/Ecore constraints='appliesConstraint'"
- * @generated
- */
-public interface Monitoringproperties extends MixinBase {
-	/**
-	 * Returns the value of the '<em><b>Monitoring Properties</b></em>' containment reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * <!-- begin-model-doc -->
-	 * 
-	 * <!-- end-model-doc -->
-	 * @return the value of the '<em>Monitoring Properties</em>' containment reference.
-	 * @see #setMonitoringProperties(MonitoringPropertyArray)
-	 * @see monitoring.MonitoringPackage#getMonitoringproperties_MonitoringProperties()
-	 * @model containment="true"
-	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!Monitoringproperties!monitoringProperties'"
-	 * @generated
-	 */
-	MonitoringPropertyArray getMonitoringProperties();
-
-	/**
-	 * Sets the value of the '{@link monitoring.Monitoringproperties#getMonitoringProperties <em>Monitoring Properties</em>}' containment reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Monitoring Properties</em>' containment reference.
-	 * @see #getMonitoringProperties()
-	 * @generated
-	 */
-	void setMonitoringProperties(MonitoringPropertyArray value);
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv appliesConstraint:\n *   let\n *     severity : Integer[1] = \'Monitoringproperties::appliesConstraint\'.getSeverity()\n *   in\n *     if severity &lt;= 0\n *     then true\n *     else\n *       let\n *         result : occi::Boolean[1] = self.entity.oclIsKindOf(occi::Resource)\n *       in\n *         \'Monitoringproperties::appliesConstraint\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.evaluation.Executor%&gt; executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.ids.IdResolver%&gt; idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.values.IntegerValue%&gt; severity_0 = &lt;%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%&gt;.INSTANCE.evaluate(executor, &lt;%monitoring.MonitoringTables%&gt;.STR_Monitoringproperties_c_c_appliesConstraint);\nfinal /*@NonInvalid\052/ boolean le = &lt;%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%&gt;.INSTANCE.evaluate(executor, severity_0, &lt;%monitoring.MonitoringTables%&gt;.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.Class%&gt; TYP_occi_c_c_Resource = idResolver.getClass(&lt;%monitoring.MonitoringTables%&gt;.CLSSid_Resource, null);\n\tfinal /*@NonInvalid\052/ &lt;%org.eclipse.cmf.occi.core.Entity%&gt; entity = this.getEntity();\n\tfinal /*@NonInvalid\052/ boolean result = &lt;%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%&gt;.INSTANCE.evaluate(executor, entity, TYP_occi_c_c_Resource).booleanValue();\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = &lt;%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%&gt;.INSTANCE.evaluate(executor, &lt;%org.eclipse.ocl.pivot.ids.TypeId%&gt;.BOOLEAN, &lt;%monitoring.MonitoringTables%&gt;.STR_Monitoringproperties_c_c_appliesConstraint, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, &lt;%monitoring.MonitoringTables%&gt;.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'"
-	 * @generated
-	 */
-	boolean appliesConstraint(DiagnosticChain diagnostics, Map<Object, Object> context);
-
-} // Monitoringproperties
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Monitoringproperty.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Monitoringproperty.java
new file mode 100644
index 0000000000000000000000000000000000000000..e02c5308f3b6f43022187f2c2822df7d27a942b6
--- /dev/null
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Monitoringproperty.java
@@ -0,0 +1,103 @@
+/**
+ * Copyright (c) 2015-2017 Obeo, Inria
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 	
+ * Contributors:
+ * - William Piers <william.piers@obeo.fr>
+ * - Philippe Merle <philippe.merle@inria.fr>
+ * - Faiez Zalila <faiez.zalila@inria.fr>
+ */
+package monitoring;
+
+import java.util.Map;
+
+import org.eclipse.cmf.occi.core.Link;
+
+import org.eclipse.emf.common.util.DiagnosticChain;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Monitoringproperty</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * MonitoringProperty Component
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link monitoring.Monitoringproperty#getMonitoringPropertyName <em>Monitoring Property Name</em>}</li>
+ *   <li>{@link monitoring.Monitoringproperty#getMonitoringPropertyValue <em>Monitoring Property Value</em>}</li>
+ * </ul>
+ *
+ * @see monitoring.MonitoringPackage#getMonitoringproperty()
+ * @model annotation="http://www.eclipse.org/emf/2002/Ecore constraints='targetConstraint'"
+ * @generated
+ */
+public interface Monitoringproperty extends Link {
+	/**
+	 * Returns the value of the '<em><b>Monitoring Property Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * 
+	 * <!-- end-model-doc -->
+	 * @return the value of the '<em>Monitoring Property Name</em>' attribute.
+	 * @see #setMonitoringPropertyName(String)
+	 * @see monitoring.MonitoringPackage#getMonitoringproperty_MonitoringPropertyName()
+	 * @model dataType="monitoring.String" required="true"
+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!Monitoringproperty!monitoringPropertyName'"
+	 * @generated
+	 */
+	String getMonitoringPropertyName();
+
+	/**
+	 * Sets the value of the '{@link monitoring.Monitoringproperty#getMonitoringPropertyName <em>Monitoring Property Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Monitoring Property Name</em>' attribute.
+	 * @see #getMonitoringPropertyName()
+	 * @generated
+	 */
+	void setMonitoringPropertyName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Monitoring Property Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * 
+	 * <!-- end-model-doc -->
+	 * @return the value of the '<em>Monitoring Property Value</em>' attribute.
+	 * @see #setMonitoringPropertyValue(String)
+	 * @see monitoring.MonitoringPackage#getMonitoringproperty_MonitoringPropertyValue()
+	 * @model dataType="monitoring.String"
+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!Monitoringproperty!monitoringPropertyValue'"
+	 * @generated
+	 */
+	String getMonitoringPropertyValue();
+
+	/**
+	 * Sets the value of the '{@link monitoring.Monitoringproperty#getMonitoringPropertyValue <em>Monitoring Property Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Monitoring Property Value</em>' attribute.
+	 * @see #getMonitoringPropertyValue()
+	 * @generated
+	 */
+	void setMonitoringPropertyValue(String value);
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @model annotation="http://www.eclipse.org/emf/2002/GenModel body='/**\n *\n * inv targetConstraint:\n *   let\n *     severity : Integer[1] = \'Monitoringproperty::targetConstraint\'.getSeverity()\n *   in\n *     if severity &lt;= 0\n *     then true\n *     else\n *       let result : occi::Boolean[1] = self.target.oclIsKindOf(Sensor)\n *       in\n *         \'Monitoringproperty::targetConstraint\'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)\n *     endif\n \052/\nfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.evaluation.Executor%&gt; executor = &lt;%org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal%&gt;.getExecutor(this);\nfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.ids.IdResolver%&gt; idResolver = executor.getIdResolver();\nfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.values.IntegerValue%&gt; severity_0 = &lt;%org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation%&gt;.INSTANCE.evaluate(executor, &lt;%monitoring.MonitoringTables%&gt;.STR_Monitoringproperty_c_c_targetConstraint);\nfinal /*@NonInvalid\052/ boolean le = &lt;%org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation%&gt;.INSTANCE.evaluate(executor, severity_0, &lt;%monitoring.MonitoringTables%&gt;.INT_0).booleanValue();\n/*@NonInvalid\052/ boolean symbol_0;\nif (le) {\n\tsymbol_0 = &lt;%org.eclipse.ocl.pivot.utilities.ValueUtil%&gt;.TRUE_VALUE;\n}\nelse {\n\tfinal /*@NonInvalid\052/ &lt;%org.eclipse.ocl.pivot.Class%&gt; TYP_monitoring_c_c_Sensor = idResolver.getClass(&lt;%monitoring.MonitoringTables%&gt;.CLSSid_Sensor, null);\n\tfinal /*@NonInvalid\052/ &lt;%org.eclipse.cmf.occi.core.Resource%&gt; target = this.getTarget();\n\tfinal /*@NonInvalid\052/ boolean result = &lt;%org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation%&gt;.INSTANCE.evaluate(executor, target, TYP_monitoring_c_c_Sensor).booleanValue();\n\tfinal /*@NonInvalid\052/ boolean logDiagnostic = &lt;%org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation%&gt;.INSTANCE.evaluate(executor, &lt;%org.eclipse.ocl.pivot.ids.TypeId%&gt;.BOOLEAN, &lt;%monitoring.MonitoringTables%&gt;.STR_Monitoringproperty_c_c_targetConstraint, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, &lt;%monitoring.MonitoringTables%&gt;.INT_0).booleanValue();\n\tsymbol_0 = logDiagnostic;\n}\nreturn Boolean.TRUE == symbol_0;'"
+	 * @generated
+	 */
+	boolean targetConstraint(DiagnosticChain diagnostics, Map<Object, Object> context);
+
+} // Monitoringproperty
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Processor.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Processor.java
index 370df2336cebf71f06fd8f0e0424f3101e64016f..3c09509cd0603cc218bcd8a5ff3508c39a1b793a 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Processor.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Processor.java
@@ -23,10 +23,42 @@ import org.modmacao.occi.platform.Component;
  * Processor Resource
  * <!-- end-model-doc -->
  *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link monitoring.Processor#getGathererAddress <em>Gatherer Address</em>}</li>
+ * </ul>
  *
  * @see monitoring.MonitoringPackage#getProcessor()
  * @model
  * @generated
  */
 public interface Processor extends Component {
+	/**
+	 * Returns the value of the '<em><b>Gatherer Address</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * 
+	 * <!-- end-model-doc -->
+	 * @return the value of the '<em>Gatherer Address</em>' attribute.
+	 * @see #setGathererAddress(String)
+	 * @see monitoring.MonitoringPackage#getProcessor_GathererAddress()
+	 * @model dataType="monitoring.String"
+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!Processor!gathererAddress'"
+	 * @generated
+	 */
+	String getGathererAddress();
+
+	/**
+	 * Sets the value of the '{@link monitoring.Processor#getGathererAddress <em>Gatherer Address</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Gatherer Address</em>' attribute.
+	 * @see #getGathererAddress()
+	 * @generated
+	 */
+	void setGathererAddress(String value);
+
 } // Processor
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Publisher.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Publisher.java
index 6f40c9b01fcaa07763662333268521a30bfd1bc4..e00ebcbce11990ceec5b968666ac9da076463fba 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Publisher.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/Publisher.java
@@ -23,10 +23,42 @@ import org.modmacao.occi.platform.Component;
  * Publisher Resource
  * <!-- end-model-doc -->
  *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link monitoring.Publisher#getPublisherEndpoint <em>Publisher Endpoint</em>}</li>
+ * </ul>
  *
  * @see monitoring.MonitoringPackage#getPublisher()
  * @model
  * @generated
  */
 public interface Publisher extends Component {
+	/**
+	 * Returns the value of the '<em><b>Publisher Endpoint</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * <!-- begin-model-doc -->
+	 * 
+	 * <!-- end-model-doc -->
+	 * @return the value of the '<em>Publisher Endpoint</em>' attribute.
+	 * @see #setPublisherEndpoint(String)
+	 * @see monitoring.MonitoringPackage#getPublisher_PublisherEndpoint()
+	 * @model dataType="monitoring.String" required="true"
+	 *        annotation="http://www.eclipse.org/emf/2002/GenModel get='throw new UnsupportedOperationException();  // FIXME Unimplemented http://schemas.ugoe.cs.rwm/monitoring/ecore!Publisher!publisherEndpoint'"
+	 * @generated
+	 */
+	String getPublisherEndpoint();
+
+	/**
+	 * Sets the value of the '{@link monitoring.Publisher#getPublisherEndpoint <em>Publisher Endpoint</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Publisher Endpoint</em>' attribute.
+	 * @see #getPublisherEndpoint()
+	 * @generated
+	 */
+	void setPublisherEndpoint(String value);
+
 } // Publisher
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MartpublisherImpl.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MartpublisherImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..1b3206b655a82af6b72b861a5c33efd86f9f77c9
--- /dev/null
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MartpublisherImpl.java
@@ -0,0 +1,357 @@
+/**
+ * Copyright (c) 2015-2017 Obeo, Inria
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 	
+ * Contributors:
+ * - William Piers <william.piers@obeo.fr>
+ * - Philippe Merle <philippe.merle@inria.fr>
+ * - Faiez Zalila <faiez.zalila@inria.fr>
+ */
+package monitoring.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import java.util.Map;
+
+import monitoring.Martpublisher;
+import monitoring.MonitoringPackage;
+
+import monitoring.MonitoringTables;
+import monitoring.util.MonitoringValidator;
+
+import org.eclipse.cmf.occi.core.Entity;
+import org.eclipse.cmf.occi.core.impl.MixinBaseImpl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.DiagnosticChain;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.ocl.pivot.evaluation.Executor;
+import org.eclipse.ocl.pivot.ids.IdResolver;
+import org.eclipse.ocl.pivot.ids.TypeId;
+import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal;
+import org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation;
+import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation;
+import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation;
+import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation;
+import org.eclipse.ocl.pivot.utilities.ValueUtil;
+import org.eclipse.ocl.pivot.values.IntegerValue;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Martpublisher</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link monitoring.impl.MartpublisherImpl#getMonitoringPropertyName <em>Monitoring Property Name</em>}</li>
+ *   <li>{@link monitoring.impl.MartpublisherImpl#getMonitoringPropertyId <em>Monitoring Property Id</em>}</li>
+ *   <li>{@link monitoring.impl.MartpublisherImpl#getMonitoringPropertyResource <em>Monitoring Property Resource</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class MartpublisherImpl extends MixinBaseImpl implements Martpublisher {
+	/**
+	 * The default value of the '{@link #getMonitoringPropertyName() <em>Monitoring Property Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MONITORING_PROPERTY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMonitoringPropertyName() <em>Monitoring Property Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String monitoringPropertyName = MONITORING_PROPERTY_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMonitoringPropertyId() <em>Monitoring Property Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyId()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MONITORING_PROPERTY_ID_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMonitoringPropertyId() <em>Monitoring Property Id</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyId()
+	 * @generated
+	 * @ordered
+	 */
+	protected String monitoringPropertyId = MONITORING_PROPERTY_ID_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMonitoringPropertyResource() <em>Monitoring Property Resource</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyResource()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MONITORING_PROPERTY_RESOURCE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMonitoringPropertyResource() <em>Monitoring Property Resource</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyResource()
+	 * @generated
+	 * @ordered
+	 */
+	protected String monitoringPropertyResource = MONITORING_PROPERTY_RESOURCE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected MartpublisherImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MonitoringPackage.Literals.MARTPUBLISHER;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMonitoringPropertyName() {
+		return monitoringPropertyName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMonitoringPropertyName(String newMonitoringPropertyName) {
+		String oldMonitoringPropertyName = monitoringPropertyName;
+		monitoringPropertyName = newMonitoringPropertyName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_NAME, oldMonitoringPropertyName, monitoringPropertyName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMonitoringPropertyId() {
+		return monitoringPropertyId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMonitoringPropertyId(String newMonitoringPropertyId) {
+		String oldMonitoringPropertyId = monitoringPropertyId;
+		monitoringPropertyId = newMonitoringPropertyId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_ID, oldMonitoringPropertyId, monitoringPropertyId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMonitoringPropertyResource() {
+		return monitoringPropertyResource;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMonitoringPropertyResource(String newMonitoringPropertyResource) {
+		String oldMonitoringPropertyResource = monitoringPropertyResource;
+		monitoringPropertyResource = newMonitoringPropertyResource;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE, oldMonitoringPropertyResource, monitoringPropertyResource));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean appliesConstraint(final DiagnosticChain diagnostics, final Map<Object, Object> context) {
+		/**
+		 *
+		 * inv appliesConstraint:
+		 *   let severity : Integer[1] = 'Martpublisher::appliesConstraint'.getSeverity()
+		 *   in
+		 *     if severity <= 0
+		 *     then true
+		 *     else
+		 *       let
+		 *         result : occi::Boolean[1] = self.entity.oclIsKindOf(Publisher)
+		 *       in
+		 *         'Martpublisher::appliesConstraint'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)
+		 *     endif
+		 */
+		final /*@NonInvalid*/ Executor executor = PivotUtilInternal.getExecutor(this);
+		final /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+		final /*@NonInvalid*/ IntegerValue severity_0 = CGStringGetSeverityOperation.INSTANCE.evaluate(executor, MonitoringTables.STR_Martpublisher_c_c_appliesConstraint);
+		final /*@NonInvalid*/ boolean le = OclComparableLessThanEqualOperation.INSTANCE.evaluate(executor, severity_0, MonitoringTables.INT_0).booleanValue();
+		/*@NonInvalid*/ boolean symbol_0;
+		if (le) {
+			symbol_0 = ValueUtil.TRUE_VALUE;
+		}
+		else {
+			final /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_monitoring_c_c_Publisher = idResolver.getClass(MonitoringTables.CLSSid_Publisher, null);
+			final /*@NonInvalid*/ Entity entity = this.getEntity();
+			final /*@NonInvalid*/ boolean result = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, entity, TYP_monitoring_c_c_Publisher).booleanValue();
+			final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, MonitoringTables.STR_Martpublisher_c_c_appliesConstraint, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, MonitoringTables.INT_0).booleanValue();
+			symbol_0 = logDiagnostic;
+		}
+		return Boolean.TRUE == symbol_0;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_NAME:
+				return getMonitoringPropertyName();
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_ID:
+				return getMonitoringPropertyId();
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE:
+				return getMonitoringPropertyResource();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_NAME:
+				setMonitoringPropertyName((String)newValue);
+				return;
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_ID:
+				setMonitoringPropertyId((String)newValue);
+				return;
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE:
+				setMonitoringPropertyResource((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_NAME:
+				setMonitoringPropertyName(MONITORING_PROPERTY_NAME_EDEFAULT);
+				return;
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_ID:
+				setMonitoringPropertyId(MONITORING_PROPERTY_ID_EDEFAULT);
+				return;
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE:
+				setMonitoringPropertyResource(MONITORING_PROPERTY_RESOURCE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_NAME:
+				return MONITORING_PROPERTY_NAME_EDEFAULT == null ? monitoringPropertyName != null : !MONITORING_PROPERTY_NAME_EDEFAULT.equals(monitoringPropertyName);
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_ID:
+				return MONITORING_PROPERTY_ID_EDEFAULT == null ? monitoringPropertyId != null : !MONITORING_PROPERTY_ID_EDEFAULT.equals(monitoringPropertyId);
+			case MonitoringPackage.MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE:
+				return MONITORING_PROPERTY_RESOURCE_EDEFAULT == null ? monitoringPropertyResource != null : !MONITORING_PROPERTY_RESOURCE_EDEFAULT.equals(monitoringPropertyResource);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	@SuppressWarnings("unchecked")
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case MonitoringPackage.MARTPUBLISHER___APPLIES_CONSTRAINT__DIAGNOSTICCHAIN_MAP:
+				return appliesConstraint((DiagnosticChain)arguments.get(0), (Map<Object, Object>)arguments.get(1));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (monitoringPropertyName: ");
+		result.append(monitoringPropertyName);
+		result.append(", monitoringPropertyId: ");
+		result.append(monitoringPropertyId);
+		result.append(", monitoringPropertyResource: ");
+		result.append(monitoringPropertyResource);
+		result.append(')');
+		return result.toString();
+	}
+
+} //MartpublisherImpl
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringFactoryImpl.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringFactoryImpl.java
index 89e45c2d7dd5759eaab815e9e9180d38f431319a..cf98693f1244d201d95622a0086d33b0a3a48d88 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringFactoryImpl.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringFactoryImpl.java
@@ -67,13 +67,12 @@ public class MonitoringFactoryImpl extends EFactoryImpl implements MonitoringFac
 	@Override
 	public EObject create(EClass eClass) {
 		switch (eClass.getClassifierID()) {
-			case MonitoringPackage.MONITORING_PROPERTY: return createMonitoringProperty();
-			case MonitoringPackage.MONITORING_PROPERTY_ARRAY: return createMonitoringPropertyArray();
 			case MonitoringPackage.SENSOR: return createSensor();
 			case MonitoringPackage.DATAGATHERER: return createDatagatherer();
 			case MonitoringPackage.PROCESSOR: return createProcessor();
 			case MonitoringPackage.PUBLISHER: return createPublisher();
-			case MonitoringPackage.MONITORINGPROPERTIES: return createMonitoringproperties();
+			case MonitoringPackage.MONITORINGPROPERTY: return createMonitoringproperty();
+			case MonitoringPackage.MARTPUBLISHER: return createMartpublisher();
 			default:
 				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
 		}
@@ -117,26 +116,6 @@ public class MonitoringFactoryImpl extends EFactoryImpl implements MonitoringFac
 		}
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public MonitoringProperty createMonitoringProperty() {
-		MonitoringPropertyImpl monitoringProperty = new MonitoringPropertyImpl();
-		return monitoringProperty;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public MonitoringPropertyArray createMonitoringPropertyArray() {
-		MonitoringPropertyArrayImpl monitoringPropertyArray = new MonitoringPropertyArrayImpl();
-		return monitoringPropertyArray;
-	}
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -182,9 +161,19 @@ public class MonitoringFactoryImpl extends EFactoryImpl implements MonitoringFac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public Monitoringproperties createMonitoringproperties() {
-		MonitoringpropertiesImpl monitoringproperties = new MonitoringpropertiesImpl();
-		return monitoringproperties;
+	public Monitoringproperty createMonitoringproperty() {
+		MonitoringpropertyImpl monitoringproperty = new MonitoringpropertyImpl();
+		return monitoringproperty;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public Martpublisher createMartpublisher() {
+		MartpublisherImpl martpublisher = new MartpublisherImpl();
+		return martpublisher;
 	}
 
 	/**
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPackageImpl.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPackageImpl.java
index c123c3c7160481ef1a55481b3e3431bfbf607c40..83c528d7db226c1e033716a002cd9456119ddeaf 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPackageImpl.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPackageImpl.java
@@ -13,11 +13,10 @@
 package monitoring.impl;
 
 import monitoring.Datagatherer;
+import monitoring.Martpublisher;
 import monitoring.MonitoringFactory;
 import monitoring.MonitoringPackage;
-import monitoring.MonitoringProperty;
-import monitoring.MonitoringPropertyArray;
-import monitoring.Monitoringproperties;
+import monitoring.Monitoringproperty;
 import monitoring.Processor;
 import monitoring.Publisher;
 import monitoring.Sensor;
@@ -32,7 +31,6 @@ import org.eclipse.emf.ecore.EDataType;
 import org.eclipse.emf.ecore.EGenericType;
 import org.eclipse.emf.ecore.EOperation;
 import org.eclipse.emf.ecore.EPackage;
-import org.eclipse.emf.ecore.EReference;
 import org.eclipse.emf.ecore.EValidator;
 
 import org.eclipse.emf.ecore.impl.EPackageImpl;
@@ -51,49 +49,42 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private EClass monitoringPropertyEClass = null;
+	private EClass sensorEClass = null;
 
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private EClass monitoringPropertyArrayEClass = null;
+	private EClass datagathererEClass = null;
 
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private EClass sensorEClass = null;
+	private EClass processorEClass = null;
 
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private EClass datagathererEClass = null;
+	private EClass publisherEClass = null;
 
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private EClass processorEClass = null;
+	private EClass monitoringpropertyEClass = null;
 
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private EClass publisherEClass = null;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass monitoringpropertiesEClass = null;
+	private EClass martpublisherEClass = null;
 
 	/**
 	 * <!-- begin-user-doc -->
@@ -195,8 +186,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EClass getMonitoringProperty() {
-		return monitoringPropertyEClass;
+	public EClass getSensor() {
+		return sensorEClass;
 	}
 
 	/**
@@ -204,8 +195,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getMonitoringProperty_Name() {
-		return (EAttribute)monitoringPropertyEClass.getEStructuralFeatures().get(0);
+	public EAttribute getSensor_OcciSensorTimebase() {
+		return (EAttribute)sensorEClass.getEStructuralFeatures().get(0);
 	}
 
 	/**
@@ -213,8 +204,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getMonitoringProperty_Value() {
-		return (EAttribute)monitoringPropertyEClass.getEStructuralFeatures().get(1);
+	public EAttribute getSensor_OcciSensorTimestart() {
+		return (EAttribute)sensorEClass.getEStructuralFeatures().get(1);
 	}
 
 	/**
@@ -222,8 +213,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getMonitoringProperty_Id() {
-		return (EAttribute)monitoringPropertyEClass.getEStructuralFeatures().get(2);
+	public EAttribute getSensor_OcciSensorTimestop() {
+		return (EAttribute)sensorEClass.getEStructuralFeatures().get(2);
 	}
 
 	/**
@@ -231,8 +222,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EClass getMonitoringPropertyArray() {
-		return monitoringPropertyArrayEClass;
+	public EAttribute getSensor_OcciSensorPeriod() {
+		return (EAttribute)sensorEClass.getEStructuralFeatures().get(3);
 	}
 
 	/**
@@ -240,8 +231,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EReference getMonitoringPropertyArray_MonitoringpropertyarrayValues() {
-		return (EReference)monitoringPropertyArrayEClass.getEStructuralFeatures().get(0);
+	public EAttribute getSensor_OcciSensorGranularity() {
+		return (EAttribute)sensorEClass.getEStructuralFeatures().get(4);
 	}
 
 	/**
@@ -249,8 +240,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EClass getSensor() {
-		return sensorEClass;
+	public EAttribute getSensor_OcciSensorAccuracy() {
+		return (EAttribute)sensorEClass.getEStructuralFeatures().get(5);
 	}
 
 	/**
@@ -258,8 +249,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getSensor_OcciSensorTimebase() {
-		return (EAttribute)sensorEClass.getEStructuralFeatures().get(0);
+	public EClass getDatagatherer() {
+		return datagathererEClass;
 	}
 
 	/**
@@ -267,8 +258,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getSensor_OcciSensorTimestart() {
-		return (EAttribute)sensorEClass.getEStructuralFeatures().get(1);
+	public EAttribute getDatagatherer_OcciCollectorPeriod() {
+		return (EAttribute)datagathererEClass.getEStructuralFeatures().get(0);
 	}
 
 	/**
@@ -276,8 +267,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getSensor_OcciSensorTimestop() {
-		return (EAttribute)sensorEClass.getEStructuralFeatures().get(2);
+	public EAttribute getDatagatherer_OcciCollectorGranularity() {
+		return (EAttribute)datagathererEClass.getEStructuralFeatures().get(1);
 	}
 
 	/**
@@ -285,8 +276,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getSensor_OcciSensorPeriod() {
-		return (EAttribute)sensorEClass.getEStructuralFeatures().get(3);
+	public EAttribute getDatagatherer_OcciCollectorAccuracy() {
+		return (EAttribute)datagathererEClass.getEStructuralFeatures().get(2);
 	}
 
 	/**
@@ -294,8 +285,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getSensor_OcciSensorGranularity() {
-		return (EAttribute)sensorEClass.getEStructuralFeatures().get(4);
+	public EClass getProcessor() {
+		return processorEClass;
 	}
 
 	/**
@@ -303,8 +294,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getSensor_OcciSensorAccuracy() {
-		return (EAttribute)sensorEClass.getEStructuralFeatures().get(5);
+	public EAttribute getProcessor_GathererAddress() {
+		return (EAttribute)processorEClass.getEStructuralFeatures().get(0);
 	}
 
 	/**
@@ -312,8 +303,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EClass getDatagatherer() {
-		return datagathererEClass;
+	public EClass getPublisher() {
+		return publisherEClass;
 	}
 
 	/**
@@ -321,8 +312,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getDatagatherer_OcciCollectorPeriod() {
-		return (EAttribute)datagathererEClass.getEStructuralFeatures().get(0);
+	public EAttribute getPublisher_PublisherEndpoint() {
+		return (EAttribute)publisherEClass.getEStructuralFeatures().get(0);
 	}
 
 	/**
@@ -330,8 +321,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getDatagatherer_OcciCollectorGranularity() {
-		return (EAttribute)datagathererEClass.getEStructuralFeatures().get(1);
+	public EClass getMonitoringproperty() {
+		return monitoringpropertyEClass;
 	}
 
 	/**
@@ -339,8 +330,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EAttribute getDatagatherer_OcciCollectorAccuracy() {
-		return (EAttribute)datagathererEClass.getEStructuralFeatures().get(2);
+	public EAttribute getMonitoringproperty_MonitoringPropertyName() {
+		return (EAttribute)monitoringpropertyEClass.getEStructuralFeatures().get(0);
 	}
 
 	/**
@@ -348,8 +339,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EClass getProcessor() {
-		return processorEClass;
+	public EAttribute getMonitoringproperty_MonitoringPropertyValue() {
+		return (EAttribute)monitoringpropertyEClass.getEStructuralFeatures().get(1);
 	}
 
 	/**
@@ -357,8 +348,17 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EClass getPublisher() {
-		return publisherEClass;
+	public EOperation getMonitoringproperty__TargetConstraint__DiagnosticChain_Map() {
+		return monitoringpropertyEClass.getEOperations().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getMartpublisher() {
+		return martpublisherEClass;
 	}
 
 	/**
@@ -366,8 +366,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EClass getMonitoringproperties() {
-		return monitoringpropertiesEClass;
+	public EAttribute getMartpublisher_MonitoringPropertyName() {
+		return (EAttribute)martpublisherEClass.getEStructuralFeatures().get(0);
 	}
 
 	/**
@@ -375,8 +375,8 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EReference getMonitoringproperties_MonitoringProperties() {
-		return (EReference)monitoringpropertiesEClass.getEStructuralFeatures().get(0);
+	public EAttribute getMartpublisher_MonitoringPropertyId() {
+		return (EAttribute)martpublisherEClass.getEStructuralFeatures().get(1);
 	}
 
 	/**
@@ -384,8 +384,17 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EOperation getMonitoringproperties__AppliesConstraint__DiagnosticChain_Map() {
-		return monitoringpropertiesEClass.getEOperations().get(0);
+	public EAttribute getMartpublisher_MonitoringPropertyResource() {
+		return (EAttribute)martpublisherEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EOperation getMartpublisher__AppliesConstraint__DiagnosticChain_Map() {
+		return martpublisherEClass.getEOperations().get(0);
 	}
 
 	/**
@@ -443,14 +452,6 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 		isCreated = true;
 
 		// Create classes and their features
-		monitoringPropertyEClass = createEClass(MONITORING_PROPERTY);
-		createEAttribute(monitoringPropertyEClass, MONITORING_PROPERTY__NAME);
-		createEAttribute(monitoringPropertyEClass, MONITORING_PROPERTY__VALUE);
-		createEAttribute(monitoringPropertyEClass, MONITORING_PROPERTY__ID);
-
-		monitoringPropertyArrayEClass = createEClass(MONITORING_PROPERTY_ARRAY);
-		createEReference(monitoringPropertyArrayEClass, MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES);
-
 		sensorEClass = createEClass(SENSOR);
 		createEAttribute(sensorEClass, SENSOR__OCCI_SENSOR_TIMEBASE);
 		createEAttribute(sensorEClass, SENSOR__OCCI_SENSOR_TIMESTART);
@@ -465,12 +466,21 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 		createEAttribute(datagathererEClass, DATAGATHERER__OCCI_COLLECTOR_ACCURACY);
 
 		processorEClass = createEClass(PROCESSOR);
+		createEAttribute(processorEClass, PROCESSOR__GATHERER_ADDRESS);
 
 		publisherEClass = createEClass(PUBLISHER);
+		createEAttribute(publisherEClass, PUBLISHER__PUBLISHER_ENDPOINT);
 
-		monitoringpropertiesEClass = createEClass(MONITORINGPROPERTIES);
-		createEReference(monitoringpropertiesEClass, MONITORINGPROPERTIES__MONITORING_PROPERTIES);
-		createEOperation(monitoringpropertiesEClass, MONITORINGPROPERTIES___APPLIES_CONSTRAINT__DIAGNOSTICCHAIN_MAP);
+		monitoringpropertyEClass = createEClass(MONITORINGPROPERTY);
+		createEAttribute(monitoringpropertyEClass, MONITORINGPROPERTY__MONITORING_PROPERTY_NAME);
+		createEAttribute(monitoringpropertyEClass, MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE);
+		createEOperation(monitoringpropertyEClass, MONITORINGPROPERTY___TARGET_CONSTRAINT__DIAGNOSTICCHAIN_MAP);
+
+		martpublisherEClass = createEClass(MARTPUBLISHER);
+		createEAttribute(martpublisherEClass, MARTPUBLISHER__MONITORING_PROPERTY_NAME);
+		createEAttribute(martpublisherEClass, MARTPUBLISHER__MONITORING_PROPERTY_ID);
+		createEAttribute(martpublisherEClass, MARTPUBLISHER__MONITORING_PROPERTY_RESOURCE);
+		createEOperation(martpublisherEClass, MARTPUBLISHER___APPLIES_CONSTRAINT__DIAGNOSTICCHAIN_MAP);
 
 		// Create data types
 		dateTimeEDataType = createEDataType(DATE_TIME);
@@ -514,17 +524,10 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 		datagathererEClass.getESuperTypes().add(thePlatformPackage.getComponent());
 		processorEClass.getESuperTypes().add(thePlatformPackage.getComponent());
 		publisherEClass.getESuperTypes().add(thePlatformPackage.getComponent());
-		monitoringpropertiesEClass.getESuperTypes().add(theOCCIPackage.getMixinBase());
+		monitoringpropertyEClass.getESuperTypes().add(theOCCIPackage.getLink());
+		martpublisherEClass.getESuperTypes().add(theOCCIPackage.getMixinBase());
 
 		// Initialize classes, features, and operations; add parameters
-		initEClass(monitoringPropertyEClass, MonitoringProperty.class, "MonitoringProperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getMonitoringProperty_Name(), this.getString(), "name", null, 1, 1, MonitoringProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getMonitoringProperty_Value(), this.getString(), "value", null, 1, 1, MonitoringProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getMonitoringProperty_Id(), this.getString(), "Id", null, 1, 1, MonitoringProperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		initEClass(monitoringPropertyArrayEClass, MonitoringPropertyArray.class, "MonitoringPropertyArray", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getMonitoringPropertyArray_MonitoringpropertyarrayValues(), this.getMonitoringProperty(), null, "monitoringpropertyarrayValues", null, 0, -1, MonitoringPropertyArray.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
 		initEClass(sensorEClass, Sensor.class, "Sensor", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEAttribute(getSensor_OcciSensorTimebase(), this.getDateTime(), "occiSensorTimebase", null, 0, 1, Sensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEAttribute(getSensor_OcciSensorTimestart(), this.getSecond(), "occiSensorTimestart", null, 0, 1, Sensor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -539,13 +542,16 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 		initEAttribute(getDatagatherer_OcciCollectorAccuracy(), this.getSecond(), "occiCollectorAccuracy", null, 0, 1, Datagatherer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 		initEClass(processorEClass, Processor.class, "Processor", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getProcessor_GathererAddress(), this.getString(), "gathererAddress", null, 0, 1, Processor.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 		initEClass(publisherEClass, Publisher.class, "Publisher", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getPublisher_PublisherEndpoint(), this.getString(), "publisherEndpoint", null, 1, 1, Publisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-		initEClass(monitoringpropertiesEClass, Monitoringproperties.class, "Monitoringproperties", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getMonitoringproperties_MonitoringProperties(), this.getMonitoringPropertyArray(), null, "monitoringProperties", null, 0, 1, Monitoringproperties.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEClass(monitoringpropertyEClass, Monitoringproperty.class, "Monitoringproperty", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getMonitoringproperty_MonitoringPropertyName(), this.getString(), "monitoringPropertyName", null, 1, 1, Monitoringproperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getMonitoringproperty_MonitoringPropertyValue(), this.getString(), "monitoringPropertyValue", null, 0, 1, Monitoringproperty.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-		EOperation op = initEOperation(getMonitoringproperties__AppliesConstraint__DiagnosticChain_Map(), ecorePackage.getEBoolean(), "appliesConstraint", 0, 1, IS_UNIQUE, IS_ORDERED);
+		EOperation op = initEOperation(getMonitoringproperty__TargetConstraint__DiagnosticChain_Map(), ecorePackage.getEBoolean(), "targetConstraint", 0, 1, IS_UNIQUE, IS_ORDERED);
 		addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED);
 		EGenericType g1 = createEGenericType(ecorePackage.getEMap());
 		EGenericType g2 = createEGenericType(ecorePackage.getEJavaObject());
@@ -554,6 +560,20 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 		g1.getETypeArguments().add(g2);
 		addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED);
 
+		initEClass(martpublisherEClass, Martpublisher.class, "Martpublisher", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getMartpublisher_MonitoringPropertyName(), this.getString(), "monitoringPropertyName", null, 1, 1, Martpublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getMartpublisher_MonitoringPropertyId(), this.getString(), "monitoringPropertyId", null, 0, 1, Martpublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getMartpublisher_MonitoringPropertyResource(), this.getString(), "monitoringPropertyResource", null, 1, 1, Martpublisher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		op = initEOperation(getMartpublisher__AppliesConstraint__DiagnosticChain_Map(), ecorePackage.getEBoolean(), "appliesConstraint", 0, 1, IS_UNIQUE, IS_ORDERED);
+		addEParameter(op, ecorePackage.getEDiagnosticChain(), "diagnostics", 0, 1, IS_UNIQUE, IS_ORDERED);
+		g1 = createEGenericType(ecorePackage.getEMap());
+		g2 = createEGenericType(ecorePackage.getEJavaObject());
+		g1.getETypeArguments().add(g2);
+		g2 = createEGenericType(ecorePackage.getEJavaObject());
+		g1.getETypeArguments().add(g2);
+		addEParameter(op, g1, "context", 0, 1, IS_UNIQUE, IS_ORDERED);
+
 		// Initialize data types
 		initEDataType(dateTimeEDataType, String.class, "DateTime", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
 		initEDataType(secondEDataType, String.class, "Second", IS_SERIALIZABLE, !IS_GENERATED_INSTANCE_CLASS);
@@ -583,7 +603,13 @@ public class MonitoringPackageImpl extends EPackageImpl implements MonitoringPac
 		   new String[] {
 		   });	
 		addAnnotation
-		  (monitoringpropertiesEClass, 
+		  (monitoringpropertyEClass, 
+		   source, 
+		   new String[] {
+			 "constraints", "targetConstraint"
+		   });	
+		addAnnotation
+		  (martpublisherEClass, 
 		   source, 
 		   new String[] {
 			 "constraints", "appliesConstraint"
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPropertyArrayImpl.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPropertyArrayImpl.java
deleted file mode 100644
index d9ee4e7ee1bf34f3e44c170bb7d3b9907c2234d8..0000000000000000000000000000000000000000
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPropertyArrayImpl.java
+++ /dev/null
@@ -1,162 +0,0 @@
-/**
- * Copyright (c) 2015-2017 Obeo, Inria
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 	
- * Contributors:
- * - William Piers <william.piers@obeo.fr>
- * - Philippe Merle <philippe.merle@inria.fr>
- * - Faiez Zalila <faiez.zalila@inria.fr>
- */
-package monitoring.impl;
-
-import java.util.Collection;
-
-import monitoring.MonitoringPackage;
-import monitoring.MonitoringProperty;
-import monitoring.MonitoringPropertyArray;
-
-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.impl.EObjectImpl;
-
-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>Property Array</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * </p>
- * <ul>
- *   <li>{@link monitoring.impl.MonitoringPropertyArrayImpl#getMonitoringpropertyarrayValues <em>Monitoringpropertyarray Values</em>}</li>
- * </ul>
- *
- * @generated
- */
-public class MonitoringPropertyArrayImpl extends EObjectImpl implements MonitoringPropertyArray {
-	/**
-	 * The cached value of the '{@link #getMonitoringpropertyarrayValues() <em>Monitoringpropertyarray Values</em>}' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getMonitoringpropertyarrayValues()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList<MonitoringProperty> monitoringpropertyarrayValues;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected MonitoringPropertyArrayImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	protected EClass eStaticClass() {
-		return MonitoringPackage.Literals.MONITORING_PROPERTY_ARRAY;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList<MonitoringProperty> getMonitoringpropertyarrayValues() {
-		if (monitoringpropertyarrayValues == null) {
-			monitoringpropertyarrayValues = new EObjectContainmentEList<MonitoringProperty>(MonitoringProperty.class, this, MonitoringPackage.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES);
-		}
-		return monitoringpropertyarrayValues;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES:
-				return ((InternalEList<?>)getMonitoringpropertyarrayValues()).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 MonitoringPackage.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES:
-				return getMonitoringpropertyarrayValues();
-		}
-		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 MonitoringPackage.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES:
-				getMonitoringpropertyarrayValues().clear();
-				getMonitoringpropertyarrayValues().addAll((Collection<? extends MonitoringProperty>)newValue);
-				return;
-		}
-		super.eSet(featureID, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void eUnset(int featureID) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES:
-				getMonitoringpropertyarrayValues().clear();
-				return;
-		}
-		super.eUnset(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public boolean eIsSet(int featureID) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORING_PROPERTY_ARRAY__MONITORINGPROPERTYARRAY_VALUES:
-				return monitoringpropertyarrayValues != null && !monitoringpropertyarrayValues.isEmpty();
-		}
-		return super.eIsSet(featureID);
-	}
-
-} //MonitoringPropertyArrayImpl
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPropertyImpl.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPropertyImpl.java
deleted file mode 100644
index 28112c60337e6084e48a51a936e81a035dcaa260..0000000000000000000000000000000000000000
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringPropertyImpl.java
+++ /dev/null
@@ -1,281 +0,0 @@
-/**
- * Copyright (c) 2015-2017 Obeo, Inria
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 	
- * Contributors:
- * - William Piers <william.piers@obeo.fr>
- * - Philippe Merle <philippe.merle@inria.fr>
- * - Faiez Zalila <faiez.zalila@inria.fr>
- */
-package monitoring.impl;
-
-import monitoring.MonitoringPackage;
-import monitoring.MonitoringProperty;
-
-import org.eclipse.emf.common.notify.Notification;
-
-import org.eclipse.emf.ecore.EClass;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Property</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * </p>
- * <ul>
- *   <li>{@link monitoring.impl.MonitoringPropertyImpl#getName <em>Name</em>}</li>
- *   <li>{@link monitoring.impl.MonitoringPropertyImpl#getValue <em>Value</em>}</li>
- *   <li>{@link monitoring.impl.MonitoringPropertyImpl#getId <em>Id</em>}</li>
- * </ul>
- *
- * @generated
- */
-public class MonitoringPropertyImpl extends EObjectImpl implements MonitoringProperty {
-	/**
-	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @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 -->
-	 * <!-- end-user-doc -->
-	 * @see #getName()
-	 * @generated
-	 * @ordered
-	 */
-	protected String name = NAME_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @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 -->
-	 * <!-- end-user-doc -->
-	 * @see #getValue()
-	 * @generated
-	 * @ordered
-	 */
-	protected String value = VALUE_EDEFAULT;
-
-	/**
-	 * The default value of the '{@link #getId() <em>Id</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getId()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String ID_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getId() <em>Id</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getId()
-	 * @generated
-	 * @ordered
-	 */
-	protected String id = ID_EDEFAULT;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected MonitoringPropertyImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	protected EClass eStaticClass() {
-		return MonitoringPackage.Literals.MONITORING_PROPERTY;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getName() {
-		return name;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setName(String newName) {
-		String oldName = name;
-		name = newName;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.MONITORING_PROPERTY__NAME, oldName, name));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getValue() {
-		return value;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setValue(String newValue) {
-		String oldValue = value;
-		value = newValue;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.MONITORING_PROPERTY__VALUE, oldValue, value));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getId() {
-		return id;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setId(String newId) {
-		String oldId = id;
-		id = newId;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.MONITORING_PROPERTY__ID, oldId, id));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Object eGet(int featureID, boolean resolve, boolean coreType) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORING_PROPERTY__NAME:
-				return getName();
-			case MonitoringPackage.MONITORING_PROPERTY__VALUE:
-				return getValue();
-			case MonitoringPackage.MONITORING_PROPERTY__ID:
-				return getId();
-		}
-		return super.eGet(featureID, resolve, coreType);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void eSet(int featureID, Object newValue) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORING_PROPERTY__NAME:
-				setName((String)newValue);
-				return;
-			case MonitoringPackage.MONITORING_PROPERTY__VALUE:
-				setValue((String)newValue);
-				return;
-			case MonitoringPackage.MONITORING_PROPERTY__ID:
-				setId((String)newValue);
-				return;
-		}
-		super.eSet(featureID, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void eUnset(int featureID) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORING_PROPERTY__NAME:
-				setName(NAME_EDEFAULT);
-				return;
-			case MonitoringPackage.MONITORING_PROPERTY__VALUE:
-				setValue(VALUE_EDEFAULT);
-				return;
-			case MonitoringPackage.MONITORING_PROPERTY__ID:
-				setId(ID_EDEFAULT);
-				return;
-		}
-		super.eUnset(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public boolean eIsSet(int featureID) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORING_PROPERTY__NAME:
-				return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
-			case MonitoringPackage.MONITORING_PROPERTY__VALUE:
-				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
-			case MonitoringPackage.MONITORING_PROPERTY__ID:
-				return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id);
-		}
-		return super.eIsSet(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (name: ");
-		result.append(name);
-		result.append(", value: ");
-		result.append(value);
-		result.append(", Id: ");
-		result.append(id);
-		result.append(')');
-		return result.toString();
-	}
-
-} //MonitoringPropertyImpl
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringpropertiesImpl.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringpropertiesImpl.java
deleted file mode 100644
index b7d5274d919ce4669ecfaef6bb9b1cdc04604169..0000000000000000000000000000000000000000
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringpropertiesImpl.java
+++ /dev/null
@@ -1,268 +0,0 @@
-/**
- * Copyright (c) 2015-2017 Obeo, Inria
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * 	
- * Contributors:
- * - William Piers <william.piers@obeo.fr>
- * - Philippe Merle <philippe.merle@inria.fr>
- * - Faiez Zalila <faiez.zalila@inria.fr>
- */
-package monitoring.impl;
-
-import java.lang.reflect.InvocationTargetException;
-
-import java.util.Map;
-
-import monitoring.MonitoringPackage;
-import monitoring.MonitoringPropertyArray;
-import monitoring.MonitoringTables;
-import monitoring.Monitoringproperties;
-
-import org.eclipse.cmf.occi.core.Entity;
-
-import org.eclipse.cmf.occi.core.impl.MixinBaseImpl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.notify.NotificationChain;
-
-import org.eclipse.emf.common.util.DiagnosticChain;
-import org.eclipse.emf.common.util.EList;
-
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.InternalEObject;
-
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-
-import org.eclipse.ocl.pivot.evaluation.Executor;
-
-import org.eclipse.ocl.pivot.ids.IdResolver;
-import org.eclipse.ocl.pivot.ids.TypeId;
-
-import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal;
-
-import org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation;
-import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation;
-
-import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation;
-import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation;
-
-import org.eclipse.ocl.pivot.utilities.ValueUtil;
-
-import org.eclipse.ocl.pivot.values.IntegerValue;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Monitoringproperties</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * </p>
- * <ul>
- *   <li>{@link monitoring.impl.MonitoringpropertiesImpl#getMonitoringProperties <em>Monitoring Properties</em>}</li>
- * </ul>
- *
- * @generated
- */
-public class MonitoringpropertiesImpl extends MixinBaseImpl implements Monitoringproperties {
-	/**
-	 * The cached value of the '{@link #getMonitoringProperties() <em>Monitoring Properties</em>}' containment reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getMonitoringProperties()
-	 * @generated
-	 * @ordered
-	 */
-	protected MonitoringPropertyArray monitoringProperties;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected MonitoringpropertiesImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	protected EClass eStaticClass() {
-		return MonitoringPackage.Literals.MONITORINGPROPERTIES;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public MonitoringPropertyArray getMonitoringProperties() {
-		return monitoringProperties;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain basicSetMonitoringProperties(MonitoringPropertyArray newMonitoringProperties, NotificationChain msgs) {
-		MonitoringPropertyArray oldMonitoringProperties = monitoringProperties;
-		monitoringProperties = newMonitoringProperties;
-		if (eNotificationRequired()) {
-			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES, oldMonitoringProperties, newMonitoringProperties);
-			if (msgs == null) msgs = notification; else msgs.add(notification);
-		}
-		return msgs;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setMonitoringProperties(MonitoringPropertyArray newMonitoringProperties) {
-		if (newMonitoringProperties != monitoringProperties) {
-			NotificationChain msgs = null;
-			if (monitoringProperties != null)
-				msgs = ((InternalEObject)monitoringProperties).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES, null, msgs);
-			if (newMonitoringProperties != null)
-				msgs = ((InternalEObject)newMonitoringProperties).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES, null, msgs);
-			msgs = basicSetMonitoringProperties(newMonitoringProperties, msgs);
-			if (msgs != null) msgs.dispatch();
-		}
-		else if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES, newMonitoringProperties, newMonitoringProperties));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean appliesConstraint(final DiagnosticChain diagnostics, final Map<Object, Object> context) {
-		/**
-		 *
-		 * inv appliesConstraint:
-		 *   let
-		 *     severity : Integer[1] = 'Monitoringproperties::appliesConstraint'.getSeverity()
-		 *   in
-		 *     if severity <= 0
-		 *     then true
-		 *     else
-		 *       let
-		 *         result : occi::Boolean[1] = self.entity.oclIsKindOf(occi::Resource)
-		 *       in
-		 *         'Monitoringproperties::appliesConstraint'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)
-		 *     endif
-		 */
-		final /*@NonInvalid*/ Executor executor = PivotUtilInternal.getExecutor(this);
-		final /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
-		final /*@NonInvalid*/ IntegerValue severity_0 = CGStringGetSeverityOperation.INSTANCE.evaluate(executor, MonitoringTables.STR_Monitoringproperties_c_c_appliesConstraint);
-		final /*@NonInvalid*/ boolean le = OclComparableLessThanEqualOperation.INSTANCE.evaluate(executor, severity_0, MonitoringTables.INT_0).booleanValue();
-		/*@NonInvalid*/ boolean symbol_0;
-		if (le) {
-			symbol_0 = ValueUtil.TRUE_VALUE;
-		}
-		else {
-			final /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_occi_c_c_Resource = idResolver.getClass(MonitoringTables.CLSSid_Resource, null);
-			final /*@NonInvalid*/ Entity entity = this.getEntity();
-			final /*@NonInvalid*/ boolean result = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, entity, TYP_occi_c_c_Resource).booleanValue();
-			final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, MonitoringTables.STR_Monitoringproperties_c_c_appliesConstraint, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, MonitoringTables.INT_0).booleanValue();
-			symbol_0 = logDiagnostic;
-		}
-		return Boolean.TRUE == symbol_0;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES:
-				return basicSetMonitoringProperties(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 MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES:
-				return getMonitoringProperties();
-		}
-		return super.eGet(featureID, resolve, coreType);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void eSet(int featureID, Object newValue) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES:
-				setMonitoringProperties((MonitoringPropertyArray)newValue);
-				return;
-		}
-		super.eSet(featureID, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void eUnset(int featureID) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES:
-				setMonitoringProperties((MonitoringPropertyArray)null);
-				return;
-		}
-		super.eUnset(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public boolean eIsSet(int featureID) {
-		switch (featureID) {
-			case MonitoringPackage.MONITORINGPROPERTIES__MONITORING_PROPERTIES:
-				return monitoringProperties != null;
-		}
-		return super.eIsSet(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	@SuppressWarnings("unchecked")
-	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
-		switch (operationID) {
-			case MonitoringPackage.MONITORINGPROPERTIES___APPLIES_CONSTRAINT__DIAGNOSTICCHAIN_MAP:
-				return appliesConstraint((DiagnosticChain)arguments.get(0), (Map<Object, Object>)arguments.get(1));
-		}
-		return super.eInvoke(operationID, arguments);
-	}
-
-} //MonitoringpropertiesImpl
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringpropertyImpl.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringpropertyImpl.java
new file mode 100644
index 0000000000000000000000000000000000000000..56b753221ba77b471214f658a1c6a1ef614ccccc
--- /dev/null
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/MonitoringpropertyImpl.java
@@ -0,0 +1,303 @@
+/**
+ * Copyright (c) 2015-2017 Obeo, Inria
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ * 	
+ * Contributors:
+ * - William Piers <william.piers@obeo.fr>
+ * - Philippe Merle <philippe.merle@inria.fr>
+ * - Faiez Zalila <faiez.zalila@inria.fr>
+ */
+package monitoring.impl;
+
+import java.lang.reflect.InvocationTargetException;
+
+import java.util.Map;
+
+import monitoring.MonitoringPackage;
+import monitoring.MonitoringTables;
+import monitoring.Monitoringproperty;
+
+import monitoring.util.MonitoringValidator;
+
+import org.eclipse.cmf.occi.core.Resource;
+import org.eclipse.cmf.occi.core.impl.LinkImpl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.DiagnosticChain;
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.ocl.pivot.evaluation.Executor;
+import org.eclipse.ocl.pivot.ids.IdResolver;
+import org.eclipse.ocl.pivot.ids.TypeId;
+import org.eclipse.ocl.pivot.internal.utilities.PivotUtilInternal;
+import org.eclipse.ocl.pivot.library.oclany.OclAnyOclIsKindOfOperation;
+import org.eclipse.ocl.pivot.library.oclany.OclComparableLessThanEqualOperation;
+import org.eclipse.ocl.pivot.library.string.CGStringGetSeverityOperation;
+import org.eclipse.ocl.pivot.library.string.CGStringLogDiagnosticOperation;
+import org.eclipse.ocl.pivot.utilities.ValueUtil;
+import org.eclipse.ocl.pivot.values.IntegerValue;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Monitoringproperty</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link monitoring.impl.MonitoringpropertyImpl#getMonitoringPropertyName <em>Monitoring Property Name</em>}</li>
+ *   <li>{@link monitoring.impl.MonitoringpropertyImpl#getMonitoringPropertyValue <em>Monitoring Property Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class MonitoringpropertyImpl extends LinkImpl implements Monitoringproperty {
+	/**
+	 * The default value of the '{@link #getMonitoringPropertyName() <em>Monitoring Property Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MONITORING_PROPERTY_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMonitoringPropertyName() <em>Monitoring Property Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String monitoringPropertyName = MONITORING_PROPERTY_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMonitoringPropertyValue() <em>Monitoring Property Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MONITORING_PROPERTY_VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMonitoringPropertyValue() <em>Monitoring Property Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMonitoringPropertyValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String monitoringPropertyValue = MONITORING_PROPERTY_VALUE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected MonitoringpropertyImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return MonitoringPackage.Literals.MONITORINGPROPERTY;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMonitoringPropertyName() {
+		return monitoringPropertyName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMonitoringPropertyName(String newMonitoringPropertyName) {
+		String oldMonitoringPropertyName = monitoringPropertyName;
+		monitoringPropertyName = newMonitoringPropertyName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_NAME, oldMonitoringPropertyName, monitoringPropertyName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMonitoringPropertyValue() {
+		return monitoringPropertyValue;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMonitoringPropertyValue(String newMonitoringPropertyValue) {
+		String oldMonitoringPropertyValue = monitoringPropertyValue;
+		monitoringPropertyValue = newMonitoringPropertyValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE, oldMonitoringPropertyValue, monitoringPropertyValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean targetConstraint(final DiagnosticChain diagnostics, final Map<Object, Object> context) {
+		/**
+		 *
+		 * inv targetConstraint:
+		 *   let
+		 *     severity : Integer[1] = 'Monitoringproperty::targetConstraint'.getSeverity()
+		 *   in
+		 *     if severity <= 0
+		 *     then true
+		 *     else
+		 *       let result : occi::Boolean[1] = self.target.oclIsKindOf(Sensor)
+		 *       in
+		 *         'Monitoringproperty::targetConstraint'.logDiagnostic(self, null, diagnostics, context, null, severity, result, 0)
+		 *     endif
+		 */
+		final /*@NonInvalid*/ Executor executor = PivotUtilInternal.getExecutor(this);
+		final /*@NonInvalid*/ IdResolver idResolver = executor.getIdResolver();
+		final /*@NonInvalid*/ IntegerValue severity_0 = CGStringGetSeverityOperation.INSTANCE.evaluate(executor, MonitoringTables.STR_Monitoringproperty_c_c_targetConstraint);
+		final /*@NonInvalid*/ boolean le = OclComparableLessThanEqualOperation.INSTANCE.evaluate(executor, severity_0, MonitoringTables.INT_0).booleanValue();
+		/*@NonInvalid*/ boolean symbol_0;
+		if (le) {
+			symbol_0 = ValueUtil.TRUE_VALUE;
+		}
+		else {
+			final /*@NonInvalid*/ org.eclipse.ocl.pivot.Class TYP_monitoring_c_c_Sensor = idResolver.getClass(MonitoringTables.CLSSid_Sensor, null);
+			final /*@NonInvalid*/ Resource target = this.getTarget();
+			final /*@NonInvalid*/ boolean result = OclAnyOclIsKindOfOperation.INSTANCE.evaluate(executor, target, TYP_monitoring_c_c_Sensor).booleanValue();
+			final /*@NonInvalid*/ boolean logDiagnostic = CGStringLogDiagnosticOperation.INSTANCE.evaluate(executor, TypeId.BOOLEAN, MonitoringTables.STR_Monitoringproperty_c_c_targetConstraint, this, (Object)null, diagnostics, context, (Object)null, severity_0, result, MonitoringTables.INT_0).booleanValue();
+			symbol_0 = logDiagnostic;
+		}
+		return Boolean.TRUE == symbol_0;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_NAME:
+				return getMonitoringPropertyName();
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE:
+				return getMonitoringPropertyValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_NAME:
+				setMonitoringPropertyName((String)newValue);
+				return;
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE:
+				setMonitoringPropertyValue((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_NAME:
+				setMonitoringPropertyName(MONITORING_PROPERTY_NAME_EDEFAULT);
+				return;
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE:
+				setMonitoringPropertyValue(MONITORING_PROPERTY_VALUE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_NAME:
+				return MONITORING_PROPERTY_NAME_EDEFAULT == null ? monitoringPropertyName != null : !MONITORING_PROPERTY_NAME_EDEFAULT.equals(monitoringPropertyName);
+			case MonitoringPackage.MONITORINGPROPERTY__MONITORING_PROPERTY_VALUE:
+				return MONITORING_PROPERTY_VALUE_EDEFAULT == null ? monitoringPropertyValue != null : !MONITORING_PROPERTY_VALUE_EDEFAULT.equals(monitoringPropertyValue);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	@SuppressWarnings("unchecked")
+	public Object eInvoke(int operationID, EList<?> arguments) throws InvocationTargetException {
+		switch (operationID) {
+			case MonitoringPackage.MONITORINGPROPERTY___TARGET_CONSTRAINT__DIAGNOSTICCHAIN_MAP:
+				return targetConstraint((DiagnosticChain)arguments.get(0), (Map<Object, Object>)arguments.get(1));
+		}
+		return super.eInvoke(operationID, arguments);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (monitoringPropertyName: ");
+		result.append(monitoringPropertyName);
+		result.append(", monitoringPropertyValue: ");
+		result.append(monitoringPropertyValue);
+		result.append(')');
+		return result.toString();
+	}
+
+} //MonitoringpropertyImpl
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/ProcessorImpl.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/ProcessorImpl.java
index e87c20cb9f497a1ae5557a8abd0c6356e189c357..8f0cd631c50e31e5ac7f12776f80dd83685fda2f 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/ProcessorImpl.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/ProcessorImpl.java
@@ -15,18 +15,48 @@ package monitoring.impl;
 import monitoring.MonitoringPackage;
 import monitoring.Processor;
 
+import org.eclipse.emf.common.notify.Notification;
+
 import org.eclipse.emf.ecore.EClass;
 
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
 import org.modmacao.occi.platform.impl.ComponentImpl;
 
 /**
  * <!-- begin-user-doc -->
  * An implementation of the model object '<em><b>Processor</b></em>'.
  * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link monitoring.impl.ProcessorImpl#getGathererAddress <em>Gatherer Address</em>}</li>
+ * </ul>
  *
  * @generated
  */
 public class ProcessorImpl extends ComponentImpl implements Processor {
+	/**
+	 * The default value of the '{@link #getGathererAddress() <em>Gatherer Address</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGathererAddress()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String GATHERER_ADDRESS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getGathererAddress() <em>Gatherer Address</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getGathererAddress()
+	 * @generated
+	 * @ordered
+	 */
+	protected String gathererAddress = GATHERER_ADDRESS_EDEFAULT;
+
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -46,4 +76,99 @@ public class ProcessorImpl extends ComponentImpl implements Processor {
 		return MonitoringPackage.Literals.PROCESSOR;
 	}
 
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getGathererAddress() {
+		return gathererAddress;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setGathererAddress(String newGathererAddress) {
+		String oldGathererAddress = gathererAddress;
+		gathererAddress = newGathererAddress;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.PROCESSOR__GATHERER_ADDRESS, oldGathererAddress, gathererAddress));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case MonitoringPackage.PROCESSOR__GATHERER_ADDRESS:
+				return getGathererAddress();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case MonitoringPackage.PROCESSOR__GATHERER_ADDRESS:
+				setGathererAddress((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case MonitoringPackage.PROCESSOR__GATHERER_ADDRESS:
+				setGathererAddress(GATHERER_ADDRESS_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case MonitoringPackage.PROCESSOR__GATHERER_ADDRESS:
+				return GATHERER_ADDRESS_EDEFAULT == null ? gathererAddress != null : !GATHERER_ADDRESS_EDEFAULT.equals(gathererAddress);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (gathererAddress: ");
+		result.append(gathererAddress);
+		result.append(')');
+		return result.toString();
+	}
+
 } //ProcessorImpl
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/PublisherImpl.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/PublisherImpl.java
index 9f727ea6f0764c04a2ad705465ed9ca7bf8c488e..68bd44ad80295e5f00fb5bb6feaa4b340d69609f 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/PublisherImpl.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/impl/PublisherImpl.java
@@ -15,18 +15,48 @@ package monitoring.impl;
 import monitoring.MonitoringPackage;
 import monitoring.Publisher;
 
+import org.eclipse.emf.common.notify.Notification;
+
 import org.eclipse.emf.ecore.EClass;
 
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
 import org.modmacao.occi.platform.impl.ComponentImpl;
 
 /**
  * <!-- begin-user-doc -->
  * An implementation of the model object '<em><b>Publisher</b></em>'.
  * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link monitoring.impl.PublisherImpl#getPublisherEndpoint <em>Publisher Endpoint</em>}</li>
+ * </ul>
  *
  * @generated
  */
 public class PublisherImpl extends ComponentImpl implements Publisher {
+	/**
+	 * The default value of the '{@link #getPublisherEndpoint() <em>Publisher Endpoint</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPublisherEndpoint()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PUBLISHER_ENDPOINT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getPublisherEndpoint() <em>Publisher Endpoint</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPublisherEndpoint()
+	 * @generated
+	 * @ordered
+	 */
+	protected String publisherEndpoint = PUBLISHER_ENDPOINT_EDEFAULT;
+
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -46,4 +76,99 @@ public class PublisherImpl extends ComponentImpl implements Publisher {
 		return MonitoringPackage.Literals.PUBLISHER;
 	}
 
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getPublisherEndpoint() {
+		return publisherEndpoint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setPublisherEndpoint(String newPublisherEndpoint) {
+		String oldPublisherEndpoint = publisherEndpoint;
+		publisherEndpoint = newPublisherEndpoint;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, MonitoringPackage.PUBLISHER__PUBLISHER_ENDPOINT, oldPublisherEndpoint, publisherEndpoint));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case MonitoringPackage.PUBLISHER__PUBLISHER_ENDPOINT:
+				return getPublisherEndpoint();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case MonitoringPackage.PUBLISHER__PUBLISHER_ENDPOINT:
+				setPublisherEndpoint((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case MonitoringPackage.PUBLISHER__PUBLISHER_ENDPOINT:
+				setPublisherEndpoint(PUBLISHER_ENDPOINT_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case MonitoringPackage.PUBLISHER__PUBLISHER_ENDPOINT:
+				return PUBLISHER_ENDPOINT_EDEFAULT == null ? publisherEndpoint != null : !PUBLISHER_ENDPOINT_EDEFAULT.equals(publisherEndpoint);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuffer result = new StringBuffer(super.toString());
+		result.append(" (publisherEndpoint: ");
+		result.append(publisherEndpoint);
+		result.append(')');
+		return result.toString();
+	}
+
 } //PublisherImpl
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringAdapterFactory.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringAdapterFactory.java
index a63816dba1d1903e56804fd893610996ded7ed9a..04ee624b2cc16f41124e9782dc6fdf9fb1bfda1f 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringAdapterFactory.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringAdapterFactory.java
@@ -15,6 +15,7 @@ package monitoring.util;
 import monitoring.*;
 
 import org.eclipse.cmf.occi.core.Entity;
+import org.eclipse.cmf.occi.core.Link;
 import org.eclipse.cmf.occi.core.MixinBase;
 import org.eclipse.cmf.occi.core.Resource;
 
@@ -84,14 +85,6 @@ public class MonitoringAdapterFactory extends AdapterFactoryImpl {
 	 */
 	protected MonitoringSwitch<Adapter> modelSwitch =
 		new MonitoringSwitch<Adapter>() {
-			@Override
-			public Adapter caseMonitoringProperty(MonitoringProperty object) {
-				return createMonitoringPropertyAdapter();
-			}
-			@Override
-			public Adapter caseMonitoringPropertyArray(MonitoringPropertyArray object) {
-				return createMonitoringPropertyArrayAdapter();
-			}
 			@Override
 			public Adapter caseSensor(Sensor object) {
 				return createSensorAdapter();
@@ -109,8 +102,12 @@ public class MonitoringAdapterFactory extends AdapterFactoryImpl {
 				return createPublisherAdapter();
 			}
 			@Override
-			public Adapter caseMonitoringproperties(Monitoringproperties object) {
-				return createMonitoringpropertiesAdapter();
+			public Adapter caseMonitoringproperty(Monitoringproperty object) {
+				return createMonitoringpropertyAdapter();
+			}
+			@Override
+			public Adapter caseMartpublisher(Martpublisher object) {
+				return createMartpublisherAdapter();
 			}
 			@Override
 			public Adapter caseEntity(Entity object) {
@@ -129,6 +126,10 @@ public class MonitoringAdapterFactory extends AdapterFactoryImpl {
 				return createComponentAdapter();
 			}
 			@Override
+			public Adapter caseLink(Link object) {
+				return createLinkAdapter();
+			}
+			@Override
 			public Adapter caseMixinBase(MixinBase object) {
 				return createMixinBaseAdapter();
 			}
@@ -152,34 +153,6 @@ public class MonitoringAdapterFactory extends AdapterFactoryImpl {
 	}
 
 
-	/**
-	 * Creates a new adapter for an object of class '{@link monitoring.MonitoringProperty <em>Property</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 monitoring.MonitoringProperty
-	 * @generated
-	 */
-	public Adapter createMonitoringPropertyAdapter() {
-		return null;
-	}
-
-	/**
-	 * Creates a new adapter for an object of class '{@link monitoring.MonitoringPropertyArray <em>Property Array</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 monitoring.MonitoringPropertyArray
-	 * @generated
-	 */
-	public Adapter createMonitoringPropertyArrayAdapter() {
-		return null;
-	}
-
 	/**
 	 * Creates a new adapter for an object of class '{@link monitoring.Sensor <em>Sensor</em>}'.
 	 * <!-- begin-user-doc -->
@@ -237,16 +210,30 @@ public class MonitoringAdapterFactory extends AdapterFactoryImpl {
 	}
 
 	/**
-	 * Creates a new adapter for an object of class '{@link monitoring.Monitoringproperties <em>Monitoringproperties</em>}'.
+	 * Creates a new adapter for an object of class '{@link monitoring.Monitoringproperty <em>Monitoringproperty</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 monitoring.Monitoringproperty
+	 * @generated
+	 */
+	public Adapter createMonitoringpropertyAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link monitoring.Martpublisher <em>Martpublisher</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 monitoring.Monitoringproperties
+	 * @see monitoring.Martpublisher
 	 * @generated
 	 */
-	public Adapter createMonitoringpropertiesAdapter() {
+	public Adapter createMartpublisherAdapter() {
 		return null;
 	}
 
@@ -306,6 +293,20 @@ public class MonitoringAdapterFactory extends AdapterFactoryImpl {
 		return null;
 	}
 
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.cmf.occi.core.Link <em>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.cmf.occi.core.Link
+	 * @generated
+	 */
+	public Adapter createLinkAdapter() {
+		return null;
+	}
+
 	/**
 	 * Creates a new adapter for an object of class '{@link org.eclipse.cmf.occi.core.MixinBase <em>Mixin Base</em>}'.
 	 * <!-- begin-user-doc -->
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringSwitch.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringSwitch.java
index 5771b402ba48600343ee677b328941871a7b8cc9..701da7e3b7837635b7e436ec1b3fc4e4ed930a07 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringSwitch.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringSwitch.java
@@ -15,6 +15,7 @@ package monitoring.util;
 import monitoring.*;
 
 import org.eclipse.cmf.occi.core.Entity;
+import org.eclipse.cmf.occi.core.Link;
 import org.eclipse.cmf.occi.core.MixinBase;
 import org.eclipse.cmf.occi.core.Resource;
 
@@ -83,18 +84,6 @@ public class MonitoringSwitch<T> extends Switch<T> {
 	@Override
 	protected T doSwitch(int classifierID, EObject theEObject) {
 		switch (classifierID) {
-			case MonitoringPackage.MONITORING_PROPERTY: {
-				MonitoringProperty monitoringProperty = (MonitoringProperty)theEObject;
-				T result = caseMonitoringProperty(monitoringProperty);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
-			case MonitoringPackage.MONITORING_PROPERTY_ARRAY: {
-				MonitoringPropertyArray monitoringPropertyArray = (MonitoringPropertyArray)theEObject;
-				T result = caseMonitoringPropertyArray(monitoringPropertyArray);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
 			case MonitoringPackage.SENSOR: {
 				Sensor sensor = (Sensor)theEObject;
 				T result = caseSensor(sensor);
@@ -131,10 +120,18 @@ public class MonitoringSwitch<T> extends Switch<T> {
 				if (result == null) result = defaultCase(theEObject);
 				return result;
 			}
-			case MonitoringPackage.MONITORINGPROPERTIES: {
-				Monitoringproperties monitoringproperties = (Monitoringproperties)theEObject;
-				T result = caseMonitoringproperties(monitoringproperties);
-				if (result == null) result = caseMixinBase(monitoringproperties);
+			case MonitoringPackage.MONITORINGPROPERTY: {
+				Monitoringproperty monitoringproperty = (Monitoringproperty)theEObject;
+				T result = caseMonitoringproperty(monitoringproperty);
+				if (result == null) result = caseLink(monitoringproperty);
+				if (result == null) result = caseEntity(monitoringproperty);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case MonitoringPackage.MARTPUBLISHER: {
+				Martpublisher martpublisher = (Martpublisher)theEObject;
+				T result = caseMartpublisher(martpublisher);
+				if (result == null) result = caseMixinBase(martpublisher);
 				if (result == null) result = defaultCase(theEObject);
 				return result;
 			}
@@ -142,36 +139,6 @@ public class MonitoringSwitch<T> extends Switch<T> {
 		}
 	}
 
-	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Property</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>Property</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public T caseMonitoringProperty(MonitoringProperty object) {
-		return null;
-	}
-
-	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Property Array</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>Property Array</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public T caseMonitoringPropertyArray(MonitoringPropertyArray object) {
-		return null;
-	}
-
 	/**
 	 * Returns the result of interpreting the object as an instance of '<em>Sensor</em>'.
 	 * <!-- begin-user-doc -->
@@ -233,17 +200,32 @@ public class MonitoringSwitch<T> extends Switch<T> {
 	}
 
 	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Monitoringproperties</em>'.
+	 * Returns the result of interpreting the object as an instance of '<em>Monitoringproperty</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>Monitoringproperty</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseMonitoringproperty(Monitoringproperty object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Martpublisher</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>Monitoringproperties</em>'.
+	 * @return the result of interpreting the object as an instance of '<em>Martpublisher</em>'.
 	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
 	 * @generated
 	 */
-	public T caseMonitoringproperties(Monitoringproperties object) {
+	public T caseMartpublisher(Martpublisher object) {
 		return null;
 	}
 
@@ -307,6 +289,21 @@ public class MonitoringSwitch<T> extends Switch<T> {
 		return null;
 	}
 
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>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>Link</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseLink(Link object) {
+		return null;
+	}
+
 	/**
 	 * Returns the result of interpreting the object as an instance of '<em>Mixin Base</em>'.
 	 * <!-- begin-user-doc -->
diff --git a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringValidator.java b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringValidator.java
index 0fb63c9475cf74b510dd6fa44d0507dfd6995c83..afaf9369335eb7418464901c9cb28cb2855f6b1a 100644
--- a/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringValidator.java
+++ b/de.ugoe.cs.rwm.mocci.model/src-gen/monitoring/util/MonitoringValidator.java
@@ -21,6 +21,9 @@ import org.eclipse.cmf.occi.core.util.OCCIValidator;
 import org.eclipse.emf.common.util.DiagnosticChain;
 import org.eclipse.emf.common.util.ResourceLocator;
 
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EOperation;
 import org.eclipse.emf.ecore.EPackage;
 
 import org.eclipse.emf.ecore.util.EObjectValidator;
@@ -54,12 +57,20 @@ public class MonitoringValidator extends EObjectValidator {
 	public static final String DIAGNOSTIC_SOURCE = "monitoring";
 
 	/**
-	 * The {@link org.eclipse.emf.common.util.Diagnostic#getCode() code} for constraint 'Applies Constraint' of 'Monitoringproperties'.
+	 * The {@link org.eclipse.emf.common.util.Diagnostic#getCode() code} for constraint 'Target Constraint' of 'Monitoringproperty'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public static final int MONITORINGPROPERTIES__APPLIES_CONSTRAINT = 1;
+	public static final int MONITORINGPROPERTY__TARGET_CONSTRAINT = 1;
+
+	/**
+	 * The {@link org.eclipse.emf.common.util.Diagnostic#getCode() code} for constraint 'Applies Constraint' of 'Martpublisher'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final int MARTPUBLISHER__APPLIES_CONSTRAINT = 2;
 
 	/**
 	 * A constant with a fixed name that can be used as the base value for additional hand written constants.
@@ -67,7 +78,7 @@ public class MonitoringValidator extends EObjectValidator {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	private static final int GENERATED_DIAGNOSTIC_CODE_COUNT = 1;
+	private static final int GENERATED_DIAGNOSTIC_CODE_COUNT = 2;
 
 	/**
 	 * A constant with a fixed name that can be used as the base value for additional hand written constants in a derived class.
@@ -116,10 +127,6 @@ public class MonitoringValidator extends EObjectValidator {
 	@Override
 	protected boolean validate(int classifierID, Object value, DiagnosticChain diagnostics, Map<Object, Object> context) {
 		switch (classifierID) {
-			case MonitoringPackage.MONITORING_PROPERTY:
-				return validateMonitoringProperty((MonitoringProperty)value, diagnostics, context);
-			case MonitoringPackage.MONITORING_PROPERTY_ARRAY:
-				return validateMonitoringPropertyArray((MonitoringPropertyArray)value, diagnostics, context);
 			case MonitoringPackage.SENSOR:
 				return validateSensor((Sensor)value, diagnostics, context);
 			case MonitoringPackage.DATAGATHERER:
@@ -128,8 +135,10 @@ public class MonitoringValidator extends EObjectValidator {
 				return validateProcessor((Processor)value, diagnostics, context);
 			case MonitoringPackage.PUBLISHER:
 				return validatePublisher((Publisher)value, diagnostics, context);
-			case MonitoringPackage.MONITORINGPROPERTIES:
-				return validateMonitoringproperties((Monitoringproperties)value, diagnostics, context);
+			case MonitoringPackage.MONITORINGPROPERTY:
+				return validateMonitoringproperty((Monitoringproperty)value, diagnostics, context);
+			case MonitoringPackage.MARTPUBLISHER:
+				return validateMartpublisher((Martpublisher)value, diagnostics, context);
 			case MonitoringPackage.DATE_TIME:
 				return validateDateTime((String)value, diagnostics, context);
 			case MonitoringPackage.SECOND:
@@ -141,24 +150,6 @@ public class MonitoringValidator extends EObjectValidator {
 		}
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean validateMonitoringProperty(MonitoringProperty monitoringProperty, DiagnosticChain diagnostics, Map<Object, Object> context) {
-		return validate_EveryDefaultConstraint(monitoringProperty, diagnostics, context);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public boolean validateMonitoringPropertyArray(MonitoringPropertyArray monitoringPropertyArray, DiagnosticChain diagnostics, Map<Object, Object> context) {
-		return validate_EveryDefaultConstraint(monitoringPropertyArray, diagnostics, context);
-	}
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -256,28 +247,64 @@ public class MonitoringValidator extends EObjectValidator {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public boolean validateMonitoringproperties(Monitoringproperties monitoringproperties, DiagnosticChain diagnostics, Map<Object, Object> context) {
-		if (!validate_NoCircularContainment(monitoringproperties, diagnostics, context)) return false;
-		boolean result = validate_EveryMultiplicityConforms(monitoringproperties, diagnostics, context);
-		if (result || diagnostics != null) result &= validate_EveryDataValueConforms(monitoringproperties, diagnostics, context);
-		if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(monitoringproperties, diagnostics, context);
-		if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(monitoringproperties, diagnostics, context);
-		if (result || diagnostics != null) result &= validate_EveryProxyResolves(monitoringproperties, diagnostics, context);
-		if (result || diagnostics != null) result &= validate_UniqueID(monitoringproperties, diagnostics, context);
-		if (result || diagnostics != null) result &= validate_EveryKeyUnique(monitoringproperties, diagnostics, context);
-		if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(monitoringproperties, diagnostics, context);
-		if (result || diagnostics != null) result &= validateMonitoringproperties_appliesConstraint(monitoringproperties, diagnostics, context);
+	public boolean validateMonitoringproperty(Monitoringproperty monitoringproperty, DiagnosticChain diagnostics, Map<Object, Object> context) {
+		if (!validate_NoCircularContainment(monitoringproperty, diagnostics, context)) return false;
+		boolean result = validate_EveryMultiplicityConforms(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryDataValueConforms(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryProxyResolves(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_UniqueID(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryKeyUnique(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= occiValidator.validateEntity_IdUnique(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= occiValidator.validateEntity_AttributesNameUnique(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= occiValidator.validateEntity_KindCompatibleWithOneAppliesOfEachMixin(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= occiValidator.validateEntity_DifferentMixins(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= occiValidator.validateLink_LinkKindIsInParent(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= occiValidator.validateLink_sourceReferenceInvariant(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= occiValidator.validateLink_targetReferenceInvariant(monitoringproperty, diagnostics, context);
+		if (result || diagnostics != null) result &= validateMonitoringproperty_targetConstraint(monitoringproperty, diagnostics, context);
+		return result;
+	}
+
+	/**
+	 * Validates the targetConstraint constraint of '<em>Monitoringproperty</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean validateMonitoringproperty_targetConstraint(Monitoringproperty monitoringproperty, DiagnosticChain diagnostics, Map<Object, Object> context) {
+		return monitoringproperty.targetConstraint(diagnostics, context);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean validateMartpublisher(Martpublisher martpublisher, DiagnosticChain diagnostics, Map<Object, Object> context) {
+		if (!validate_NoCircularContainment(martpublisher, diagnostics, context)) return false;
+		boolean result = validate_EveryMultiplicityConforms(martpublisher, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryDataValueConforms(martpublisher, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryReferenceIsContained(martpublisher, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryBidirectionalReferenceIsPaired(martpublisher, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryProxyResolves(martpublisher, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_UniqueID(martpublisher, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryKeyUnique(martpublisher, diagnostics, context);
+		if (result || diagnostics != null) result &= validate_EveryMapEntryUnique(martpublisher, diagnostics, context);
+		if (result || diagnostics != null) result &= validateMartpublisher_appliesConstraint(martpublisher, diagnostics, context);
 		return result;
 	}
 
 	/**
-	 * Validates the appliesConstraint constraint of '<em>Monitoringproperties</em>'.
+	 * Validates the appliesConstraint constraint of '<em>Martpublisher</em>'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public boolean validateMonitoringproperties_appliesConstraint(Monitoringproperties monitoringproperties, DiagnosticChain diagnostics, Map<Object, Object> context) {
-		return monitoringproperties.appliesConstraint(diagnostics, context);
+	public boolean validateMartpublisher_appliesConstraint(Martpublisher martpublisher, DiagnosticChain diagnostics, Map<Object, Object> context) {
+		return martpublisher.appliesConstraint(diagnostics, context);
 	}
 
 	/**
diff --git a/src/test/java/de/ugoe/cs/rwm/mocci/CreateElementsTest.java b/src/test/java/de/ugoe/cs/rwm/mocci/CreateElementsTest.java
index 17a473d41c9d401d37e5c458b204f3c444c94454..3b95d7f34edf07e5e2295f53c7a3898ec226b9f1 100644
--- a/src/test/java/de/ugoe/cs/rwm/mocci/CreateElementsTest.java
+++ b/src/test/java/de/ugoe/cs/rwm/mocci/CreateElementsTest.java
@@ -39,9 +39,6 @@ import de.ugoe.cs.rwm.tocci.TransformatorFactory;
 import de.ugoe.cs.rwm.tocci.occi2openstack.OCCI2OPENSTACKTransformator;
 import monitoring.MonitoringFactory;
 import monitoring.MonitoringPackage;
-import monitoring.MonitoringProperty;
-import monitoring.MonitoringPropertyArray;
-import monitoring.Monitoringproperties;
 import monitoring.Sensor;
 import monitoring.impl.MonitoringFactoryImpl;
 
@@ -65,29 +62,7 @@ public class CreateElementsTest {
 		//Resources
 		Sensor sensor = mFact.createSensor();
 		Compute comp = iFact.createCompute();
-		//MixinBase
-		Monitoringproperties monProps = mFact.createMonitoringproperties();
-		MonitoringPropertyArray monArr = mFact.createMonitoringPropertyArray();
-		MonitoringProperty monProp = mFact.createMonitoringProperty();
-		monProp.setName("CPU");
-		monProp.setValue("Critical");
-		monProp.setId("123452");
-		monArr.getMonitoringpropertyarrayValues().add(monProp);
-		monProps.setMonitoringProperties(monArr);
-		
-		comp.getParts().add(monProps);
-		
-		config.getResources().add(sensor);
-		config.getResources().add(comp);
-		System.out.println(config);
-		for(org.eclipse.cmf.occi.core.Resource res : config.getResources()) {
-			System.out.println(res);
-			for(MixinBase mixBase: res.getParts()) {
-				System.out.println(mixBase);
-				if(mixBase instanceof Monitoringproperties) {
-					System.out.println(((Monitoringproperties) mixBase).getMonitoringProperties().getMonitoringpropertyarrayValues());
-				}
-			}
-		}
 	}
+
 }
+ 
\ No newline at end of file
diff --git a/src/test/java/de/ugoe/cs/rwm/mocci/DeployHadoopMonitoringTest.java b/src/test/java/de/ugoe/cs/rwm/mocci/DeployHadoopMonitoringTest.java
index 00e439723e83e951e53db7faa4c92da4f6aececd..a2d65ec618a15d0186bc251592e14b32aee4e84a 100644
--- a/src/test/java/de/ugoe/cs/rwm/mocci/DeployHadoopMonitoringTest.java
+++ b/src/test/java/de/ugoe/cs/rwm/mocci/DeployHadoopMonitoringTest.java
@@ -60,7 +60,7 @@ public class DeployHadoopMonitoringTest {
 		CachedResourceSet.getCache().clear();
 		System.out.println(OcciRegistry.getInstance().getRegisteredExtensions());
 		//Logger.getRootLogger().setLevel(Level.FATAL);
-		Path occiPath = Paths.get(ModelUtility.getPathToResource("occi/hadoopClusterNewExt.occic"));
+		Path occiPath = Paths.get(ModelUtility.getPathToResource("occi/hadoopClusterNewExtWithMem.occic"));
 
 		Transformator trans = TransformatorFactory.getTransformator("OCCI2OCCI");
 		trans.transform(occiPath, occiPath);
diff --git a/src/test/java/de/ugoe/cs/rwm/mocci/EmptyTest.java b/src/test/java/de/ugoe/cs/rwm/mocci/EmptyTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..0f9bceab19e8807fc18464c89ebe037d425f953e
--- /dev/null
+++ b/src/test/java/de/ugoe/cs/rwm/mocci/EmptyTest.java
@@ -0,0 +1,58 @@
+package de.ugoe.cs.rwm.mocci;
+
+import static org.junit.Assert.assertTrue;
+
+import java.nio.file.Path;
+import java.nio.file.Paths;
+
+import org.apache.log4j.Level;
+import org.apache.log4j.Logger;
+import org.eclipse.cmf.occi.core.Configuration;
+import org.eclipse.cmf.occi.core.Link;
+import org.eclipse.cmf.occi.core.Mixin;
+import org.eclipse.cmf.occi.core.OCCIPackage;
+import org.eclipse.cmf.occi.core.util.OcciRegistry;
+import org.eclipse.emf.common.util.EList;
+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.util.EcoreUtil;
+import org.eclipse.epsilon.emc.emf.CachedResourceSet;
+import org.junit.Before;
+import org.junit.BeforeClass;
+import org.junit.Ignore;
+import org.junit.Test;
+
+import de.ugoe.cs.rwm.docci.MartDeployer;
+import de.ugoe.cs.rwm.docci.ModelUtility;
+import de.ugoe.cs.rwm.mocci.TestUtility;
+import de.ugoe.cs.rwm.docci.connector.Connector;
+import de.ugoe.cs.rwm.docci.connector.LocalhostConnector;
+import de.ugoe.cs.rwm.tocci.Transformator;
+import de.ugoe.cs.rwm.tocci.TransformatorFactory;
+import de.ugoe.cs.rwm.tocci.occi2openstack.OCCI2OPENSTACKTransformator;
+import monitoring.MonitoringPackage;
+
+public class EmptyTest {
+	String manNWid = "urn:uuid:29d78078-fb4c-47aa-a9af-b8aaf3339590";
+	String manNWRuntimeId = "75a4639e-9ce7-4058-b859-8a711b0e2e7b";
+	String sshKey = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova";
+	String userData = "I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj";
+
+	
+	@BeforeClass
+	public static void OCCIRegistrySetup() {		
+		TestUtility.loggerSetup();
+		TestUtility.extensionRegistrySetup();
+	}
+ 
+	@Test
+	public void deprovisionEverything() {
+		CachedResourceSet.getCache().clear();
+		Path occiPath = Paths.get(ModelUtility.getPathToResource("occi/Empty.occic"));
+		Connector conn = new LocalhostConnector("localhost", 8080, "ubuntu");
+		MartDeployer deployer = new MartDeployer(conn);
+		deployer.deploy(occiPath);
+		assertTrue(TestUtility.equalsRuntime(occiPath, conn));
+	}
+}
diff --git a/src/test/java/de/ugoe/cs/rwm/mocci/ResolveProxyTest.java b/src/test/java/de/ugoe/cs/rwm/mocci/ResolveProxyTest.java
index 121f25f60c7d5fcb5e99960ff6869fddfd3aa520..d628c0df6f838b1d18f80fecfe9e34d645b27b93 100644
--- a/src/test/java/de/ugoe/cs/rwm/mocci/ResolveProxyTest.java
+++ b/src/test/java/de/ugoe/cs/rwm/mocci/ResolveProxyTest.java
@@ -43,7 +43,7 @@ public class ResolveProxyTest {
 	
 	@Test
 	public void resolveProxies() {
-		Path newOCCI = Paths.get(de.ugoe.cs.rwm.docci.ModelUtility.getPathToResource("occi/hadoopClusterNewExt.occic"));
+		Path newOCCI = Paths.get(de.ugoe.cs.rwm.docci.ModelUtility.getPathToResource("occi/hadoopClusterNewExt2.occic"));
 		
 		Resource ress = de.ugoe.cs.rwm.docci.ModelUtility.loadOCCIintoEMFResource(newOCCI);
 		ResourceSet resSet = ress.getResourceSet();
diff --git a/src/test/java/de/ugoe/cs/rwm/mocci/TestUtility.java b/src/test/java/de/ugoe/cs/rwm/mocci/TestUtility.java
index 2b749cf43073ce30d67e92feb38bb67c524b7579..ae582dca7818539cc75310675a65952ce03d96e4 100644
--- a/src/test/java/de/ugoe/cs/rwm/mocci/TestUtility.java
+++ b/src/test/java/de/ugoe/cs/rwm/mocci/TestUtility.java
@@ -26,7 +26,6 @@ import de.ugoe.cs.rwm.docci.deprovisioner.Deprovisioner;
 import de.ugoe.cs.rwm.docci.executor.Executor;
 import de.ugoe.cs.rwm.docci.extractor.Extractor;
 import de.ugoe.cs.rwm.docci.provisioner.Provisioner;
-import de.ugoe.cs.rwm.docci.updater.ElementAdapter;
 import de.ugoe.cs.rwm.tocci.Transformator;
 import modmacao.ModmacaoPackage;
 import monitoring.MonitoringPackage;
diff --git a/src/test/java/de/ugoe/cs/rwm/mocci/live/DeployHadoopMonitoringTestLive.java b/src/test/java/de/ugoe/cs/rwm/mocci/live/DeployHadoopMonitoringTestLive.java
index bb8b7a613ae8759f14b33bc3a7d4f10ebd6bc5ee..977f3ab571e41da73ff29a48a0388265ec4db306 100644
--- a/src/test/java/de/ugoe/cs/rwm/mocci/live/DeployHadoopMonitoringTestLive.java
+++ b/src/test/java/de/ugoe/cs/rwm/mocci/live/DeployHadoopMonitoringTestLive.java
@@ -47,7 +47,6 @@ public class DeployHadoopMonitoringTestLive {
 		TestUtility.extensionRegistrySetup();
 	}
  
-	@Before
 	public void deprovisionEverything() {
 		CachedResourceSet.getCache().clear();
 		Path occiPath = Paths.get(ModelUtility.getPathToResource("occi/Empty.occic"));
@@ -59,7 +58,7 @@ public class DeployHadoopMonitoringTestLive {
 	@Test
 	public void deployHadoopWithNewMonitoring() {
 		CachedResourceSet.getCache().clear();
-		Path occiPath = Paths.get(ModelUtility.getPathToResource("occi/hadoopClusterNewExt.occic"));
+		Path occiPath = Paths.get(ModelUtility.getPathToResource("occi/hadoopClusterNewExtWithMem.occic"));
 
 		Transformator trans = TransformatorFactory.getTransformator("OCCI2OCCI");
 		trans.transform(occiPath, occiPath);
diff --git a/src/test/resources/martserver-plugins/de.ugoe.cs.rwm.mocci.connector.dummy.jar b/src/test/resources/martserver-plugins/de.ugoe.cs.rwm.mocci.connector.dummy.jar
index 48c2737dce437a56a3cc3bd2d6e0ac60bd881ac5..213d415c254d2d18986adde7644eae7f07f13742 100644
Binary files a/src/test/resources/martserver-plugins/de.ugoe.cs.rwm.mocci.connector.dummy.jar and b/src/test/resources/martserver-plugins/de.ugoe.cs.rwm.mocci.connector.dummy.jar differ
diff --git a/src/test/resources/martserver-plugins/de.ugoe.cs.rwm.mocci.model.jar b/src/test/resources/martserver-plugins/de.ugoe.cs.rwm.mocci.model.jar
index 1982e9ff4689e905a1e4fc157af58a255cb344e8..99b8ee2cc84765710233053d52daf75be0bd5d14 100644
Binary files a/src/test/resources/martserver-plugins/de.ugoe.cs.rwm.mocci.model.jar and b/src/test/resources/martserver-plugins/de.ugoe.cs.rwm.mocci.model.jar differ
diff --git a/src/test/resources/occi/hadoopClusterNewExtCPUOnly.occic b/src/test/resources/occi/hadoopClusterNewExtCPUOnly.occic
new file mode 100644
index 0000000000000000000000000000000000000000..21600cab2314e90abdf11b36de761fb1925aad25
--- /dev/null
+++ b/src/test/resources/occi/hadoopClusterNewExtCPUOnly.occic
@@ -0,0 +1,288 @@
+<?xml version="1.0" encoding="ASCII"?>
+<occi:Configuration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:infrastructure="http://schemas.ogf.org/occi/infrastructure/ecore" xmlns:monitoring="http://schemas.ugoe.cs.rwm/monitoring/ecore" xmlns:occi="http://schemas.ogf.org/occi/core/ecore" xmlns:placement="http://schemas.modmacao.org/placement/ecore" xmlns:platform="http://schemas.modmacao.org/occi/platform/ecore">
+  <use href="http://schemas.ogf.org/occi/core#/"/>
+  <use href="http://schemas.ogf.org/occi/infrastructure#/"/>
+  <use href="http://schemas.modmacao.org/occi/platform#/"/>
+  <use href="http://schemas.ogf.org/occi/infrastructure/compute/template/1.1#/"/>
+  <use href="http://schemas.modmacao.org/placement#/"/>
+  <use href="http://schemas.modmacao.org/openstack/runtime#/"/>
+  <use href="http://schemas.modmacao.org/modmacao#/"/>
+  <use href="http://schemas.modmacao.org/openstack/swe#/"/>
+  <use href="http://schemas.ugoe.cs.rwm/monitoring#/"/>
+  <resources xsi:type="infrastructure:Compute" id="urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce" title="hadoop-master" location="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce/" rlinks="//@resources.2/@links.0 //@resources.1/@links.0" occiComputeCores="2" occiComputeHostname="vm2" occiComputeMemory="4096.0" occiComputeState="active">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='compute']"/>
+    <attributes name="occi.core.id" value="urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce"/>
+    <attributes name="occi.core.title" value="hadoop-master"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.compute.architecture" value="x86"/>
+    <attributes name="occi.compute.cores" value="2"/>
+    <attributes name="occi.compute.hostname" value="hadoop-master"/>
+    <attributes name="occi.compute.share" value="0"/>
+    <attributes name="occi.compute.speed" value="0"/>
+    <attributes name="occi.compute.memory" value="4096"/>
+    <attributes name="occi.compute.state" value="active"/>
+    <attributes name="occi.compute.state.message" value=""/>
+    <parts xsi:type="infrastructure:Ssh_key" occiCredentialsSshPublickey="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova">
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ssh_key']"/>
+      <attributes name="occi.credentials.ssh.publickey" value="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova"/>
+    </parts>
+    <parts xsi:type="infrastructure:User_data" occiComputeUserdata="I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj">
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='user_data']"/>
+      <attributes name="occi.compute.userdata" value="I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj"/>
+    </parts>
+    <parts>
+      <mixin href="http://schemas.modmacao.org/openstack/swe#//@mixins[term='ubuntu_xenialxerus']"/>
+    </parts>
+    <links xsi:type="infrastructure:Networkinterface" id="urn:uuid:ea482951-5c26-471d-aa1b-8e03b1e6096c" title="link3" location="/networkinterface/urn:uuid:ea482951-5c26-471d-aa1b-8e03b1e6096c" target="//@resources.6">
+      <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='networkinterface']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ea482951-5c26-471d-aa1b-8e03b1e6096c"/>
+      <attributes name="occi.core.title" value="link3"/>
+      <attributes name="occi.networkinterface.address" value="10.254.1.5"/>
+      <parts xsi:type="infrastructure:Ipnetworkinterface" occiNetworkinterfaceAddress="10.254.1.5" occiNetworkinterfaceGateway="10.254.1.254">
+        <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetworkinterface']"/>
+      </parts>
+    </links>
+  </resources>
+  <resources xsi:type="platform:Component" id="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255896" title="Wordcount" location="/component/urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255896/" occiComponentStateMessage="">
+    <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='component']"/>
+    <attributes name="occi.core.id" value="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255896"/>
+    <attributes name="occi.core.title" value="Wordcount"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.component.state" value="undeployed"/>
+    <attributes name="occi.component.state.message" value=""/>
+    <parts mixin="//@mixins.0"/>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b929" title="link1" location="/placementlink/urn:uuid:ff292f08-d263-41b6-88c8-84d33783b929/" target="//@resources.0">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b929"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+  </resources>
+  <resources xsi:type="platform:Component" id="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255897" title="hMaster" location="/component/urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255897/" rlinks="//@resources.3/@links.0" occiComponentStateMessage="">
+    <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='component']"/>
+    <attributes name="occi.core.id" value="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255897"/>
+    <attributes name="occi.core.title" value="hMaster"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.component.state" value="undeployed"/>
+    <attributes name="occi.component.state.message" value=""/>
+    <parts mixin="//@mixins.1"/>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b928" title="link1" location="/placementlink/urn:uuid:ff292f08-d263-41b6-88c8-84d33783b928/" target="//@resources.0">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b928"/>
+      <attributes name="occi.core.title" value="link1"/>
+      <attributes name="occi.core.source" value="/component/urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255897/"/>
+      <attributes name="occi.core.target" value="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce/"/>
+    </links>
+  </resources>
+  <resources xsi:type="platform:Application" id="urn:uuid:a4888ba9-a0ea-48f2-a29e-901c876ab42d" title="hadoopcluster" location="/application/urn:uuid:a4888ba9-a0ea-48f2-a29e-901c876ab42d" occiAppName="" occiAppState="deployed">
+    <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='application']"/>
+    <attributes name="occi.core.id" value="urn:uuid:a4888ba9-a0ea-48f2-a29e-901c876ab42d"/>
+    <attributes name="occi.core.title" value="hadoopcluster"/>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:9aa31c50-c605-4370-aa60-2c7c461051ef" title="ComponentLink" location="/componentlink/urn:uuid:9aa31c50-c605-4370-aa60-2c7c461051ef" target="//@resources.2">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:9aa31c50-c605-4370-aa60-2c7c461051ef"/>
+      <attributes name="occi.core.title" value="ComponentLink"/>
+    </links>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:7890f02b-6f56-4809-865f-d8c686fd9da1" title="link4" location="/componentlink/urn:uuid:7890f02b-6f56-4809-865f-d8c686fd9da1" target="//@resources.5">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:7890f02b-6f56-4809-865f-d8c686fd9da1"/>
+      <attributes name="occi.core.title" value="link4"/>
+    </links>
+  </resources>
+  <resources xsi:type="infrastructure:Compute" id="urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf" title="hadoop-worker-1" location="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf/" rlinks="//@resources.5/@links.0 //@resources.8/@links.0" occiComputeCores="2" occiComputeHostname="vm2" occiComputeMemory="4096.0" occiComputeState="active">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='compute']"/>
+    <attributes name="occi.core.id" value="urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf"/>
+    <attributes name="occi.core.title" value="hadoop-worker-1"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.compute.architecture" value="x86"/>
+    <attributes name="occi.compute.cores" value="2"/>
+    <attributes name="occi.compute.hostname" value="hadoop-worker-1"/>
+    <attributes name="occi.compute.share" value="0"/>
+    <attributes name="occi.compute.speed" value="0"/>
+    <attributes name="occi.compute.memory" value="4096"/>
+    <attributes name="occi.compute.state" value="active"/>
+    <attributes name="occi.compute.state.message" value=""/>
+    <parts xsi:type="infrastructure:Ssh_key" occiCredentialsSshPublickey="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova">
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ssh_key']"/>
+      <attributes name="occi.credentials.ssh.publickey" value="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova"/>
+    </parts>
+    <parts xsi:type="infrastructure:User_data" occiComputeUserdata="I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj">
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='user_data']"/>
+      <attributes name="occi.compute.userdata" value="I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj"/>
+    </parts>
+    <parts>
+      <mixin href="http://schemas.modmacao.org/openstack/swe#//@mixins[term='ubuntu_xenialxerus']"/>
+    </parts>
+    <links xsi:type="infrastructure:Networkinterface" id="urn:uuid:c8c49905-3d5e-43b2-8d09-fabf92d29722" title="link2" location="/networkinterface/urn:uuid:c8c49905-3d5e-43b2-8d09-fabf92d29722" target="//@resources.6">
+      <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='networkinterface']"/>
+      <attributes name="occi.core.id" value="urn:uuid:c8c49905-3d5e-43b2-8d09-fabf92d29722"/>
+      <attributes name="occi.core.title" value="link2"/>
+      <attributes name="occi.networkinterface.address" value="10.254.1.8"/>
+      <parts xsi:type="infrastructure:Ipnetworkinterface" occiNetworkinterfaceAddress="10.254.1.8" occiNetworkinterfaceGateway="10.254.1.254">
+        <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetworkinterface']"/>
+      </parts>
+    </links>
+    <links xsi:type="infrastructure:Networkinterface" id="urn:uuid:03f91178-136f-4023-876e-84509f8a5a2d" title="monNwLink" target="//@resources.12" occiNetworkinterfaceInterface="100.254.1.35" occiNetworkinterfaceMac="">
+      <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='networkinterface']"/>
+      <attributes name="occi.core.id" value="urn:uuid:03f91178-136f-4023-876e-84509f8a5a2d"/>
+      <attributes name="occi.core.title" value="monNwLink"/>
+      <attributes name="occi.networkinterface.address" value="100.254.1.35"/>
+      <parts xsi:type="infrastructure:Ipnetworkinterface" occiNetworkinterfaceAddress="100.254.1.35" occiNetworkinterfaceGateway="">
+        <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetworkinterface']"/>
+      </parts>
+    </links>
+  </resources>
+  <resources xsi:type="platform:Component" id="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255898" title="Worker" location="/component/urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255898/" rlinks="//@resources.3/@links.1" occiComponentStateMessage="">
+    <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='component']"/>
+    <attributes name="occi.core.id" value="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255898"/>
+    <attributes name="occi.core.title" value="Worker"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.component.state" value="undeployed"/>
+    <attributes name="occi.component.state.message" value=""/>
+    <parts mixin="//@mixins.2"/>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b917" title="link1" location="/placementlink/urn:uuid:ff292f08-d263-41b6-88c8-84d33783b917/" target="//@resources.4">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b917"/>
+      <attributes name="occi.core.title" value="link1"/>
+      <attributes name="occi.core.target" value="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce/"/>
+    </links>
+  </resources>
+  <resources xsi:type="infrastructure:Network" id="urn:uuid:29d78078-fb4c-47aa-a9af-b8aaf3339591" title="hNetwork" location="/network/urn:uuid:29d78078-fb4c-47aa-a9af-b8aaf3339591/" rlinks="//@resources.0/@links.0 //@resources.4/@links.0" occiNetworkState="active">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='network']"/>
+    <attributes name="occi.core.id" value="urn:uuid:29d78078-fb4c-47aa-a9af-b8aaf3339591"/>
+    <attributes name="occi.core.title" value="hNetwork"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.network.vlan" value="0"/>
+    <attributes name="occi.network.label" value=""/>
+    <attributes name="occi.network.state" value="active"/>
+    <attributes name="occi.network.state.message" value=""/>
+    <parts>
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetwork']"/>
+      <attributes name="occi.network.address" value="10.254.1.1/24"/>
+    </parts>
+  </resources>
+  <resources xsi:type="monitoring:Sensor" id="urn:uuid:efb0f50a-7a7c-4153-b939-4846d6554dbb" title="Sensor">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='sensor']"/>
+    <attributes name="occi.core.id" value="urn:uuid:efb0f50a-7a7c-4153-b939-4846d6554dbb"/>
+    <attributes name="occi.core.title" value="Sensor"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.sensor.timebase" value=""/>
+    <attributes name="occi.sensor.timestart" value=""/>
+    <attributes name="occi.sensor.timestop" value=""/>
+    <attributes name="occi.sensor.period" value=""/>
+    <attributes name="occi.sensor.granularity" value=""/>
+    <attributes name="occi.sensor.accuracy" value=""/>
+    <attributes name="occi.app.state" value="undeployed"/>
+    <attributes name="occi.app.state.message" value=""/>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:04cf6483-706d-4a2a-9114-9918ab2bb52a" title="link1" target="//@resources.8">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:04cf6483-706d-4a2a-9114-9918ab2bb52a"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:9c604867-3135-4fa1-af9e-2bb11018ff5a" title="link2" target="//@resources.9">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:9c604867-3135-4fa1-af9e-2bb11018ff5a"/>
+      <attributes name="occi.core.title" value="link2"/>
+    </links>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:93f08e31-f350-42b7-a73b-c139eba4a8e3" title="link3" target="//@resources.10">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:93f08e31-f350-42b7-a73b-c139eba4a8e3"/>
+      <attributes name="occi.core.title" value="link3"/>
+    </links>
+  </resources>
+  <resources xsi:type="monitoring:Datagatherer" id="urn:uuid:051affdc-d686-48f8-884c-83fe81718a48" title="DataGatherer" rlinks="//@resources.7/@links.0 //@resources.9/@links.0">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='datagatherer']"/>
+    <attributes name="occi.core.id" value="urn:uuid:051affdc-d686-48f8-884c-83fe81718a48"/>
+    <attributes name="occi.core.title" value="DataGatherer"/>
+    <parts mixin="//@mixins.3"/>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:60cc05ca-4fd7-465b-8fd0-945dcbf8867f" title="link1" target="//@resources.4">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:60cc05ca-4fd7-465b-8fd0-945dcbf8867f"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+  </resources>
+  <resources xsi:type="monitoring:Processor" id="urn:uuid:1bda25ab-723b-47e7-9704-5134db26ebdc" title="Processor" rlinks="//@resources.10/@links.0 //@resources.7/@links.1" gathererAddress="100.254.1.35">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='processor']"/>
+    <attributes name="occi.core.id" value="urn:uuid:1bda25ab-723b-47e7-9704-5134db26ebdc"/>
+    <attributes name="occi.core.title" value="Processor"/>
+    <attributes name="gatherer.address" value="100.254.1.35"/>
+    <parts mixin="//@mixins.4"/>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:1a821776-7886-4cb4-8b80-46a8403acf40" title="link1" target="//@resources.8">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:1a821776-7886-4cb4-8b80-46a8403acf40"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:ff7019e4-a9dc-48dc-83c3-ab77714a25f4" title="link2" target="//@resources.11">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ff7019e4-a9dc-48dc-83c3-ab77714a25f4"/>
+      <attributes name="occi.core.title" value="link2"/>
+    </links>
+  </resources>
+  <resources xsi:type="monitoring:Publisher" id="urn:uuid:588f705e-5279-4847-9337-846af2c86972" title="Publisher" rlinks="//@resources.7/@links.2" publisherEndpoint="192.168.35.45:8080">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='publisher']"/>
+    <attributes name="occi.core.id" value="urn:uuid:588f705e-5279-4847-9337-846af2c86972"/>
+    <attributes name="occi.core.title" value="Publisher"/>
+    <attributes name="publisher.endpoint" value="192.168.35.45:8080"/>
+    <parts mixin="//@mixins.5"/>
+    <parts xsi:type="monitoring:Martpublisher" monitoringPropertyName="CPU" monitoringPropertyId="" monitoringPropertyResource="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf/">
+      <mixin href="http://schemas.ugoe.cs.rwm/monitoring#//@mixins[term='martpublisher']"/>
+      <attributes name="monitoring.property.name" value="CPU"/>
+      <attributes name="monitoring.property.resource" value="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf/"/>
+      <attributes name="monitoring.property.id" value="/monitoringproperty/fb3604c9-1fd4-4fa8-bee6-eafceddd0487"/>
+    </parts>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:9551c357-59f8-4ac1-8c85-0e886e206b80" title="link1" target="//@resources.9">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:9551c357-59f8-4ac1-8c85-0e886e206b80"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:275b5bce-084c-46f0-88bc-1f6f31bf3616" title="link2" target="//@resources.11">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:275b5bce-084c-46f0-88bc-1f6f31bf3616"/>
+      <attributes name="occi.core.title" value="link2"/>
+    </links>
+  </resources>
+  <resources xsi:type="infrastructure:Compute" id="urn:uuid:37829092-c690-494a-98fa-335b2fd660ea" title="MonVm" rlinks="//@resources.9/@links.1 //@resources.10/@links.1" occiComputeHostname="monVM" occiComputeState="inactive">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='compute']"/>
+    <attributes name="occi.core.id" value="urn:uuid:37829092-c690-494a-98fa-335b2fd660ea"/>
+    <attributes name="occi.core.title" value="MonVm"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.compute.architecture" value="x86"/>
+    <attributes name="occi.compute.cores" value="2"/>
+    <attributes name="occi.compute.hostname" value="monVM"/>
+    <attributes name="occi.compute.share" value="0"/>
+    <attributes name="occi.compute.speed" value="0"/>
+    <attributes name="occi.compute.memory" value="4096"/>
+    <attributes name="occi.compute.state" value="active"/>
+    <attributes name="occi.compute.state.message" value=""/>
+    <parts>
+      <mixin href="http://schemas.modmacao.org/openstack/swe#//@mixins[term='ubuntu_xenialxerus']"/>
+    </parts>
+    <links xsi:type="infrastructure:Networkinterface" id="urn:uuid:00d6889d-b644-44bf-af13-3fe350e926ed" title="link1" target="//@resources.12">
+      <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='networkinterface']"/>
+      <attributes name="occi.core.id" value="urn:uuid:00d6889d-b644-44bf-af13-3fe350e926ed"/>
+      <attributes name="occi.core.title" value="link1"/>
+      <parts xsi:type="infrastructure:Ipnetworkinterface" occiNetworkinterfaceAddress="100.254.1.25">
+        <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetworkinterface']"/>
+      </parts>
+    </links>
+  </resources>
+  <resources xsi:type="infrastructure:Network" id="urn:uuid:7a9fca2c-24fb-473c-aa9c-8dc9e68a432a" title="MonitoringNetwork" rlinks="//@resources.11/@links.0 //@resources.4/@links.1" occiNetworkState="inactive">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='network']"/>
+    <attributes name="occi.core.id" value="urn:uuid:7a9fca2c-24fb-473c-aa9c-8dc9e68a432a"/>
+    <attributes name="occi.core.title" value="MonitoringNetwork"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.network.vlan" value="0"/>
+    <attributes name="occi.network.label" value=""/>
+    <attributes name="occi.network.state" value="active"/>
+    <attributes name="occi.network.state.message" value=""/>
+    <parts>
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetwork']"/>
+      <attributes name="occi.network.address" value="100.254.1.1/24"/>
+    </parts>
+  </resources>
+  <mixins name="hJob" scheme="http://schemas.modmacao.org/usermixins#" title="Hjob"/>
+  <mixins name="hMaster" scheme="http://schemas.modmacao.org/usermixins#" title="HMaster"/>
+  <mixins name="hWorker" scheme="http://schemas.modmacao.org/usermixins#" title="HWorker"/>
+  <mixins name="CPUGatherer" scheme="http://schemas.modmacao.org/usermixins#" title="CPUGatherer"/>
+  <mixins name="CPUProcessor" scheme="http://schemas.modmacao.org/usermixins#" title="CPUProcessor"/>
+  <mixins name="CPUPublisher" scheme="http://schemas.modmacao.org/usermixins#" title="CPUPublisher"/>
+</occi:Configuration>
diff --git a/src/test/resources/occi/hadoopClusterNewExtWithMem.occic b/src/test/resources/occi/hadoopClusterNewExtWithMem.occic
new file mode 100644
index 0000000000000000000000000000000000000000..b4b8ecdaa7c04ac05a8c290e3461dff540c1c98b
--- /dev/null
+++ b/src/test/resources/occi/hadoopClusterNewExtWithMem.occic
@@ -0,0 +1,353 @@
+<?xml version="1.0" encoding="ASCII"?>
+<occi:Configuration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:infrastructure="http://schemas.ogf.org/occi/infrastructure/ecore" xmlns:monitoring="http://schemas.ugoe.cs.rwm/monitoring/ecore" xmlns:occi="http://schemas.ogf.org/occi/core/ecore" xmlns:placement="http://schemas.modmacao.org/placement/ecore" xmlns:platform="http://schemas.modmacao.org/occi/platform/ecore">
+  <use href="http://schemas.ogf.org/occi/core#/"/>
+  <use href="http://schemas.ogf.org/occi/infrastructure#/"/>
+  <use href="http://schemas.modmacao.org/occi/platform#/"/>
+  <use href="http://schemas.ogf.org/occi/infrastructure/compute/template/1.1#/"/>
+  <use href="http://schemas.modmacao.org/placement#/"/>
+  <use href="http://schemas.modmacao.org/openstack/runtime#/"/>
+  <use href="http://schemas.modmacao.org/modmacao#/"/>
+  <use href="http://schemas.modmacao.org/openstack/swe#/"/>
+  <use href="http://schemas.ugoe.cs.rwm/monitoring#/"/>
+  <resources xsi:type="infrastructure:Compute" id="urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce" title="hadoop-master" location="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce/" rlinks="//@resources.2/@links.0 //@resources.1/@links.0" occiComputeCores="2" occiComputeHostname="vm2" occiComputeMemory="4096.0" occiComputeState="active">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='compute']"/>
+    <attributes name="occi.core.id" value="urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce"/>
+    <attributes name="occi.core.title" value="hadoop-master"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.compute.architecture" value="x86"/>
+    <attributes name="occi.compute.cores" value="2"/>
+    <attributes name="occi.compute.hostname" value="hadoop-master"/>
+    <attributes name="occi.compute.share" value="0"/>
+    <attributes name="occi.compute.speed" value="0"/>
+    <attributes name="occi.compute.memory" value="4096"/>
+    <attributes name="occi.compute.state" value="active"/>
+    <attributes name="occi.compute.state.message" value=""/>
+    <parts xsi:type="infrastructure:Ssh_key" occiCredentialsSshPublickey="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova">
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ssh_key']"/>
+      <attributes name="occi.credentials.ssh.publickey" value="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova"/>
+    </parts>
+    <parts xsi:type="infrastructure:User_data" occiComputeUserdata="I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj">
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='user_data']"/>
+      <attributes name="occi.compute.userdata" value="I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj"/>
+    </parts>
+    <parts>
+      <mixin href="http://schemas.modmacao.org/openstack/swe#//@mixins[term='ubuntu_xenialxerus']"/>
+    </parts>
+    <links xsi:type="infrastructure:Networkinterface" id="urn:uuid:ea482951-5c26-471d-aa1b-8e03b1e6096c" title="link3" location="/networkinterface/urn:uuid:ea482951-5c26-471d-aa1b-8e03b1e6096c" target="//@resources.6">
+      <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='networkinterface']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ea482951-5c26-471d-aa1b-8e03b1e6096c"/>
+      <attributes name="occi.core.title" value="link3"/>
+      <attributes name="occi.networkinterface.address" value="10.254.1.5"/>
+      <parts xsi:type="infrastructure:Ipnetworkinterface" occiNetworkinterfaceAddress="10.254.1.5" occiNetworkinterfaceGateway="10.254.1.254">
+        <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetworkinterface']"/>
+      </parts>
+    </links>
+  </resources>
+  <resources xsi:type="platform:Component" id="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255896" title="Wordcount" location="/component/urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255896/" occiComponentStateMessage="">
+    <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='component']"/>
+    <attributes name="occi.core.id" value="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255896"/>
+    <attributes name="occi.core.title" value="Wordcount"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.component.state" value="undeployed"/>
+    <attributes name="occi.component.state.message" value=""/>
+    <parts mixin="//@mixins.0"/>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b929" title="link1" location="/placementlink/urn:uuid:ff292f08-d263-41b6-88c8-84d33783b929/" target="//@resources.0">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b929"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+  </resources>
+  <resources xsi:type="platform:Component" id="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255897" title="hMaster" location="/component/urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255897/" rlinks="//@resources.3/@links.0" occiComponentStateMessage="">
+    <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='component']"/>
+    <attributes name="occi.core.id" value="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255897"/>
+    <attributes name="occi.core.title" value="hMaster"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.component.state" value="undeployed"/>
+    <attributes name="occi.component.state.message" value=""/>
+    <parts mixin="//@mixins.1"/>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b928" title="link1" location="/placementlink/urn:uuid:ff292f08-d263-41b6-88c8-84d33783b928/" target="//@resources.0">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b928"/>
+      <attributes name="occi.core.title" value="link1"/>
+      <attributes name="occi.core.source" value="/component/urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255897/"/>
+      <attributes name="occi.core.target" value="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce/"/>
+    </links>
+  </resources>
+  <resources xsi:type="platform:Application" id="urn:uuid:a4888ba9-a0ea-48f2-a29e-901c876ab42d" title="hadoopcluster" location="/application/urn:uuid:a4888ba9-a0ea-48f2-a29e-901c876ab42d" occiAppName="" occiAppState="deployed">
+    <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='application']"/>
+    <attributes name="occi.core.id" value="urn:uuid:a4888ba9-a0ea-48f2-a29e-901c876ab42d"/>
+    <attributes name="occi.core.title" value="hadoopcluster"/>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:9aa31c50-c605-4370-aa60-2c7c461051ef" title="ComponentLink" location="/componentlink/urn:uuid:9aa31c50-c605-4370-aa60-2c7c461051ef" target="//@resources.2">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:9aa31c50-c605-4370-aa60-2c7c461051ef"/>
+      <attributes name="occi.core.title" value="ComponentLink"/>
+    </links>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:7890f02b-6f56-4809-865f-d8c686fd9da1" title="link4" location="/componentlink/urn:uuid:7890f02b-6f56-4809-865f-d8c686fd9da1" target="//@resources.5">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:7890f02b-6f56-4809-865f-d8c686fd9da1"/>
+      <attributes name="occi.core.title" value="link4"/>
+    </links>
+  </resources>
+  <resources xsi:type="infrastructure:Compute" id="urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf" title="hadoop-worker-1" location="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf/" rlinks="//@resources.5/@links.0 //@resources.8/@links.0" occiComputeCores="2" occiComputeHostname="vm2" occiComputeMemory="4096.0" occiComputeState="active">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='compute']"/>
+    <attributes name="occi.core.id" value="urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf"/>
+    <attributes name="occi.core.title" value="hadoop-worker-1"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.compute.architecture" value="x86"/>
+    <attributes name="occi.compute.cores" value="2"/>
+    <attributes name="occi.compute.hostname" value="hadoop-worker-1"/>
+    <attributes name="occi.compute.share" value="0"/>
+    <attributes name="occi.compute.speed" value="0"/>
+    <attributes name="occi.compute.memory" value="4096"/>
+    <attributes name="occi.compute.state" value="active"/>
+    <attributes name="occi.compute.state.message" value=""/>
+    <parts xsi:type="infrastructure:Ssh_key" occiCredentialsSshPublickey="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova">
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ssh_key']"/>
+      <attributes name="occi.credentials.ssh.publickey" value="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC6H7Ydi45BTHid4qNppGAi5mzjbnZgt7bi6xLGmZG9CiLmhMsxOuk3Z05Nn+pmoN98qS0eY8S240PPk5VOlYqBY0vdRAwrZSHHaLdMp6I7ARNrI2KraYduweqz7ZQxPXQfwIeYx2HKQxEF2r+4//Fo4WfgdBkLuulvl/Gw3TUzJNQHvgpaiNo9+PI5CZydHnZbjUkRikS12pT+CbNKj+0QKeQztbCd41aKxDv5H0DjltVRcpPppv4dmiU/zoCAIngWLO1PPgfYWyze8Z9IoyBT7Qdg30U91TYZBuxzXR5lq7Fh64y/IZ/SjdOdSIvIuDjtmJDULRdLJzrvubrKY+YH Generated-by-Nova"/>
+    </parts>
+    <parts xsi:type="infrastructure:User_data" occiComputeUserdata="I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj">
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='user_data']"/>
+      <attributes name="occi.compute.userdata" value="I2Nsb3VkLWNvbmZpZwoKIyBVcGdyYWRlIHRoZSBpbnN0YW5jZSBvbiBmaXJzdCBib290CiMgKGllIHJ1biBhcHQtZ2V0IHVwZ3JhZGUpCiMKIyBEZWZhdWx0OiBmYWxzZQojIEFsaWFzZXM6IGFwdF91cGdyYWRlCnBhY2thZ2VfdXBncmFkZTogdHJ1ZQoKcGFja2FnZXM6CiAtIHB5dGhvbgoKd3JpdGVfZmlsZXM6CiAgLSBwYXRoOiAvZXRjL25ldHdvcmsvaW50ZXJmYWNlcy5kLzUwLWNsb3VkLWluaXQuY2ZnCiAgICBjb250ZW50OiB8CiAgICAgIGF1dG8gbG8KICAgICAgaWZhY2UgbG8gaW5ldCBsb29wYmFjawogICAgICAKICAgICAgYXV0byBlbnMwCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMAogICAgICBpZmFjZSBlbnMwIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMQogICAgICBpZmFjZSBlbnMxIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMyCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMgogICAgICBpZmFjZSBlbnMyIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMzCiAgICAgIGFsbG93LWhvdHBsdWcgZW5zMwogICAgICBpZmFjZSBlbnMzIGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM0CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNAogICAgICBpZmFjZSBlbnM0IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM1CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNQogICAgICBpZmFjZSBlbnM1IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM2CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNgogICAgICBpZmFjZSBlbnM2IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM3CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zNwogICAgICBpZmFjZSBlbnM3IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM4CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOAogICAgICBpZmFjZSBlbnM4IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnM5CiAgICAgIGFsbG93LWhvdHBsdWcgZW5zOQogICAgICBpZmFjZSBlbnM5IGluZXQgZGhjcAogICAgICAKICAgICAgYXV0byBlbnMxMAogICAgICBhbGxvdy1ob3RwbHVnIGVuczEwCiAgICAgIGlmYWNlIGVuczEwIGluZXQgZGhjcAoKIyMj"/>
+    </parts>
+    <parts>
+      <mixin href="http://schemas.modmacao.org/openstack/swe#//@mixins[term='ubuntu_xenialxerus']"/>
+    </parts>
+    <links xsi:type="infrastructure:Networkinterface" id="urn:uuid:c8c49905-3d5e-43b2-8d09-fabf92d29722" title="link2" location="/networkinterface/urn:uuid:c8c49905-3d5e-43b2-8d09-fabf92d29722" target="//@resources.6">
+      <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='networkinterface']"/>
+      <attributes name="occi.core.id" value="urn:uuid:c8c49905-3d5e-43b2-8d09-fabf92d29722"/>
+      <attributes name="occi.core.title" value="link2"/>
+      <attributes name="occi.networkinterface.address" value="10.254.1.8"/>
+      <parts xsi:type="infrastructure:Ipnetworkinterface" occiNetworkinterfaceAddress="10.254.1.8" occiNetworkinterfaceGateway="10.254.1.254">
+        <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetworkinterface']"/>
+      </parts>
+    </links>
+    <links xsi:type="infrastructure:Networkinterface" id="urn:uuid:03f91178-136f-4023-876e-84509f8a5a2d" title="monNwLink" target="//@resources.12" occiNetworkinterfaceInterface="100.254.1.35" occiNetworkinterfaceMac="">
+      <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='networkinterface']"/>
+      <attributes name="occi.core.id" value="urn:uuid:03f91178-136f-4023-876e-84509f8a5a2d"/>
+      <attributes name="occi.core.title" value="monNwLink"/>
+      <attributes name="occi.networkinterface.address" value="100.254.1.35"/>
+      <parts xsi:type="infrastructure:Ipnetworkinterface" occiNetworkinterfaceAddress="100.254.1.35" occiNetworkinterfaceGateway="">
+        <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetworkinterface']"/>
+      </parts>
+    </links>
+  </resources>
+  <resources xsi:type="platform:Component" id="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255898" title="Worker" location="/component/urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255898/" rlinks="//@resources.3/@links.1" occiComponentStateMessage="">
+    <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='component']"/>
+    <attributes name="occi.core.id" value="urn:uuid:f934d445-d0c8-4f2f-8086-d9f1a8255898"/>
+    <attributes name="occi.core.title" value="Worker"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.component.state" value="undeployed"/>
+    <attributes name="occi.component.state.message" value=""/>
+    <parts mixin="//@mixins.2"/>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b917" title="link1" location="/placementlink/urn:uuid:ff292f08-d263-41b6-88c8-84d33783b917/" target="//@resources.4">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ff292f08-d263-41b6-88c8-84d33783b917"/>
+      <attributes name="occi.core.title" value="link1"/>
+      <attributes name="occi.core.target" value="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166ce/"/>
+    </links>
+  </resources>
+  <resources xsi:type="infrastructure:Network" id="urn:uuid:29d78078-fb4c-47aa-a9af-b8aaf3339591" title="hNetwork" location="/network/urn:uuid:29d78078-fb4c-47aa-a9af-b8aaf3339591/" rlinks="//@resources.0/@links.0 //@resources.4/@links.0" occiNetworkState="active">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='network']"/>
+    <attributes name="occi.core.id" value="urn:uuid:29d78078-fb4c-47aa-a9af-b8aaf3339591"/>
+    <attributes name="occi.core.title" value="hNetwork"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.network.vlan" value="0"/>
+    <attributes name="occi.network.label" value=""/>
+    <attributes name="occi.network.state" value="active"/>
+    <attributes name="occi.network.state.message" value=""/>
+    <parts>
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetwork']"/>
+      <attributes name="occi.network.address" value="10.254.1.1/24"/>
+    </parts>
+  </resources>
+  <resources xsi:type="monitoring:Sensor" id="urn:uuid:efb0f50a-7a7c-4153-b939-4846d6554dbb" title="Sensor">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='sensor']"/>
+    <attributes name="occi.core.id" value="urn:uuid:efb0f50a-7a7c-4153-b939-4846d6554dbb"/>
+    <attributes name="occi.core.title" value="Sensor"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.sensor.timebase" value=""/>
+    <attributes name="occi.sensor.timestart" value=""/>
+    <attributes name="occi.sensor.timestop" value=""/>
+    <attributes name="occi.sensor.period" value=""/>
+    <attributes name="occi.sensor.granularity" value=""/>
+    <attributes name="occi.sensor.accuracy" value=""/>
+    <attributes name="occi.app.state" value="undeployed"/>
+    <attributes name="occi.app.state.message" value=""/>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:04cf6483-706d-4a2a-9114-9918ab2bb52a" title="link1" target="//@resources.8">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:04cf6483-706d-4a2a-9114-9918ab2bb52a"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:9c604867-3135-4fa1-af9e-2bb11018ff5a" title="link2" target="//@resources.9">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:9c604867-3135-4fa1-af9e-2bb11018ff5a"/>
+      <attributes name="occi.core.title" value="link2"/>
+    </links>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:93f08e31-f350-42b7-a73b-c139eba4a8e3" title="link3" target="//@resources.10">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:93f08e31-f350-42b7-a73b-c139eba4a8e3"/>
+      <attributes name="occi.core.title" value="link3"/>
+    </links>
+  </resources>
+  <resources xsi:type="monitoring:Datagatherer" id="urn:uuid:051affdc-d686-48f8-884c-83fe81718a48" title="DataGatherer" rlinks="//@resources.7/@links.0 //@resources.9/@links.0 //@resources.13/@links.0 //@resources.15/@links.0">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='datagatherer']"/>
+    <attributes name="occi.core.id" value="urn:uuid:051affdc-d686-48f8-884c-83fe81718a48"/>
+    <attributes name="occi.core.title" value="DataGatherer"/>
+    <parts mixin="//@mixins.3"/>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:60cc05ca-4fd7-465b-8fd0-945dcbf8867f" title="link1" target="//@resources.4">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:60cc05ca-4fd7-465b-8fd0-945dcbf8867f"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+  </resources>
+  <resources xsi:type="monitoring:Processor" id="urn:uuid:1bda25ab-723b-47e7-9704-5134db26ebdc" title="Processor" rlinks="//@resources.10/@links.0 //@resources.7/@links.1" gathererAddress="100.254.1.35">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='processor']"/>
+    <attributes name="occi.core.id" value="urn:uuid:1bda25ab-723b-47e7-9704-5134db26ebdc"/>
+    <attributes name="occi.core.title" value="Processor"/>
+    <attributes name="gatherer.address" value="100.254.1.35"/>
+    <parts mixin="//@mixins.4"/>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:1a821776-7886-4cb4-8b80-46a8403acf40" title="link1" target="//@resources.8">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:1a821776-7886-4cb4-8b80-46a8403acf40"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:ff7019e4-a9dc-48dc-83c3-ab77714a25f4" title="link2" target="//@resources.11">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ff7019e4-a9dc-48dc-83c3-ab77714a25f4"/>
+      <attributes name="occi.core.title" value="link2"/>
+    </links>
+  </resources>
+  <resources xsi:type="monitoring:Publisher" id="urn:uuid:588f705e-5279-4847-9337-846af2c86972" title="Publisher" rlinks="//@resources.7/@links.2" publisherEndpoint="192.168.35.45:8080">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='publisher']"/>
+    <attributes name="occi.core.id" value="urn:uuid:588f705e-5279-4847-9337-846af2c86972"/>
+    <attributes name="occi.core.title" value="Publisher"/>
+    <attributes name="publisher.endpoint" value="192.168.35.45:8080"/>
+    <parts mixin="//@mixins.5"/>
+    <parts xsi:type="monitoring:Martpublisher" monitoringPropertyName="CPU" monitoringPropertyId="" monitoringPropertyResource="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf/">
+      <mixin href="http://schemas.ugoe.cs.rwm/monitoring#//@mixins[term='martpublisher']"/>
+      <attributes name="monitoring.property.name" value="CPU"/>
+      <attributes name="monitoring.property.resource" value="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf/"/>
+      <attributes name="monitoring.property.id" value="/monitoringproperty/fb3604c9-1fd4-4fa8-bee6-eafceddd0487"/>
+    </parts>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:9551c357-59f8-4ac1-8c85-0e886e206b80" title="link1" target="//@resources.9">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:9551c357-59f8-4ac1-8c85-0e886e206b80"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:275b5bce-084c-46f0-88bc-1f6f31bf3616" title="link2" target="//@resources.11">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:275b5bce-084c-46f0-88bc-1f6f31bf3616"/>
+      <attributes name="occi.core.title" value="link2"/>
+    </links>
+  </resources>
+  <resources xsi:type="infrastructure:Compute" id="urn:uuid:37829092-c690-494a-98fa-335b2fd660ea" title="MonVm" rlinks="//@resources.9/@links.1 //@resources.10/@links.1 //@resources.13/@links.1 //@resources.14/@links.1" occiComputeHostname="monVM" occiComputeState="inactive">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='compute']"/>
+    <attributes name="occi.core.id" value="urn:uuid:37829092-c690-494a-98fa-335b2fd660ea"/>
+    <attributes name="occi.core.title" value="MonVm"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.compute.architecture" value="x86"/>
+    <attributes name="occi.compute.cores" value="2"/>
+    <attributes name="occi.compute.hostname" value="monVM"/>
+    <attributes name="occi.compute.share" value="0"/>
+    <attributes name="occi.compute.speed" value="0"/>
+    <attributes name="occi.compute.memory" value="4096"/>
+    <attributes name="occi.compute.state" value="active"/>
+    <attributes name="occi.compute.state.message" value=""/>
+    <parts>
+      <mixin href="http://schemas.modmacao.org/openstack/swe#//@mixins[term='ubuntu_xenialxerus']"/>
+    </parts>
+    <links xsi:type="infrastructure:Networkinterface" id="urn:uuid:00d6889d-b644-44bf-af13-3fe350e926ed" title="link1" target="//@resources.12">
+      <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='networkinterface']"/>
+      <attributes name="occi.core.id" value="urn:uuid:00d6889d-b644-44bf-af13-3fe350e926ed"/>
+      <attributes name="occi.core.title" value="link1"/>
+      <parts xsi:type="infrastructure:Ipnetworkinterface" occiNetworkinterfaceAddress="100.254.1.25">
+        <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetworkinterface']"/>
+      </parts>
+    </links>
+  </resources>
+  <resources xsi:type="infrastructure:Network" id="urn:uuid:7a9fca2c-24fb-473c-aa9c-8dc9e68a432a" title="MonitoringNetwork" rlinks="//@resources.11/@links.0 //@resources.4/@links.1" occiNetworkState="inactive">
+    <kind href="http://schemas.ogf.org/occi/infrastructure#//@kinds[term='network']"/>
+    <attributes name="occi.core.id" value="urn:uuid:7a9fca2c-24fb-473c-aa9c-8dc9e68a432a"/>
+    <attributes name="occi.core.title" value="MonitoringNetwork"/>
+    <attributes name="occi.core.summary" value=""/>
+    <attributes name="occi.network.vlan" value="0"/>
+    <attributes name="occi.network.label" value=""/>
+    <attributes name="occi.network.state" value="active"/>
+    <attributes name="occi.network.state.message" value=""/>
+    <parts>
+      <mixin href="http://schemas.ogf.org/occi/infrastructure#//@mixins[term='ipnetwork']"/>
+      <attributes name="occi.network.address" value="100.254.1.1/24"/>
+    </parts>
+  </resources>
+  <resources xsi:type="monitoring:Processor" id="urn:uuid:1bda25ab-723b-47e7-9704-5134db26ebdd" title="Processor" rlinks="//@resources.14/@links.0 //@resources.15/@links.2" gathererAddress="100.254.1.35">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='processor']"/>
+    <attributes name="occi.core.title" value="Processor"/>
+    <attributes name="occi.core.id" value="urn:uuid:1bda25ab-723b-47e7-9704-5134db26ebdd"/>
+    <attributes name="gatherer.address" value="100.254.1.35"/>
+    <parts mixin="//@mixins.6"/>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:1a821776-7886-4cb4-8b80-46a8403acf41" title="link1" target="//@resources.8">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:1a821776-7886-4cb4-8b80-46a8403acf41"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:ff7019e4-a9dc-48dc-83c3-ab77714a25f5" title="link2" target="//@resources.11">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:ff7019e4-a9dc-48dc-83c3-ab77714a25f5"/>
+      <attributes name="occi.core.title" value="link2"/>
+    </links>
+  </resources>
+  <resources xsi:type="monitoring:Publisher" id="urn:uuid:588f705e-5279-4847-9337-846af2c86973" title="Publisher" rlinks="//@resources.15/@links.1" publisherEndpoint="192.168.35.45:8080">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='publisher']"/>
+    <attributes name="occi.core.id" value="urn:uuid:588f705e-5279-4847-9337-846af2c86973"/>
+    <attributes name="occi.core.title" value="Publisher"/>
+    <attributes name="publisher.endpoint" value="192.168.35.45:8080"/>
+    <parts mixin="//@mixins.7"/>
+    <parts xsi:type="monitoring:Martpublisher" monitoringPropertyName="Mem" monitoringPropertyId="/monitoringproperty/fb3604c9-1fd4-4fa8-bee6-eafceddd0488" monitoringPropertyResource="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf/">
+      <mixin href="http://schemas.ugoe.cs.rwm/monitoring#//@mixins[term='martpublisher']"/>
+      <attributes name="monitoring.property.name" value="Mem"/>
+      <attributes name="monitoring.property.resource" value="/compute/urn:uuid:2e6a73d0-faaa-476a-bd25-ca461dd166cf/"/>
+      <attributes name="monitoring.property.id" value="/monitoringproperty/fb3604c9-1fd4-4fa8-bee6-eafceddd0488"/>
+    </parts>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:9551c357-59f8-4ac1-8c85-0e886e206b83" title="link1" target="//@resources.13">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:9551c357-59f8-4ac1-8c85-0e886e206b83"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+    <links xsi:type="placement:Placementlink" id="urn:uuid:275b5bce-084c-46f0-88bc-1f6f31bf3618" title="link2" target="//@resources.11">
+      <kind href="http://schemas.modmacao.org/placement#//@kinds[term='placementlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:275b5bce-084c-46f0-88bc-1f6f31bf3618"/>
+      <attributes name="occi.core.title" value="link2"/>
+    </links>
+  </resources>
+  <resources xsi:type="monitoring:Sensor" id="urn:uuid:efb0f50a-7a7c-4153-b939-4846d6554dbc" title="Sensor" occiAppStateMessage="" occiSensorPeriod="" occiSensorAccuracy="">
+    <kind href="http://schemas.ugoe.cs.rwm/monitoring#//@kinds[term='sensor']"/>
+    <attributes name="occi.core.title" value="Sensor"/>
+    <attributes name="occi.core.id" value="urn:uuid:efb0f50a-7a7c-4153-b939-4846d6554dbc"/>
+    <attributes name="occi.sensor.period" value=""/>
+    <attributes name="occi.sensor.accuracy" value=""/>
+    <attributes name="occi.app.state.message" value=""/>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:04cf6483-706d-4a2a-9114-9918ab2bb52b" title="link1" target="//@resources.8">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:04cf6483-706d-4a2a-9114-9918ab2bb52b"/>
+      <attributes name="occi.core.title" value="link1"/>
+    </links>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:9c604867-3135-4fa1-af9e-2bb11018ff5b" title="link2" target="//@resources.14">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:9c604867-3135-4fa1-af9e-2bb11018ff5b"/>
+      <attributes name="occi.core.title" value="link2"/>
+    </links>
+    <links xsi:type="platform:Componentlink" id="urn:uuid:93f08e31-f350-42b7-a73b-c139eba4a8e4" title="link3" target="//@resources.13">
+      <kind href="http://schemas.modmacao.org/occi/platform#//@kinds[term='componentlink']"/>
+      <attributes name="occi.core.id" value="urn:uuid:93f08e31-f350-42b7-a73b-c139eba4a8e4"/>
+      <attributes name="occi.core.title" value="link3"/>
+    </links>
+  </resources>
+  <mixins name="hJob" scheme="http://schemas.modmacao.org/usermixins#" title="Hjob"/>
+  <mixins name="hMaster" scheme="http://schemas.modmacao.org/usermixins#" title="HMaster"/>
+  <mixins name="hWorker" scheme="http://schemas.modmacao.org/usermixins#" title="HWorker"/>
+  <mixins name="CPUGatherer" scheme="http://schemas.modmacao.org/usermixins#" title="CPUGatherer"/>
+  <mixins name="CPUProcessor" scheme="http://schemas.modmacao.org/usermixins#" title="CPUProcessor"/>
+  <mixins name="CPUPublisher" scheme="http://schemas.modmacao.org/usermixins#" title="CPUPublisher"/>
+  <mixins name="MemProcessor" scheme="http://schemas.modmacao.org/usermixins#" title="MemProcessor"/>
+  <mixins name="MemPublisher" scheme="http://schemas.modmacao.org/usermixins#" title="MemPublisher"/>
+</occi:Configuration>
diff --git a/src/test/resources/roles/memprocessor/.travis.yml b/src/test/resources/roles/memprocessor/.travis.yml
new file mode 100644
index 0000000000000000000000000000000000000000..36bbf6208cfd42ac91bfbe7f9126bc9044e186c6
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/.travis.yml
@@ -0,0 +1,29 @@
+---
+language: python
+python: "2.7"
+
+# Use the new container infrastructure
+sudo: false
+
+# Install ansible
+addons:
+  apt:
+    packages:
+    - python-pip
+
+install:
+  # Install ansible
+  - pip install ansible
+
+  # Check ansible version
+  - ansible --version
+
+  # Create ansible.cfg with correct roles_path
+  - printf '[defaults]\nroles_path=../' >ansible.cfg
+
+script:
+  # Basic role syntax check
+  - ansible-playbook tests/test.yml -i tests/inventory --syntax-check
+
+notifications:
+  webhooks: https://galaxy.ansible.com/api/v1/notifications/
\ No newline at end of file
diff --git a/src/test/resources/roles/memprocessor/README.md b/src/test/resources/roles/memprocessor/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..225dd44b9fc5b3abff7e9c68ff9e91d505cdd5f0
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/README.md
@@ -0,0 +1,38 @@
+Role Name
+=========
+
+A brief description of the role goes here.
+
+Requirements
+------------
+
+Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
+
+Role Variables
+--------------
+
+A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
+
+Dependencies
+------------
+
+A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
+
+Example Playbook
+----------------
+
+Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
+
+    - hosts: servers
+      roles:
+         - { role: username.rolename, x: 42 }
+
+License
+-------
+
+BSD
+
+Author Information
+------------------
+
+An optional section for the role authors to include contact information, or a website (HTML is not allowed).
diff --git a/src/test/resources/roles/memprocessor/defaults/main.yml b/src/test/resources/roles/memprocessor/defaults/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0642dc2a280e95b9fdf8ccb27e8a7931116d5a2e
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/defaults/main.yml
@@ -0,0 +1,2 @@
+---
+# defaults file for java
diff --git a/src/test/resources/roles/memprocessor/files/memprocessor.sh b/src/test/resources/roles/memprocessor/files/memprocessor.sh
new file mode 100644
index 0000000000000000000000000000000000000000..e364673894b2d6aa477da8556a7de8d8e7beea5e
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/files/memprocessor.sh
@@ -0,0 +1,33 @@
+#! /bin/bash
+
+avgMem=0
+slept=0
+sequence=3
+times=3
+send=$(python -c "print $sequence*$times")
+url=http://$1:61208/api/2/mem/percent
+
+if [ -f ~/memmonitor.txt ]; then
+    echo "Removing previous monitoring data"
+    rm monitor.txt
+fi
+
+echo "Starting monitoring script"
+echo "Requesting $url every $sequence seconds aggregating after $times times!"
+
+
+while true; do
+    mem=$(curl -s $url | awk '{print $2}')
+    cutmem=$(echo "$mem" | rev | cut -c 2- | rev)
+    sumMem=$(python -c "print $sumMem+$cutmem")
+    echo "Current Mem: $cutmem"
+    sleep $sequence
+    slept=$(($slept+$sequence))
+    if [ "$slept" = $send ]; then
+       mid=$(python -c "print $sumMem/$times")
+       echo "Aggregate Mem: $mid"
+       echo $mid >> ~/memmonitor.txt
+       slept=0
+       sumMem=0
+    fi
+done
diff --git a/src/test/resources/roles/memprocessor/handlers/main.yml b/src/test/resources/roles/memprocessor/handlers/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..6e163da17e02539d20ee1de12fd5a4434e3d235f
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/handlers/main.yml
@@ -0,0 +1,2 @@
+---
+# handlers file for java
diff --git a/src/test/resources/roles/memprocessor/meta/main.yml b/src/test/resources/roles/memprocessor/meta/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0a147082ea5084e910650dfbf9a9f0803931b6cb
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/meta/main.yml
@@ -0,0 +1,246 @@
+galaxy_info:
+  author: your name
+  description: 
+  company: your company (optional)
+  
+  # If the issue tracker for your role is not on github, uncomment the
+  # next line and provide a value
+  # issue_tracker_url: http://example.com/issue/tracker
+  
+  # Some suggested licenses:
+  # - BSD (default)
+  # - MIT
+  # - GPLv2
+  # - GPLv3
+  # - Apache
+  # - CC-BY
+  license: license (GPLv2, CC-BY, etc)
+  
+  min_ansible_version: 1.2
+
+  # Optionally specify the branch Galaxy will use when accessing the GitHub
+  # repo for this role. During role install, if no tags are available,
+  # Galaxy will use this branch. During import Galaxy will access files on
+  # this branch. If travis integration is cofigured, only notification for this
+  # branch will be accepted. Otherwise, in all cases, the repo's default branch
+  # (usually master) will be used.
+  #github_branch:
+  
+  #
+  # Below are all platforms currently available. Just uncomment
+  # the ones that apply to your role. If you don't see your
+  # platform on this list, let us know and we'll get it added!
+  #
+  #platforms:
+  #- name: OpenBSD
+  #  versions:
+  #  - all
+  #  - 5.6
+  #  - 5.7
+  #  - 5.8
+  #  - 5.9
+  #  - 6.0
+  #  - 6.1
+  #  - 6.2
+  #- name: Fedora
+  #  versions:
+  #  - all
+  #  - 16
+  #  - 17
+  #  - 18
+  #  - 19
+  #  - 20
+  #  - 21
+  #  - 22
+  #  - 23
+  #  - 24
+  #  - 25
+  #  - 26
+  #  - 27
+  #- name: DellOS
+  #  versions:
+  #  - all
+  #  - 10
+  #  - 6
+  #  - 9
+  #- name: MacOSX
+  #  versions:
+  #  - all
+  #  - 10.10
+  #  - 10.11
+  #  - 10.12
+  #  - 10.7
+  #  - 10.8
+  #  - 10.9
+  #- name: Synology
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Junos
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Cumulus
+  #  versions:
+  #  - all
+  #  - 2.5
+  #  - 3.0
+  #  - 3.1
+  #  - 3.2
+  #  - 3.3
+  #  - 3.4
+  #  - 3.5
+  #- name: GenericBSD
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Void Linux
+  #  versions:
+  #  - all
+  #  - any
+  #- name: GenericLinux
+  #  versions:
+  #  - all
+  #  - any
+  #- name: NXOS
+  #  versions:
+  #  - all
+  #  - any
+  #- name: macOS
+  #  versions:
+  #  - all
+  #  - Sierra
+  #- name: IOS
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Amazon
+  #  versions:
+  #  - all
+  #  - 2013.03
+  #  - 2013.09
+  #  - 2016.03
+  #  - 2016.09
+  #- name: ArchLinux
+  #  versions:
+  #  - all
+  #  - any
+  #- name: FreeBSD
+  #  versions:
+  #  - all
+  #  - 10.0
+  #  - 10.1
+  #  - 10.2
+  #  - 10.3
+  #  - 10.4
+  #  - 11.0
+  #  - 11.1
+  #  - 8.0
+  #  - 8.1
+  #  - 8.2
+  #  - 8.3
+  #  - 8.4
+  #  - 9.0
+  #  - 9.1
+  #  - 9.1
+  #  - 9.2
+  #  - 9.3
+  #- name: Ubuntu
+  #  versions:
+  #  - all
+  #  - artful
+  #  - bionic
+  #  - lucid
+  #  - maverick
+  #  - natty
+  #  - oneiric
+  #  - precise
+  #  - quantal
+  #  - raring
+  #  - saucy
+  #  - trusty
+  #  - utopic
+  #  - vivid
+  #  - wily
+  #  - xenial
+  #  - yakkety
+  #  - zesty
+  #- name: Debian
+  #  versions:
+  #  - all
+  #  - buster
+  #  - etch
+  #  - jessie
+  #  - lenny
+  #  - sid
+  #  - squeeze
+  #  - stretch
+  #  - wheezy
+  #- name: Alpine
+  #  versions:
+  #  - all
+  #  - any
+  #- name: EL
+  #  versions:
+  #  - all
+  #  - 5
+  #  - 6
+  #  - 7
+  #- name: Windows
+  #  versions:
+  #  - all
+  #  - 2012R2
+  #- name: SmartOS
+  #  versions:
+  #  - all
+  #  - any
+  #- name: opensuse
+  #  versions:
+  #  - all
+  #  - 12.1
+  #  - 12.2
+  #  - 12.3
+  #  - 13.1
+  #  - 13.2
+  #- name: SLES
+  #  versions:
+  #  - all
+  #  - 10SP3
+  #  - 10SP4
+  #  - 11
+  #  - 11SP1
+  #  - 11SP2
+  #  - 11SP3
+  #  - 11SP4
+  #  - 12
+  #  - 12SP1
+  #- name: GenericUNIX
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Solaris
+  #  versions:
+  #  - all
+  #  - 10
+  #  - 11.0
+  #  - 11.1
+  #  - 11.2
+  #  - 11.3
+  #- name: eos
+  #  versions:
+  #  - all
+  #  - Any
+  
+  galaxy_tags: []
+    # List tags for your role here, one per line. A tag is
+    # a keyword that describes and categorizes the role.
+    # Users find roles by searching for tags. Be sure to
+    # remove the '[]' above if you add tags to this list.
+    #
+    # NOTE: A tag is limited to a single word comprised of
+    # alphanumeric characters. Maximum 20 tags per role.
+
+dependencies: []
+  # List your role dependencies here, one per line.
+  # Be sure to remove the '[]' above if you add dependencies
+  # to this list.
\ No newline at end of file
diff --git a/src/test/resources/roles/memprocessor/tasks/main.yml b/src/test/resources/roles/memprocessor/tasks/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..7b8ef23efe5a9868e003b3c0b07383cf8e6e8dfb
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/tasks/main.yml
@@ -0,0 +1,37 @@
+- name: Deploy CPUProcessor
+  block:	
+  - name: Upload MemProcessor Script
+    copy:
+      src: memprocessor.sh
+      dest: /home/ubuntu/memprocessor.sh
+  when: task == "DEPLOY"
+  become_user: root
+  
+- name: Configure MemProcessor
+  block:
+  - name: Make script executable
+    file:
+      path: /home/ubuntu/memprocessor.sh
+      mode: 0777
+  when: task == "CONFIGURE"
+  become_user: root
+  
+- name: Start MemProcessor
+  block:
+  - name: Execute processor script
+    command: start-stop-daemon --start --startas /home/ubuntu/memprocessor.sh {{ gatherer_address }} -m --pidfile /run/memprocessor.pid -b
+  when: task == "START"
+  become_user: root
+  
+- name: Stop MemProcessor
+  block:
+  - name: Stop processor script
+    command: start-stop-daemon --stop -m --pidfile /run/memprocessor.pid
+  when: task == "STOP"
+  become_user: root
+
+- name: Undeploy MemProcessor
+  block:
+  - debug: msg="Operation undeploy not implemented."
+  when: task == "UNDEPLOY"
+  become_user: root
diff --git a/src/test/resources/roles/memprocessor/tests/inventory b/src/test/resources/roles/memprocessor/tests/inventory
new file mode 100644
index 0000000000000000000000000000000000000000..d18580b3c364645735235c667c2a546e28c273bb
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/tests/inventory
@@ -0,0 +1 @@
+localhost
\ No newline at end of file
diff --git a/src/test/resources/roles/memprocessor/tests/test.yml b/src/test/resources/roles/memprocessor/tests/test.yml
new file mode 100644
index 0000000000000000000000000000000000000000..4e3583045b405c931277c841b881b1b00e5da61c
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/tests/test.yml
@@ -0,0 +1,5 @@
+---
+- hosts: localhost
+  remote_user: root
+  roles:
+    - java
\ No newline at end of file
diff --git a/src/test/resources/roles/memprocessor/vars/main.yml b/src/test/resources/roles/memprocessor/vars/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..fe053733d8d97c5a3f923fa37f8d26a67d7e55cb
--- /dev/null
+++ b/src/test/resources/roles/memprocessor/vars/main.yml
@@ -0,0 +1,2 @@
+---
+# vars file for java
diff --git a/src/test/resources/roles/mempublisher/.travis.yml b/src/test/resources/roles/mempublisher/.travis.yml
new file mode 100644
index 0000000000000000000000000000000000000000..36bbf6208cfd42ac91bfbe7f9126bc9044e186c6
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/.travis.yml
@@ -0,0 +1,29 @@
+---
+language: python
+python: "2.7"
+
+# Use the new container infrastructure
+sudo: false
+
+# Install ansible
+addons:
+  apt:
+    packages:
+    - python-pip
+
+install:
+  # Install ansible
+  - pip install ansible
+
+  # Check ansible version
+  - ansible --version
+
+  # Create ansible.cfg with correct roles_path
+  - printf '[defaults]\nroles_path=../' >ansible.cfg
+
+script:
+  # Basic role syntax check
+  - ansible-playbook tests/test.yml -i tests/inventory --syntax-check
+
+notifications:
+  webhooks: https://galaxy.ansible.com/api/v1/notifications/
\ No newline at end of file
diff --git a/src/test/resources/roles/mempublisher/README.md b/src/test/resources/roles/mempublisher/README.md
new file mode 100644
index 0000000000000000000000000000000000000000..225dd44b9fc5b3abff7e9c68ff9e91d505cdd5f0
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/README.md
@@ -0,0 +1,38 @@
+Role Name
+=========
+
+A brief description of the role goes here.
+
+Requirements
+------------
+
+Any pre-requisites that may not be covered by Ansible itself or the role should be mentioned here. For instance, if the role uses the EC2 module, it may be a good idea to mention in this section that the boto package is required.
+
+Role Variables
+--------------
+
+A description of the settable variables for this role should go here, including any variables that are in defaults/main.yml, vars/main.yml, and any variables that can/should be set via parameters to the role. Any variables that are read from other roles and/or the global scope (ie. hostvars, group vars, etc.) should be mentioned here as well.
+
+Dependencies
+------------
+
+A list of other roles hosted on Galaxy should go here, plus any details in regards to parameters that may need to be set for other roles, or variables that are used from other roles.
+
+Example Playbook
+----------------
+
+Including an example of how to use your role (for instance, with variables passed in as parameters) is always nice for users too:
+
+    - hosts: servers
+      roles:
+         - { role: username.rolename, x: 42 }
+
+License
+-------
+
+BSD
+
+Author Information
+------------------
+
+An optional section for the role authors to include contact information, or a website (HTML is not allowed).
diff --git a/src/test/resources/roles/mempublisher/defaults/main.yml b/src/test/resources/roles/mempublisher/defaults/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0642dc2a280e95b9fdf8ccb27e8a7931116d5a2e
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/defaults/main.yml
@@ -0,0 +1,2 @@
+---
+# defaults file for java
diff --git a/src/test/resources/roles/mempublisher/files/mempublisher.sh b/src/test/resources/roles/mempublisher/files/mempublisher.sh
new file mode 100644
index 0000000000000000000000000000000000000000..6b10a6de071ce1aeed2c4334daf76af669d64054
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/files/mempublisher.sh
@@ -0,0 +1,60 @@
+#! /bin/bash
+
+endpoint=$1
+propresource=$2
+propname=$3
+sensor=$4
+propid=$5
+thresholdCrit=90
+thresholdHigh=60
+thresholdMid=40
+thresholdLow=10
+monfile=~/memmonitor.txt
+sequence=3
+
+echo "Endpoint: $endpoint"
+echo "Resource: $propresource"
+echo "Name: $propname"
+
+if [! -f "$monfile" ]; then
+    echo "Did not find file for monitoring: $monfile"
+    sleep 10
+fi
+
+if [! -f "$monfile" ]; then
+    echo "Did not find file for monitoring: $monfile"
+    sleep 10
+fi
+
+echo "Starting publishing script"
+echo "Checking $monfile every $sequence seconds with threshold of $threshold!"
+
+
+while true; do
+    val=$(tail -1 $monfile)
+    echo "$val"
+
+    if [ $(echo "$val > $thresholdCrit" | bc ) = 1 ]; then
+       state=Critical
+    elif [ $(echo "$val > $thresholdHigh" | bc ) = 1 ]; then
+       state=High
+    elif [ $(echo "$val > $thresholdMid" | bc ) = 1 ]; then
+       state=Mid
+    elif [ $(echo "$val > $thresholdLow" | bc ) = 1 ]; then
+       state=Low
+    else
+       state=None
+    fi
+    
+
+    if [ "$oldstate" = "$state" ]; then
+      echo "Nothing changed! Still in state $state"
+    else
+      echo "New state reached: $state"
+      echo "Publishing new results"
+      curl -v -X PUT http://"$endpoint""$propid" -H 'Content-Type: text/occi'  -H 'Category: monitoringproperty; scheme="http://schemas.ugoe.cs.rwm/monitoring#"; class="kind"'  -H 'X-OCCI-Attribute:occi.core.source="'$sensor'",occi.core.target="'$propresource'", occi.core.title="monProp", monitoring.property.value="'$state'", monitoring.property.name="'$propname'"' 
+      oldstate=$state
+    fi
+    sleep $sequence
+done
+
diff --git a/src/test/resources/roles/mempublisher/handlers/main.yml b/src/test/resources/roles/mempublisher/handlers/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..6e163da17e02539d20ee1de12fd5a4434e3d235f
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/handlers/main.yml
@@ -0,0 +1,2 @@
+---
+# handlers file for java
diff --git a/src/test/resources/roles/mempublisher/meta/main.yml b/src/test/resources/roles/mempublisher/meta/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..0a147082ea5084e910650dfbf9a9f0803931b6cb
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/meta/main.yml
@@ -0,0 +1,246 @@
+galaxy_info:
+  author: your name
+  description: 
+  company: your company (optional)
+  
+  # If the issue tracker for your role is not on github, uncomment the
+  # next line and provide a value
+  # issue_tracker_url: http://example.com/issue/tracker
+  
+  # Some suggested licenses:
+  # - BSD (default)
+  # - MIT
+  # - GPLv2
+  # - GPLv3
+  # - Apache
+  # - CC-BY
+  license: license (GPLv2, CC-BY, etc)
+  
+  min_ansible_version: 1.2
+
+  # Optionally specify the branch Galaxy will use when accessing the GitHub
+  # repo for this role. During role install, if no tags are available,
+  # Galaxy will use this branch. During import Galaxy will access files on
+  # this branch. If travis integration is cofigured, only notification for this
+  # branch will be accepted. Otherwise, in all cases, the repo's default branch
+  # (usually master) will be used.
+  #github_branch:
+  
+  #
+  # Below are all platforms currently available. Just uncomment
+  # the ones that apply to your role. If you don't see your
+  # platform on this list, let us know and we'll get it added!
+  #
+  #platforms:
+  #- name: OpenBSD
+  #  versions:
+  #  - all
+  #  - 5.6
+  #  - 5.7
+  #  - 5.8
+  #  - 5.9
+  #  - 6.0
+  #  - 6.1
+  #  - 6.2
+  #- name: Fedora
+  #  versions:
+  #  - all
+  #  - 16
+  #  - 17
+  #  - 18
+  #  - 19
+  #  - 20
+  #  - 21
+  #  - 22
+  #  - 23
+  #  - 24
+  #  - 25
+  #  - 26
+  #  - 27
+  #- name: DellOS
+  #  versions:
+  #  - all
+  #  - 10
+  #  - 6
+  #  - 9
+  #- name: MacOSX
+  #  versions:
+  #  - all
+  #  - 10.10
+  #  - 10.11
+  #  - 10.12
+  #  - 10.7
+  #  - 10.8
+  #  - 10.9
+  #- name: Synology
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Junos
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Cumulus
+  #  versions:
+  #  - all
+  #  - 2.5
+  #  - 3.0
+  #  - 3.1
+  #  - 3.2
+  #  - 3.3
+  #  - 3.4
+  #  - 3.5
+  #- name: GenericBSD
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Void Linux
+  #  versions:
+  #  - all
+  #  - any
+  #- name: GenericLinux
+  #  versions:
+  #  - all
+  #  - any
+  #- name: NXOS
+  #  versions:
+  #  - all
+  #  - any
+  #- name: macOS
+  #  versions:
+  #  - all
+  #  - Sierra
+  #- name: IOS
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Amazon
+  #  versions:
+  #  - all
+  #  - 2013.03
+  #  - 2013.09
+  #  - 2016.03
+  #  - 2016.09
+  #- name: ArchLinux
+  #  versions:
+  #  - all
+  #  - any
+  #- name: FreeBSD
+  #  versions:
+  #  - all
+  #  - 10.0
+  #  - 10.1
+  #  - 10.2
+  #  - 10.3
+  #  - 10.4
+  #  - 11.0
+  #  - 11.1
+  #  - 8.0
+  #  - 8.1
+  #  - 8.2
+  #  - 8.3
+  #  - 8.4
+  #  - 9.0
+  #  - 9.1
+  #  - 9.1
+  #  - 9.2
+  #  - 9.3
+  #- name: Ubuntu
+  #  versions:
+  #  - all
+  #  - artful
+  #  - bionic
+  #  - lucid
+  #  - maverick
+  #  - natty
+  #  - oneiric
+  #  - precise
+  #  - quantal
+  #  - raring
+  #  - saucy
+  #  - trusty
+  #  - utopic
+  #  - vivid
+  #  - wily
+  #  - xenial
+  #  - yakkety
+  #  - zesty
+  #- name: Debian
+  #  versions:
+  #  - all
+  #  - buster
+  #  - etch
+  #  - jessie
+  #  - lenny
+  #  - sid
+  #  - squeeze
+  #  - stretch
+  #  - wheezy
+  #- name: Alpine
+  #  versions:
+  #  - all
+  #  - any
+  #- name: EL
+  #  versions:
+  #  - all
+  #  - 5
+  #  - 6
+  #  - 7
+  #- name: Windows
+  #  versions:
+  #  - all
+  #  - 2012R2
+  #- name: SmartOS
+  #  versions:
+  #  - all
+  #  - any
+  #- name: opensuse
+  #  versions:
+  #  - all
+  #  - 12.1
+  #  - 12.2
+  #  - 12.3
+  #  - 13.1
+  #  - 13.2
+  #- name: SLES
+  #  versions:
+  #  - all
+  #  - 10SP3
+  #  - 10SP4
+  #  - 11
+  #  - 11SP1
+  #  - 11SP2
+  #  - 11SP3
+  #  - 11SP4
+  #  - 12
+  #  - 12SP1
+  #- name: GenericUNIX
+  #  versions:
+  #  - all
+  #  - any
+  #- name: Solaris
+  #  versions:
+  #  - all
+  #  - 10
+  #  - 11.0
+  #  - 11.1
+  #  - 11.2
+  #  - 11.3
+  #- name: eos
+  #  versions:
+  #  - all
+  #  - Any
+  
+  galaxy_tags: []
+    # List tags for your role here, one per line. A tag is
+    # a keyword that describes and categorizes the role.
+    # Users find roles by searching for tags. Be sure to
+    # remove the '[]' above if you add tags to this list.
+    #
+    # NOTE: A tag is limited to a single word comprised of
+    # alphanumeric characters. Maximum 20 tags per role.
+
+dependencies: []
+  # List your role dependencies here, one per line.
+  # Be sure to remove the '[]' above if you add dependencies
+  # to this list.
\ No newline at end of file
diff --git a/src/test/resources/roles/mempublisher/tasks/main.yml b/src/test/resources/roles/mempublisher/tasks/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..ac66d2e1a72928da21d23f87d223fa20c57449b4
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/tasks/main.yml
@@ -0,0 +1,42 @@
+- name: Deploy MemPublisher
+  block:	
+  - name: Install bc package
+    apt:
+      name: bc
+      state: installed
+  - name: Upload Publisher Script
+    copy:
+      src: mempublisher.sh
+      dest: /home/ubuntu/mempublisher.sh
+  when: task == "DEPLOY"
+  become_user: root
+  
+- name: Configure MemPublisher
+  block:
+  - name: Make script executable
+    file:
+      path: /home/ubuntu/mempublisher.sh
+      mode: 0777
+  when: task == "CONFIGURE"
+  become_user: root
+  
+- name: Start MemPublisher
+  block:
+  - name: Execute mempublisher script
+    command: start-stop-daemon --start --startas /home/ubuntu/mempublisher.sh {{ publisher_endpoint }} {{ monitoring_property_resource }} {{ monitoring_property_name }} {{ sensor }} {{ monitoring_property_id }} -m --pidfile /run/mempublisher.pid -b
+  when: task == "START"
+  become_user: root
+  
+- name: Stop MemPublisher
+  block:
+  - name: Stop mempublisher script
+    command: start-stop-daemon --stop -m --pidfile /run/mempublisher.pid
+  when: task == "STOP"
+  become_user: root
+
+- name: Undeploy MemPublisher
+  block:
+  - debug: msg="Attributes {{ publisher_endpoint }} {{ monitoring_property_resource }} {{ monitoring_property_name }}."
+  when: task == "UNDEPLOY"
+  become_user: root
+
diff --git a/src/test/resources/roles/mempublisher/tests/inventory b/src/test/resources/roles/mempublisher/tests/inventory
new file mode 100644
index 0000000000000000000000000000000000000000..d18580b3c364645735235c667c2a546e28c273bb
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/tests/inventory
@@ -0,0 +1 @@
+localhost
\ No newline at end of file
diff --git a/src/test/resources/roles/mempublisher/tests/test.yml b/src/test/resources/roles/mempublisher/tests/test.yml
new file mode 100644
index 0000000000000000000000000000000000000000..4e3583045b405c931277c841b881b1b00e5da61c
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/tests/test.yml
@@ -0,0 +1,5 @@
+---
+- hosts: localhost
+  remote_user: root
+  roles:
+    - java
\ No newline at end of file
diff --git a/src/test/resources/roles/mempublisher/vars/main.yml b/src/test/resources/roles/mempublisher/vars/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..fe053733d8d97c5a3f923fa37f8d26a67d7e55cb
--- /dev/null
+++ b/src/test/resources/roles/mempublisher/vars/main.yml
@@ -0,0 +1,2 @@
+---
+# vars file for java