Bug 569789 - [PapyrusManufacturing] Migration of source code from
internal server to eclipse



first commit of the sysml requirements model

First commit of AAS Modeling diagrams plugins

Adding architecture framework description

Modifying the UML profile to be conformant to AAS v2.0.1

change in the css style sheet


First commit of the Festo demonstrator

First commit of libraries plugin that Basyx code generator depends on
(org.apiguardian, org.junit.jupiter, org.junit.jupiter.params, etc)

commit of missing resources for org.eclipse.aas.basyx.lib


Integration of Basyx Code generation API with Papyrus

[Releng] Update the build with the new code generation plugins

- Code generation based on the AAS papyrus model information (submodels,
operations, attributes)
- Change of the bundle id of org.eclipse.aas.basyx.codegen
- Rewire the build for the new RCP

Adding Festo demonstrator model as a template in Papyrus wizard

First commit of the whirlpool model

implement variables

Modification of Papyrus code generator to take into account parameters
of operations
Synchronizing submodels compartments (attributes, operations) with the
content of the model

Correcting minor regression for the code generation

Modification of the profile to fix issues 19968, 19969

Regeneration of elementtypes, modification of palette to fix issues
19968, 19969

bugs 20049 Edit button on submodel attribute non-functional


Fix this bug by adding a ModelElement for AAS Sterotypes, fork the
HasStereotype Constraint to refer to the base_Class rather than the
sterotypeImpl

fix Bug 20050
*change profile : make idshort a derived read only property
--> changes in xwt files
*change generated code directory src-gen rather than src
*create a factory custom as well as ObjectImpl custom to specify the
implementation of id short
* identify a regex to constraint the idshort format
* new advice to approve only the valid format

fix Bug 20050

fix same name parameter errors.
now parameters in operations can have the same name.
fixes: #19970

Properties view regeneration

Re-fix bug 20049 Edit button on submodel attribute non-functional
and bug 20050 https://codev-tuleap.cea.fr/plugins/tracker/?aid=20050
after properties generation

implement remote operation execution

one project can be linked with other one and all operations and
submodels for that project will be created automatically

add info for new method

fix target platform


change java version to java 11

change java version

update classpath and target platform

use java 11 instead of java 1.8

The Basyx API for basyx projects creation has changed. Papyrus code
generator is updated with respect to these API changes.

implement SubModelElementCollection

- it is now possible to group Properties and Operations
- also updated Test file to beautify it.




Adding deployment information to the profile. Modification of
submodelementCollection

Modification of the profile to set the port Type to integer.
Regeneration of the properties view



SubmodelElementCollection association advices

-Restricting the creation of the relationship between
SubmodelElementCollection and submodel or SubmodelElementCollection and
SubmodelElementCollection
-Naming the association parentof
-Applying the SubmodelElementCollection stereotype to the association
end (property inside submodel)

generate Properties view with :
* readonly idShort
* edit button reworks for submodels collection in the AAS properties
view
* remove workaround: specific constraint for AAS (patch is merged in
Paparus https://bugs.eclipse.org/bugs/show_bug.cgi?id=567354



bugs #20376 Endpoint Edition

Implement customizable code body for operations.

fix operations and props not generated

- if not defined for submodel.
- implement submodelelementcollection into submodelelementcollection
- add more informative messages



Modification of the papyrus code generator

to generate submodel elements collections
to generate deployment information (aas id, aas server address, aas
server port, asset address(IP:PORT) )



implement property Type

One can now define what the property type is.

Resolving UI issues

Adding code generation menu on the diagram.
Adding a progress monitor dialog for code generation.




synch basyx build from 10.12.2020


some last improvements

- remove extClass from path
- add a readme to introduce the code.
- more debug messages during progress

minor layout fixes

implement operation variable type

minor example fix

Adding TestCases to the requirements model

First commit of the import Feature from AASX files (without releng)
to be continued

the import plugin

clean up the dev classes and CopyRights, remove unused classes

Integration in Papyrus of the new codegen api for operation parameters

Change-Id: I1e799b8c703a9be1b18c858708255ccd73790d86
Signed-off-by: Saadia Dhouib <saadia.dhouib@cea.fr>
Signed-off-by: Asma Smaoui <asma.smaoui@cea.fr>
Signed-off-by: Volkan Gezer <volkan.gezer@dfki.de>
Signed-off-by: Quentin Le Menez <quentin.lemenez@cea.fr>
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..7567a06
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,23 @@
+bin/
+target/
+sonarlint/
+*.java._trace
+*.pyc
+.DS_Store
+*.xtendbin
+*.gmfgen.uml
+
+# Workspace metadata folder created by Oomph when launching tests.
+tests/**/.metadata/
+
+# Workspace created when building the RCP.
+workspace
+
+#intellij files
+.idea/
+*.iml
+
+# All .project that are not in a Papyrus plugin

+.project

+!**/org.eclipse.papyrus.aas.*/.project

+!**/org.eclipse.aas.*/.project
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100755
index 0000000..d3877f6
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,28 @@
+Contributing to CanvAAS
+======================
+
+Thanks for your interest in this project.
+
+Project description:
+--------------------
+
+
+Developer resources:
+--------------------
+
+
+Contributor License Agreement:
+------------------------------
+
+
+Contact:
+--------
+
+
+Search for bugs:
+----------------
+
+
+Create a new bug:
+-----------------
+
diff --git a/examples/AAS UML Example/.project b/examples/AAS UML Example/.project
new file mode 100644
index 0000000..f696de7
--- /dev/null
+++ b/examples/AAS UML Example/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>AAS UML Example</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>
diff --git a/examples/AAS UML Example/AAS Example.di b/examples/AAS UML Example/AAS Example.di
new file mode 100644
index 0000000..8c549ee
--- /dev/null
+++ b/examples/AAS UML Example/AAS Example.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.infra.services.edit.TypeContext"/>
diff --git a/examples/AAS UML Example/AAS Example.notation b/examples/AAS UML Example/AAS Example.notation
new file mode 100644
index 0000000..6cb194b
--- /dev/null
+++ b/examples/AAS UML Example/AAS Example.notation
@@ -0,0 +1,253 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+  <notation:Diagram xmi:id="_BfSAgGLUEeqatqZwFeQyDg" type="PapyrusUMLClassDiagram" name="DeviceAAS" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_UE0i0GLVEeqatqZwFeQyDg" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_UE0i0mLVEeqatqZwFeQyDg" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_UE0i02LVEeqatqZwFeQyDg" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_UE0i1GLVEeqatqZwFeQyDg" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_UE0i1WLVEeqatqZwFeQyDg" type="Class_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_hXvKYGLVEeqatqZwFeQyDg" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="AAS%20Example.uml#_hXmngGLVEeqatqZwFeQyDg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_hXvKYWLVEeqatqZwFeQyDg"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_iP__8JkLEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="AAS%20Example.uml#_iMgnEJkLEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_iP__8ZkLEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_UE0i1mLVEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_UE0i12LVEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_UE0i2GLVEeqatqZwFeQyDg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UE0i2WLVEeqatqZwFeQyDg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_UE1J4GLVEeqatqZwFeQyDg" visible="false" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_UE1J4WLVEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_UE1J4mLVEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_UE1J42LVEeqatqZwFeQyDg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UE1J5GLVEeqatqZwFeQyDg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_UE1J5WLVEeqatqZwFeQyDg" type="Class_NestedClassifierCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_an3pgJTwEeqsmLiGoCAZPQ" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_an3pgZTwEeqsmLiGoCAZPQ" key="visible" value="true"/>
+        </eAnnotations>
+        <children xmi:type="notation:Shape" xmi:id="_N1qXoJjoEeqsmLiGoCAZPQ" type="Class_ClassNestedClassifierLabel">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_z0wlEJjoEeqsmLiGoCAZPQ" source="PapyrusHyperLink_Page" references="_SdMjcJjoEeqsmLiGoCAZPQ">
+            <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_z0wlEZjoEeqsmLiGoCAZPQ" key="tooltip_text" value="ControlSM"/>
+            <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_z0wlEpjoEeqsmLiGoCAZPQ" key="pageName" value="PapyrusHyperLink_Page"/>
+            <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_z0wlE5joEeqsmLiGoCAZPQ" key="is_default_navigation" value="true"/>
+          </eAnnotations>
+          <element xmi:type="uml:Class" href="AAS%20Example.uml#_KdZbUJjoEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_N1qXoZjoEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_UE1J5mLVEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_UE1J52LVEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_UE1J6GLVEeqatqZwFeQyDg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UE1J6WLVEeqatqZwFeQyDg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_E71RQJWoEeqsmLiGoCAZPQ" type="StereotypeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_r43skJjoEeqsmLiGoCAZPQ" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_r43skZjoEeqsmLiGoCAZPQ" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_E71RQZWoEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_E71RQpWoEeqsmLiGoCAZPQ" name="stereotype" stringValue="AASUMLProfile::AssetAdministrationShell"/>
+        <element xmi:type="uml:Stereotype" href="platform:/resource/com.cea.papyrus.aas.profile/resources/aas.profile.uml#_QVx84I7VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_E71RQ5WoEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:Class" href="AAS%20Example.uml#_UEytoGLVEeqatqZwFeQyDg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UE0i0WLVEeqatqZwFeQyDg" x="380" y="100" width="281" height="321"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_D-xk8GLYEeqatqZwFeQyDg" type="Comment_Shape" fontHeight="12">
+      <children xmi:type="notation:DecorationNode" xmi:id="_D-yMAGLYEeqatqZwFeQyDg" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="AAS%20Example.uml#_D-wW0GLYEeqatqZwFeQyDg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_D-xk8WLYEeqatqZwFeQyDg" x="40" y="340" width="241"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_8PtLAGLYEeqatqZwFeQyDg" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_8PtyEGLYEeqatqZwFeQyDg" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="AAS%20Example.uml#_8Pr84GLYEeqatqZwFeQyDg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8PtLAWLYEeqatqZwFeQyDg" x="840" y="140" width="121"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Or7OsGLZEeqatqZwFeQyDg" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Or7OsmLZEeqatqZwFeQyDg" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="AAS%20Example.uml#_Or4ycGLZEeqatqZwFeQyDg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Or7OsWLZEeqatqZwFeQyDg" x="720" y="280" width="281"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_AM24QJjrEeqsmLiGoCAZPQ" visible="false" type="StereotypeComment">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Hz7XUpjrEeqsmLiGoCAZPQ" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hz7XU5jrEeqsmLiGoCAZPQ" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_AM3fUJjrEeqsmLiGoCAZPQ" visible="false" type="StereotypeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Hz7XUJjrEeqsmLiGoCAZPQ" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Hz7XUZjrEeqsmLiGoCAZPQ" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_AM3fUZjrEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_AM3fUpjrEeqsmLiGoCAZPQ" name="stereotype" stringValue="AASUMLProfile::AssetAdministrationShell"/>
+        <element xmi:type="uml:Stereotype" href="platform:/resource/com.cea.papyrus.aas.profile/resources/aas.profile.uml#_QVx84I7VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AM3fU5jrEeqsmLiGoCAZPQ"/>
+      </children>
+      <styles xmi:type="notation:TitleStyle" xmi:id="_AM24QZjrEeqsmLiGoCAZPQ"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_AM24Q5jrEeqsmLiGoCAZPQ" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="AAS%20Example.uml#_UEytoGLVEeqatqZwFeQyDg"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_AM24QpjrEeqsmLiGoCAZPQ" x="700" y="140"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_BfSnkGLUEeqatqZwFeQyDg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_BfSnkWLUEeqatqZwFeQyDg"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_BfSnkmLUEeqatqZwFeQyDg" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
+      <owner xmi:type="uml:Model" href="AAS%20Example.uml#_BejAsGLUEeqatqZwFeQyDg"/>
+    </styles>
+    <element xmi:type="uml:Model" href="AAS%20Example.uml#_BejAsGLUEeqatqZwFeQyDg"/>
+    <edges xmi:type="notation:Connector" xmi:id="_BJvcEGLZEeqatqZwFeQyDg" type="Comment_AnnotatedElementEdge" source="_8PtLAGLYEeqatqZwFeQyDg" target="_UE0i0GLVEeqatqZwFeQyDg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_BJvcEWLZEeqatqZwFeQyDg"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BJvcEmLZEeqatqZwFeQyDg" points="[1000, 300, -643984, -643984]$[900, 200, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BNPcAGLZEeqatqZwFeQyDg" id="(0.0,0.3333333333333333)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BNPcAWLZEeqatqZwFeQyDg" id="(1.0,0.24922118380062305)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_AM24RJjrEeqsmLiGoCAZPQ" type="StereotypeCommentLink" source="_UE0i0GLVEeqatqZwFeQyDg" target="_AM24QJjrEeqsmLiGoCAZPQ">
+      <styles xmi:type="notation:FontStyle" xmi:id="_AM24RZjrEeqsmLiGoCAZPQ"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_AM24SZjrEeqsmLiGoCAZPQ" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="AAS%20Example.uml#_UEytoGLVEeqatqZwFeQyDg"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AM24RpjrEeqsmLiGoCAZPQ" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AM24R5jrEeqsmLiGoCAZPQ"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AM24SJjrEeqsmLiGoCAZPQ"/>
+    </edges>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_Woa2EGLXEeqatqZwFeQyDg" type="PapyrusUMLClassDiagram" name="ProtocolDigram" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_Xy2B0GLXEeqatqZwFeQyDg" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Xy2B0mLXEeqatqZwFeQyDg" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Xy2B02LXEeqatqZwFeQyDg" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Xy2B1GLXEeqatqZwFeQyDg" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Xy2o4GLXEeqatqZwFeQyDg" type="Class_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_akd04GLXEeqatqZwFeQyDg" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="AAS%20Example.uml#_akYVUGLXEeqatqZwFeQyDg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_akd04WLXEeqatqZwFeQyDg"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_nsvSsGLXEeqatqZwFeQyDg" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="AAS%20Example.uml#_nsroUGLXEeqatqZwFeQyDg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_nsvSsWLXEeqatqZwFeQyDg"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Xy2o4WLXEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Xy2o4mLXEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Xy2o42LXEeqatqZwFeQyDg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Xy2o5GLXEeqatqZwFeQyDg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Xy2o5WLXEeqatqZwFeQyDg" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Xy2o5mLXEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Xy2o52LXEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Xy2o6GLXEeqatqZwFeQyDg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Xy2o6WLXEeqatqZwFeQyDg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Xy2o6mLXEeqatqZwFeQyDg" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Xy2o62LXEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Xy2o7GLXEeqatqZwFeQyDg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Xy2o7WLXEeqatqZwFeQyDg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Xy2o7mLXEeqatqZwFeQyDg"/>
+      </children>
+      <element xmi:type="uml:Class" href="AAS%20Example.uml#_Xy0zsGLXEeqatqZwFeQyDg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Xy2B0WLXEeqatqZwFeQyDg" x="180" y="160"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_Woa2EWLXEeqatqZwFeQyDg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_Woa2EmLXEeqatqZwFeQyDg"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_Woa2E2LXEeqatqZwFeQyDg" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
+      <owner xmi:type="uml:Package" href="AAS%20Example.uml#_TTru4GLXEeqatqZwFeQyDg"/>
+    </styles>
+    <element xmi:type="uml:Package" href="AAS%20Example.uml#_TTru4GLXEeqatqZwFeQyDg"/>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_95yUcJTvEeqsmLiGoCAZPQ" type="CompositeStructure" name="NewCompositeStructureDiagram" measurementUnit="Pixel">
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_95yUcZTvEeqsmLiGoCAZPQ" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_95yUcpTvEeqsmLiGoCAZPQ"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_95yUc5TvEeqsmLiGoCAZPQ" diagramKindId="org.eclipse.papyrus.uml.diagram.compositeStructure.root.package">
+      <owner xmi:type="uml:Model" href="AAS%20Example.uml#_BejAsGLUEeqatqZwFeQyDg"/>
+    </styles>
+    <element xmi:type="uml:Model" href="AAS%20Example.uml#_BejAsGLUEeqatqZwFeQyDg"/>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_SdMjcJjoEeqsmLiGoCAZPQ" type="PapyrusUMLClassDiagram" name="ControlSM" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_TkimAJjoEeqsmLiGoCAZPQ" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_TkimApjoEeqsmLiGoCAZPQ" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_TkimA5joEeqsmLiGoCAZPQ" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_TkimBJjoEeqsmLiGoCAZPQ" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_TkimBZjoEeqsmLiGoCAZPQ" type="Class_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_ZQ1acJjoEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="AAS%20Example.uml#_KdZbUZjoEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ZQ1acZjoEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_TkimBpjoEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_TkimB5joEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_TkimCJjoEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TkimCZjoEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_TkimCpjoEeqsmLiGoCAZPQ" type="Class_OperationCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_ZQ2BgJjoEeqsmLiGoCAZPQ" type="Operation_ClassOperationLabel">
+          <element xmi:type="uml:Operation" href="AAS%20Example.uml#_KdZbUpjoEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ZQ2BgZjoEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ZQ2okJjoEeqsmLiGoCAZPQ" type="Operation_ClassOperationLabel">
+          <element xmi:type="uml:Operation" href="AAS%20Example.uml#_KdZbU5joEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ZQ2okZjoEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ZQ2okpjoEeqsmLiGoCAZPQ" type="Operation_ClassOperationLabel">
+          <element xmi:type="uml:Operation" href="AAS%20Example.uml#_KdZbVJjoEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ZQ2ok5joEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ZQ2olJjoEeqsmLiGoCAZPQ" type="Operation_ClassOperationLabel">
+          <element xmi:type="uml:Operation" href="AAS%20Example.uml#_KdZbVZjoEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ZQ2olZjoEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ZQ2olpjoEeqsmLiGoCAZPQ" type="Operation_ClassOperationLabel">
+          <element xmi:type="uml:Operation" href="AAS%20Example.uml#_KdZbVpjoEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ZQ2ol5joEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_TkimC5joEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_TkimDJjoEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_TkjNEJjoEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TkjNEZjoEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_TkjNEpjoEeqsmLiGoCAZPQ" visible="false" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_TkjNE5joEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_TkjNFJjoEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_TkjNFZjoEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TkjNFpjoEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_TkneipjoEeqsmLiGoCAZPQ" type="StereotypeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_6CpqsJjoEeqsmLiGoCAZPQ" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_6CpqsZjoEeqsmLiGoCAZPQ" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Tknei5joEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_TknejJjoEeqsmLiGoCAZPQ" name="stereotype" stringValue="AASUMLProfile::Submodel"/>
+        <element xmi:type="uml:Stereotype" href="platform:/resource/com.cea.papyrus.aas.profile/resources/aas.profile.uml#_S6sJoI7VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TknejZjoEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:Class" href="AAS%20Example.uml#_KdZbUJjoEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TkimAZjoEeqsmLiGoCAZPQ" x="179" y="20" width="302" height="330"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_KyMLcKiSEeqolcCq88ywEg" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_KyMLcaiSEeqolcCq88ywEg"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_KyMLc6iSEeqolcCq88ywEg" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="AAS%20Example.uml#_KdZbUJjoEeqsmLiGoCAZPQ"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KyMLcqiSEeqolcCq88ywEg" x="379" y="20"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_SdMjcZjoEeqsmLiGoCAZPQ" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_SdMjcpjoEeqsmLiGoCAZPQ"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_SdMjc5joEeqsmLiGoCAZPQ" diagramKindId="org.eclipse.papyrus.uml.diagram.class">
+      <owner xmi:type="uml:Model" href="AAS%20Example.uml#_BejAsGLUEeqatqZwFeQyDg"/>
+    </styles>
+    <element xmi:type="uml:Model" href="AAS%20Example.uml#_BejAsGLUEeqatqZwFeQyDg"/>
+    <edges xmi:type="notation:Connector" xmi:id="_KyMLdKiSEeqolcCq88ywEg" type="StereotypeCommentLink" source="_TkimAJjoEeqsmLiGoCAZPQ" target="_KyMLcKiSEeqolcCq88ywEg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_KyMLdaiSEeqolcCq88ywEg"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_KyMLeaiSEeqolcCq88ywEg" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="AAS%20Example.uml#_KdZbUJjoEeqsmLiGoCAZPQ"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KyMLdqiSEeqolcCq88ywEg" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KyMLd6iSEeqolcCq88ywEg"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KyMLeKiSEeqolcCq88ywEg"/>
+    </edges>
+  </notation:Diagram>
+</xmi:XMI>
diff --git a/examples/AAS UML Example/AAS Example.uml b/examples/AAS UML Example/AAS Example.uml
new file mode 100644
index 0000000..77512af
--- /dev/null
+++ b/examples/AAS UML Example/AAS Example.uml
@@ -0,0 +1,73 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:AASUMLProfile="http:///schemas/AASUMLProfile/_QBRX8JkGEeqsmLiGoCAZPQ/4" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http:///schemas/AASUMLProfile/_QBRX8JkGEeqsmLiGoCAZPQ/4 ../com.cea.papyrus.aas.profile/resources/aas.profile.uml#_QBR_AJkGEeqsmLiGoCAZPQ">
+  <uml:Model xmi:id="_BejAsGLUEeqatqZwFeQyDg" name="AAS Example">
+    <ownedComment xmi:type="uml:Comment" xmi:id="_D-wW0GLYEeqatqZwFeQyDg" annotatedElement="_P7l5EGLUEeqatqZwFeQyDg">
+      <body>Maybe to add the Protocol Information: mapping with the opc-ua server. For each operation in the AAS submodel, we will have a mapping with the opc-ua operations</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_8Pr84GLYEeqatqZwFeQyDg" annotatedElement="_UEytoGLVEeqatqZwFeQyDg">
+      <body>We need to check the syntax for the uid</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_Or4ycGLZEeqatqZwFeQyDg">
+      <body>What are the meta information that have to be included in the canvaas modeling environment ?</body>
+    </ownedComment>
+    <packageImport xmi:type="uml:PackageImport" xmi:id="_BgeTUGLUEeqatqZwFeQyDg">
+      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+    </packageImport>
+    <packagedElement xmi:type="uml:Class" xmi:id="_P7l5EGLUEeqatqZwFeQyDg" name="ControlSM">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_X_pPEGLUEeqatqZwFeQyDg" name="occupier">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+      <ownedOperation xmi:type="uml:Operation" xmi:id="_GBEUMGLVEeqatqZwFeQyDg" name="execute"/>
+      <ownedOperation xmi:type="uml:Operation" xmi:id="_KgYYIGLVEeqatqZwFeQyDg" name="start"/>
+      <ownedOperation xmi:type="uml:Operation" xmi:id="_L_jE0GLVEeqatqZwFeQyDg" name="stop"/>
+      <ownedOperation xmi:type="uml:Operation" xmi:id="_NoCsoGLVEeqatqZwFeQyDg" name="reset"/>
+      <ownedOperation xmi:type="uml:Operation" xmi:id="_OmtUUGLVEeqatqZwFeQyDg" name="refresh"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Class" xmi:id="_UEytoGLVEeqatqZwFeQyDg" name="DeviceAAS">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_hXmngGLVEeqatqZwFeQyDg" name="uid">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        <defaultValue xmi:type="uml:LiteralString" xmi:id="_su36YGLYEeqatqZwFeQyDg" name="value"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_iMgnEJkLEeqsmLiGoCAZPQ" name="Property3"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_KdZbUJjoEeqsmLiGoCAZPQ" name="ControlSM">
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_KdZbUZjoEeqsmLiGoCAZPQ" name="occupier">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        </ownedAttribute>
+        <ownedOperation xmi:type="uml:Operation" xmi:id="_KdZbUpjoEeqsmLiGoCAZPQ" name="execute"/>
+        <ownedOperation xmi:type="uml:Operation" xmi:id="_KdZbU5joEeqsmLiGoCAZPQ" name="start"/>
+        <ownedOperation xmi:type="uml:Operation" xmi:id="_KdZbVJjoEeqsmLiGoCAZPQ" name="stop"/>
+        <ownedOperation xmi:type="uml:Operation" xmi:id="_KdZbVZjoEeqsmLiGoCAZPQ" name="reset"/>
+        <ownedOperation xmi:type="uml:Operation" xmi:id="_KdZbVpjoEeqsmLiGoCAZPQ" name="refresh"/>
+      </nestedClassifier>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Package" xmi:id="_TTru4GLXEeqatqZwFeQyDg" name="Protocol">
+      <packagedElement xmi:type="uml:Class" xmi:id="_Xy0zsGLXEeqatqZwFeQyDg" name="OPC-UA Server">
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_akYVUGLXEeqatqZwFeQyDg" name="address">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+          <defaultValue xmi:type="uml:LiteralString" xmi:id="_mO5bsGLXEeqatqZwFeQyDg" name="address" value="localhost"/>
+        </ownedAttribute>
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_nsroUGLXEeqatqZwFeQyDg" name="endpoint">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        </ownedAttribute>
+      </packagedElement>
+    </packagedElement>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_CSFn0JWoEeqsmLiGoCAZPQ">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_UafoYJ9QEeqHH8LtZOjghw" source="PapyrusVersion">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_UafoYZ9QEeqHH8LtZOjghw" key="Version" value="0.0.5"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_UafoYp9QEeqHH8LtZOjghw" key="Comment" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_UafoY59QEeqHH8LtZOjghw" key="Copyright" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_UafoZJ9QEeqHH8LtZOjghw" key="Date" value="2020-05-18"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_UafoZZ9QEeqHH8LtZOjghw" key="Author" value=""/>
+      </eAnnotations>
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CSGO4JWoEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="../com.cea.papyrus.aas.profile/resources/aas.profile.uml#_QBR_AJkGEeqsmLiGoCAZPQ"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="../com.cea.papyrus.aas.profile/resources/aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    </profileApplication>
+  </uml:Model>
+  <AASUMLProfile:AssetAdministrationShell xmi:id="_E3rxEJWoEeqsmLiGoCAZPQ" idShort="xyz" base_Class="_UEytoGLVEeqatqZwFeQyDg" submodel="_GKYvEJWoEeqsmLiGoCAZPQ">
+    <identification xmi:type="AASUMLProfile:Identifier" xmi:id="_kw5JIKiSEeqolcCq88ywEg" id="dfhjdfk"/>
+  </AASUMLProfile:AssetAdministrationShell>
+  <AASUMLProfile:Submodel xmi:id="_GKYvEJWoEeqsmLiGoCAZPQ" base_Class="_P7l5EGLUEeqatqZwFeQyDg" base_HasKind_Class="_P7l5EGLUEeqatqZwFeQyDg" base_HasSemantics_Class="_P7l5EGLUEeqatqZwFeQyDg"/>
+  <AASUMLProfile:Submodel xmi:id="_KdbQgJjoEeqsmLiGoCAZPQ" base_Class="_KdZbUJjoEeqsmLiGoCAZPQ" base_HasKind_Class="_KdZbUJjoEeqsmLiGoCAZPQ" base_HasSemantics_Class="_KdZbUJjoEeqsmLiGoCAZPQ"/>
+</xmi:XMI>
diff --git a/examples/AAS UML Example/FESTO-Demonstrator.di b/examples/AAS UML Example/FESTO-Demonstrator.di
new file mode 100644
index 0000000..599823d
--- /dev/null
+++ b/examples/AAS UML Example/FESTO-Demonstrator.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.aas.ml"/>

diff --git a/examples/AAS UML Example/FESTO-Demonstrator.notation b/examples/AAS UML Example/FESTO-Demonstrator.notation
new file mode 100644
index 0000000..f3d4d53
--- /dev/null
+++ b/examples/AAS UML Example/FESTO-Demonstrator.notation
@@ -0,0 +1,1443 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">

+  <notation:Diagram xmi:id="_AD5DULs2EeqdpOpFTAVDtA" type="PapyrusUMLClassDiagram" name="FESTO demonstrator AAS" measurementUnit="Pixel">

+    <children xmi:type="notation:Shape" xmi:id="_QIOpoLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_QIP3wLs2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_QIP3wbs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_QIP3wrs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_QIP3w7s2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_QIP3xLs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_QIP3xbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QIP3xrs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIP3x7s2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_QIQe0Ls2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_QIQe0bs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_QIQe0rs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QIQe07s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIQe1Ls2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_QIRF4Ls2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_QIRF4bs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_QIRF4rs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QIRF47s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIRF5Ls2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QHzL0Ls2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIOpobs2EeqdpOpFTAVDtA" x="80" y="80" width="281"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_QIkA0Ls2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_QIkA0bs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_QIkA07s2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QHzL0Ls2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIkA0rs2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_QraPMLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Qra2QLs2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Qra2Qbs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Qra2Qrs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Qra2Q7s2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Qra2RLs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Qra2Rbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Qra2Rrs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qra2R7s2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Qra2SLs2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Qra2Sbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Qra2Srs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Qra2S7s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qra2TLs2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Qra2Tbs2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Qra2Trs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Qra2T7s2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Qra2ULs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qra2Ubs2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QrUvoLs2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QraPMbs2EeqdpOpFTAVDtA" x="400" y="80" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Qrl1YLs2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Qrl1Ybs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Qrl1Y7s2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QrUvoLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qrl1Yrs2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Q-82QLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Q--EYLs2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Q--rcLs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Q--rcbs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Q-_SgLs2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Q-_Sgbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Q-_Sgrs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Q-_Sg7s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-_ShLs2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Q-_Shbs2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Q-_Shrs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Q-_Sh7s2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Q-_SiLs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-_Sibs2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Q-_5kLs2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Q-_5kbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Q-_5krs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Q-_5k7s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-_5lLs2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Q-sXkLs2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-82Qbs2EeqdpOpFTAVDtA" x="720" y="80" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Q_b-cLs2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Q_b-cbs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Q_b-c7s2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Q-sXkLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q_b-crs2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_RenNwLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Ren00Ls2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Ren00bs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Ren00rs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Ren007s2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Reob4Ls2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Reob4bs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Reob4rs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Reob47s2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Reob5Ls2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Reob5bs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Reob5rs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Reob57s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Reob6Ls2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Reob6bs2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Reob6rs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Reob67s2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Reob7Ls2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Reob7bs2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ReZyYLs2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RenNwbs2EeqdpOpFTAVDtA" x="80" y="1300" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Re6vw7s2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Re6vxLs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Re7W0Ls2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ReZyYLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Re6vxbs2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_SG-OQLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_SG-1ULs2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_SG-1Ubs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_SG-1Urs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_SG-1U7s2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_SG-1VLs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_SG-1Vbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_SG-1Vrs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SG-1V7s2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_SG-1WLs2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_SG-1Wbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_SG-1Wrs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_SG-1W7s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SG-1XLs2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_SG-1Xbs2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_SG-1Xrs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_SG-1X7s2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_SG-1YLs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SG-1Ybs2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_SG580Ls2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SG-OQbs2EeqdpOpFTAVDtA" x="80" y="500" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_SHHYNbs2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_SHHYNrs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_SHH_QLs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_SG580Ls2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SHHYN7s2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Wb2QELtzEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Wb2QErtzEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Wb2QE7tzEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Wb2QFLtzEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Wb2QFbtzEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Wb2QFrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Wb2QF7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Wb2QGLtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb23ILtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Wb23IbtzEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Wb23IrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Wb23I7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Wb23JLtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb23JbtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Wb23JrtzEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Wb23J7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Wb23KLtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Wb23KbtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb23KrtzEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_WbzMwLtzEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb2QEbtzEeqdpOpFTAVDtA" x="80" y="880" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Wb7vo7tzEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Wb7vpLtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Wb7vprtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_WbzMwLtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb7vpbtzEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_XV42cLtzEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_XV5dgLtzEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_XV5dgbtzEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_XV5dgrtzEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_XV5dg7tzEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_XV5dhLtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_XV5dhbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_XV5dhrtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV5dh7tzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_XV5diLtzEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_XV5dibtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_XV5dirtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_XV5di7tzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV5djLtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_XV5djbtzEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_XV5djrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_XV5dj7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_XV5dkLtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV5dkbtzEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_XV2aMLtzEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV42cbtzEeqdpOpFTAVDtA" x="400" y="880" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_XV-WCbtzEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_XV-WCrtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_XV-WDLtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_XV2aMLtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV-WC7tzEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_X5mngLtzEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_X5nOkLtzEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_X5nOkbtzEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_X5nOkrtzEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_X5nOk7tzEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_X5nOlLtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_X5nOlbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_X5nOlrtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5nOl7tzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_X5nOmLtzEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_X5nOmbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_X5nOmrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_X5nOm7tzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5nOnLtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_X5nOnbtzEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_X5nOnrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_X5nOn7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_X5nOoLtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5nOobtzEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_X5hH8LtzEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5mngbtzEeqdpOpFTAVDtA" x="720" y="880" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_X5t8Q7tzEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_X5t8RLtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_X5t8RrtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_X5hH8LtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5t8RbtzEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_lD10MLtzEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_lD2bQLtzEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_lD2bQbtzEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_lD2bQrtzEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_lD2bQ7tzEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_lD2bRLtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_lD2bRbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_lD2bRrtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD2bR7tzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_lD2bSLtzEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_lD2bSbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_lD2bSrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_lD2bS7tzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD2bTLtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_lD2bTbtzEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_lD2bTrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_lD2bT7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_lD2bULtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD2bUbtzEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_lDz_ALtzEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD10MbtzEeqdpOpFTAVDtA" x="400" y="1300" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_lD6FoLtzEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_lD6FobtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_lD6Fo7tzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_lDz_ALtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD6FortzEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <styles xmi:type="notation:StringValueStyle" xmi:id="_AD5DUbs2EeqdpOpFTAVDtA" name="diagram_compatibility_version" stringValue="1.4.0"/>

+    <styles xmi:type="notation:DiagramStyle" xmi:id="_AD5DUrs2EeqdpOpFTAVDtA"/>

+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_AD5DU7s2EeqdpOpFTAVDtA" diagramKindId="org.eclipse.papyrus.aas.design.diagram">

+      <owner xmi:type="uml:Package" href="FESTO-Demonstrator.uml#_mO1PYLttEeqdpOpFTAVDtA"/>

+    </styles>

+    <element xmi:type="uml:Model" href="FESTO-Demonstrator.uml#_3KYE8Ls1EeqdpOpFTAVDtA"/>

+    <edges xmi:type="notation:Connector" xmi:id="_QIkA1Ls2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_QIOpoLs2EeqdpOpFTAVDtA" target="_QIkA0Ls2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_QIkA1bs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_QIkA2bs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QHzL0Ls2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QIkA1rs2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QIkA17s2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QIkA2Ls2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Qrl1ZLs2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_QraPMLs2EeqdpOpFTAVDtA" target="_Qrl1YLs2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Qrl1Zbs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Qrl1abs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QrUvoLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Qrl1Zrs2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qrl1Z7s2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qrl1aLs2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Q_clgLs2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Q-82QLs2EeqdpOpFTAVDtA" target="_Q_b-cLs2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Q_clgbs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Q_dMkLs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Q-sXkLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Q_clgrs2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Q_clg7s2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Q_clhLs2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Re7W0bs2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_RenNwLs2EeqdpOpFTAVDtA" target="_Re6vw7s2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Re7W0rs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Re7W1rs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ReZyYLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Re7W07s2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Re7W1Ls2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Re7W1bs2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_SHH_Qbs2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_SG-OQLs2EeqdpOpFTAVDtA" target="_SHHYNbs2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_SHH_Qrs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_SHH_Rrs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_SG580Ls2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SHH_Q7s2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SHH_RLs2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SHH_Rbs2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Wb7vp7tzEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Wb2QELtzEeqdpOpFTAVDtA" target="_Wb7vo7tzEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Wb7vqLtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Wb7vrLtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_WbzMwLtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Wb7vqbtzEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Wb7vqrtzEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Wb7vq7tzEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_XV-9ELtzEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_XV42cLtzEeqdpOpFTAVDtA" target="_XV-WCbtzEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_XV-9EbtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_XV-9FbtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_XV2aMLtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XV-9ErtzEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XV-9E7tzEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XV-9FLtzEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_X5t8R7tzEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_X5mngLtzEeqdpOpFTAVDtA" target="_X5t8Q7tzEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_X5t8SLtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_X5t8TLtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_X5hH8LtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_X5t8SbtzEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_X5t8SrtzEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_X5t8S7tzEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_lD6FpLtzEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_lD10MLtzEeqdpOpFTAVDtA" target="_lD6FoLtzEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_lD6FpbtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_lD6FqbtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_lDz_ALtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lD6FprtzEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lD6Fp7tzEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lD6FqLtzEeqdpOpFTAVDtA"/>

+    </edges>

+  </notation:Diagram>

+  <notation:Diagram xmi:id="_HfJ7ALs2EeqdpOpFTAVDtA" type="PapyrusUMLClassDiagram" name="FESTO demonstrator Assets" measurementUnit="Pixel">

+    <children xmi:type="notation:Shape" xmi:id="_gcak0LttEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_gcjuwLttEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_gcjuwbttEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_gcjuwrttEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_gck84LttEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_gck84bttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_gck84rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gck847ttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gck85LttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_gclj8LttEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_gclj8bttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_gclj8rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gclj87ttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gclj9LttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_gcmLALttEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_gcmLAbttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_gcmLArttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gcmLA7ttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gcmLBLttEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ga0pYLttEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gcak0bttEeqdpOpFTAVDtA" x="80" y="40" width="241"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_gdj0ULttEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_gdj0UbttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_gdkbYLttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ga0pYLttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gdj0UrttEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_yuIBoLttEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_yuIBorttEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_yuIBo7ttEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_yuIosLttEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_yuIosbttEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_yuIosrttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_yuIos7ttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_yuIotLttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuIotbttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_yuIotrttEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_yuIot7ttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_yuIouLttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_yuIoubttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuIourttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_yuIou7ttEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_yuIovLttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_yuIovbttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_yuIovrttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuIov7ttEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_yuB7ALttEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuIBobttEeqdpOpFTAVDtA" x="360" y="40" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_yuRyo7ttEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_yuRypLttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_yuRyprttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_yuB7ALttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuRypbttEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_-ZsQ4LttEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_-ZsQ4rttEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_-ZsQ47ttEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_-ZsQ5LttEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_-ZsQ5bttEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_-ZsQ5rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_-ZsQ57ttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_-ZsQ6LttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-ZsQ6bttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_-Zs38LttEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_-Zs38bttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_-Zs38rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_-Zs387ttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-Zs39LttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_-Zs39bttEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_-Zs39rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_-Zs397ttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_-Zs3-LttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-Zs3-bttEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_-ZbLILttEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-ZsQ4bttEeqdpOpFTAVDtA" x="580" y="40" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_-Z1a07ttEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_-Z1a1LttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-Z1a1rttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_-ZbLILttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-Z1a1bttEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Cj-gALtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Cj-gArtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Cj-gA7tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Cj-gBLtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Cj-gBbtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Cj-gBrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Cj-gB7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Cj-gCLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cj-gCbtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Cj-gCrtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Cj-gC7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Cj-gDLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Cj-gDbtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cj-gDrtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Cj_HELtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Cj_HEbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Cj_HErtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Cj_HE7tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cj_HFLtuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Cj5AcLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cj-gAbtuEeqdpOpFTAVDtA" x="80" y="400" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_CkEmoLtuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_CkEmobtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_CkEmo7tuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Cj5AcLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CkEmortuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_JtNzkLtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_JtNzkrtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_JtNzk7tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_JtNzlLtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_JtNzlbtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_JtNzlrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_JtNzl7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JtNzmLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtNzmbtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_JtNzmrtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_JtNzm7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_JtNznLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JtNznbtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtNznrtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_JtNzn7tuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_JtNzoLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_JtNzobtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JtNzortuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtNzo7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_JtI7ELtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtNzkbtuEeqdpOpFTAVDtA" x="320" y="400" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_JtVvY7tuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_JtVvZLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_JtVvZrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_JtI7ELtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtVvZbtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_J8ha4LtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_J8ha4rtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_J8iB8LtuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_J8iB8btuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_J8iB8rtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_J8iB87tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_J8iB9LtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_J8iB9btuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8iB9rtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_J8iB97tuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_J8iB-LtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_J8iB-btuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_J8iB-rtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8iB-7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_J8iB_LtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_J8iB_btuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_J8iB_rtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_J8iB_7tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8iCALtuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_J8eXkLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8ha4btuEeqdpOpFTAVDtA" x="560" y="400" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_J8mTY7tuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_J8mTZLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_J8mTZrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_J8eXkLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8mTZbtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Ks35wLtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Ks35wrtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Ks35w7tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Ks35xLtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Ks35xbtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Ks35xrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Ks35x7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Ks35yLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks35ybtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Ks35yrtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Ks35y7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Ks35zLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Ks35zbtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks35zrtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Ks35z7tuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Ks350LtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Ks350btuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Ks350rtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks3507tuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Ks1dgLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks35wbtuEeqdpOpFTAVDtA" x="800" y="400" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Ks8yQLtuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Ks8yQbtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Ks8yQ7tuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Ks1dgLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks8yQrtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_K54bALtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_K54bArtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_K54bA7tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_K54bBLtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_K54bBbtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_K54bBrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_K54bB7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_K54bCLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K54bCbtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_K54bCrtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_K54bC7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_K54bDLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_K54bDbtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K54bDrtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_K54bD7tuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_K54bELtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_K54bEbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_K54bErtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K54bE7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_K51-wLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K54bAbtuEeqdpOpFTAVDtA" x="320" y="760" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_K58sdbtuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_K58sdrtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_K58seLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_K51-wLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K58sd7tuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_LFJ24LtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_LFJ24rtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_LFJ247tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_LFJ25LtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_LFJ25btuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_LFJ25rtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_LFJ257tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_LFJ26LtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFJ26btuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_LFJ26rtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_LFJ267tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_LFJ27LtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_LFJ27btuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFJ27rtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_LFKd8LtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_LFKd8btuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_LFKd8rtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_LFKd87tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFKd9LtuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_LFHaoLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFJ24btuEeqdpOpFTAVDtA" x="80" y="760" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_LFOvY7tuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_LFOvZLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_LFOvZrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_LFHaoLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFOvZbtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <styles xmi:type="notation:StringValueStyle" xmi:id="_HfJ7Abs2EeqdpOpFTAVDtA" name="diagram_compatibility_version" stringValue="1.4.0"/>

+    <styles xmi:type="notation:DiagramStyle" xmi:id="_HfJ7Ars2EeqdpOpFTAVDtA"/>

+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_HfJ7A7s2EeqdpOpFTAVDtA" diagramKindId="org.eclipse.papyrus.aas.design.diagram">

+      <owner xmi:type="uml:Package" href="FESTO-Demonstrator.uml#_oby2MLttEeqdpOpFTAVDtA"/>

+    </styles>

+    <element xmi:type="uml:Model" href="FESTO-Demonstrator.uml#_3KYE8Ls1EeqdpOpFTAVDtA"/>

+    <edges xmi:type="notation:Connector" xmi:id="_gdlCcLttEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_gcak0LttEeqdpOpFTAVDtA" target="_gdj0ULttEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_gdlCcbttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_gdmQkrttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ga0pYLttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gdlCcrttEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gdmQkLttEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gdmQkbttEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_yuRyp7ttEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_yuIBoLttEeqdpOpFTAVDtA" target="_yuRyo7ttEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_yuRyqLttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_yuSZsLttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_yuB7ALttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yuRyqbttEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yuRyqrttEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yuRyq7ttEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_-Z2B4LttEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_-ZsQ4LttEeqdpOpFTAVDtA" target="_-Z1a07ttEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_-Z2B4bttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-Z2B5bttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_-ZbLILttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-Z2B4rttEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-Z2B47ttEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-Z2B5LttEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_CkEmpLtuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Cj-gALtuEeqdpOpFTAVDtA" target="_CkEmoLtuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_CkEmpbtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_CkEmqbtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Cj5AcLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CkEmprtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CkEmp7tuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CkEmqLtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_JtVvZ7tuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_JtNzkLtuEeqdpOpFTAVDtA" target="_JtVvY7tuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_JtVvaLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_JtVvbLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_JtI7ELtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JtVvabtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JtVvartuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JtVva7tuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_J8mTZ7tuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_J8ha4LtuEeqdpOpFTAVDtA" target="_J8mTY7tuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_J8mTaLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_J8mTbLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_J8eXkLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_J8mTabtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J8mTartuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J8mTa7tuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Ks8yRLtuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Ks35wLtuEeqdpOpFTAVDtA" target="_Ks8yQLtuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Ks8yRbtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Ks8ySbtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Ks1dgLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ks8yRrtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ks8yR7tuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ks8ySLtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_K58sebtuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_K54bALtuEeqdpOpFTAVDtA" target="_K58sdbtuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_K58sertuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_K58sfrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_K51-wLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_K58se7tuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_K58sfLtuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_K58sfbtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_LFOvZ7tuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_LFJ24LtuEeqdpOpFTAVDtA" target="_LFOvY7tuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_LFOvaLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_LFOvbLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_LFHaoLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LFOvabtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LFOvartuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LFOva7tuEeqdpOpFTAVDtA"/>

+    </edges>

+  </notation:Diagram>

+  <notation:Diagram xmi:id="_L4ersLs2EeqdpOpFTAVDtA" type="PapyrusUMLClassDiagram" name="FESTO demonstrator Submodels" measurementUnit="Pixel">

+    <children xmi:type="notation:Shape" xmi:id="_wcybsLtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_wczCwLtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_wczCwbtuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_wczCwrtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wczCw7tuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_T8c80LtwEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_T8QvkLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_T8c80btwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wczCxLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wczCxbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wczCxrtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wczCx7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wczCyLtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_bwGfULtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_bv9VYLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_bwGfUbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wczCybtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wczCyrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wczCy7tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wczCzLtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wczCzbtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wczCzrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wczCz7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wczC0LtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wczC0btuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wcwmgLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wcybsbtuEeqdpOpFTAVDtA" x="420" y="40" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_wc7lqbtuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_wc7lqrtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wc8MsLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wcwmgLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wc7lq7tuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_6gpGQLtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_6gptULtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_6gptUbtuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_6gptUrtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_6gptU7tuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_zx12gLtvEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_zxkwwLtvEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_zx12gbtvEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_6gptVLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_6gptVbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_6gptVrtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gptV7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_6gptWLtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_8kafYLtvEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_8kG9YLtvEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_8kafYbtvEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_6gptWbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_6gptWrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_6gptW7tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gptXLtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_6gptXbtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_6gptXrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_6gptX7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_6gptYLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gptYbtuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_6gi_oLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gpGQbtuEeqdpOpFTAVDtA" x="780" y="40" width="281" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_6gxCF7tuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_6gxCGLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_6gxCGrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_6gi_oLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gxCGbtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_hetA4LtwEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_hetn8LtwEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_hetn8btwEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_hetn8rtwEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_hetn87twEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_iP_68LtwEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_iPwDULtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_iP_68btwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_hetn9LtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_hetn9btwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_hetn9rtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hetn97twEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_hetn-LtwEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_jqUj4LtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_jqKL0LtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_jqUj4btwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_j6dRoLtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_j6XLALtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_j6dRobtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kErkoLtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kEk28LtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kErkobtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kOiEMLtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kOavcLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kOiEMbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kY1PsLtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kYq3oLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kY1PsbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_hetn-btwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_hetn-rtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_hetn-7twEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hetn_LtwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_hetn_btwEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_hetn_rtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_hetn_7twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_hetoALtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hetoAbtwEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_heqkoLtwEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hetA4btwEeqdpOpFTAVDtA" x="40" y="40" width="301" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_he0VrbtwEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_he0VrrtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_he08sLtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_heqkoLtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_he0Vr7twEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_wV2bULtwEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_wV2bUrtwEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_wV2bU7twEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_wV2bVLtwEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wV2bVbtwEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_xnfCULtwEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_xnPKsLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xnfCUbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_xztgcLtwEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_xznZ0LtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xztgcbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wV2bVrtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wV2bV7twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wV2bWLtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV2bWbtwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wV3CYLtwEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_y9NfILtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_y9HYgLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_y9NfIbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_zkOb0LtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_zkCOkLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_zkOb0btwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wV3CYbtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wV3CYrtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wV3CY7twEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV3CZLtwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wV3CZbtwEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wV3CZrtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wV3CZ7twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wV3CaLtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV3CabtwEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wVzYALtwEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV2bUbtwEeqdpOpFTAVDtA" x="40" y="600" width="301" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_wV-XK7twEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_wV-XLLtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wV-XLrtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wVzYALtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV-XLbtwEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_92CC0LtwEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_92CC0rtwEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_92CC07twEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_92CC1LtwEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_92CC1btwEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_Abm98LtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_AbebELtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Abm98btxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_Cse0YLtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_CsXfoLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Cse0YbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_92CC1rtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_92CC17twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_92CC2LtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92CC2btwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_92CC2rtwEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_KiV9YLtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_KiP2wLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_KiV9YbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_KxsA8LtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_Kxl6ULtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_KxsA8btxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_LXYvALtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_LXTPcLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_LXYvAbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_92CC27twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_92CC3LtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_92CC3btwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92CC3rtwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_92CC37twEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_92CC4LtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_92CC4btwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_92CC4rtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92CC47twEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_91_mkLtwEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92CC0btwEeqdpOpFTAVDtA" x="420" y="600" width="281" height="500"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_92HiYLtwEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_92HiYbtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_92HiY7twEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_91_mkLtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92HiYrtwEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Y8ddkLtxEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Y8ddkrtxEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Y8ddk7txEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Y8ddlLtxEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Y8ddlbtxEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_eY7tULtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_eYwuMLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_eY7tUbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_fSImMLtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_fSB4gLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_fSImMbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Y8ddlrtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Y8ddl7txEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Y8ddmLtxEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8ddmbtxEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Y8eEoLtxEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_jfTKMLtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_jfMcgLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_jfTKMbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kLp54LtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kLjMMLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kLp54btxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kXU-YLtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kXO3wLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kXU-YbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kiz1oLtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kitH8LtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kiz1obtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Y8eEobtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Y8eEortxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Y8eEo7txEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8eEpLtxEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Y8eEpbtxEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Y8eEprtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Y8eEp7txEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Y8eEqLtxEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8eEqbtxEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Y8ZzMLtxEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8ddkbtxEeqdpOpFTAVDtA" x="780" y="600" width="281" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Y8kyU7txEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Y8kyVLtxEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y8kyVrtxEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Y8ZzMLtxEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8kyVbtxEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_41nAcLtxEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_41nAcrtxEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_41nAc7txEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_41nAdLtxEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_41nAdbtxEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_6RJKULtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_6RAAYLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_6RJKUbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_6ezy4LtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_6euTULtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_6ezy4btxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_7OjNwLtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_7ObR8LtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_7OjNwbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_7cZcgLtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_7cPrgLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_7cZcgbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_8EKAELtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_8EA2ILtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_8EKAEbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_41nAdrtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_41nAd7txEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_41nAeLtxEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41nAebtxEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_41nngLtxEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_Cl6c4LtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_Clu2sLtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Cl6c4btyEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_CytiwLtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_CyncILtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_CytiwbtyEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_C9Zv0LtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_C9TpMLtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_C9Zv0btyEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_DIQU8LtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_DIJnQLtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_DIQU8btyEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_DT154LtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_DTvzQLtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_DT154btyEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_41nngbtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_41nngrtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_41nng7txEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41nnhLtxEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_41nnhbtxEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_41nnhrtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_41nnh7txEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_41nniLtxEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41nnibtxEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_41kkMLtxEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41nAcbtxEeqdpOpFTAVDtA" x="1140" y="300"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_41sgA7txEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_41sgBLtxEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_41sgBrtxEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_41kkMLtxEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41sgBbtxEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Pu0M0LtyEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Pu0M0rtyEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Pu0z4LtyEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Pu0z4btyEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Pu0z4rtyEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Pu0z47tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Pu0z5LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Pu0z5btyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu0z5rtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Pu0z57tyEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Pu0z6LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Pu0z6btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Pu0z6rtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu0z67tyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Pu0z7LtyEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Pu0z7btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Pu0z7rtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Pu0z77tyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu0z8LtyEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_PuyXoLtyEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu0M0btyEeqdpOpFTAVDtA" x="40" y="1160" width="301" height="441"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Pu5sa7tyEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Pu5sbLtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Pu5sbrtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_PuyXoLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu5sbbtyEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Rw0g0LtyEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Rw0g0rtyEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Rw0g07tyEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Rw0g1LtyEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Rw0g1btyEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Rw0g1rtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Rw0g17tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Rw0g2LtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw0g2btyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Rw0g2rtyEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Rw0g27tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Rw0g3LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Rw0g3btyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw0g3rtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Rw0g37tyEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Rw0g4LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Rw0g4btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Rw0g4rtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw0g47tyEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_RwxdgLtyEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw0g0btyEeqdpOpFTAVDtA" x="420" y="1160" width="281" height="440"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Rw6AYLtyEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Rw6AYbtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Rw6AY7tyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_RwxdgLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw6AYrtyEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_UOMiMLtyEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_UOMiMrtyEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_UOMiM7tyEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_UOMiNLtyEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_UOMiNbtyEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_UOMiNrtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_UOMiN7tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_UOMiOLtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOMiObtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_UOMiOrtyEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_UOMiO7tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_UOMiPLtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_UOMiPbtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOMiPrtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_UOMiP7tyEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_UOMiQLtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_UOMiQbtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_UOMiQrtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOMiQ7tyEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_UOKF8LtyEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOMiMbtyEeqdpOpFTAVDtA" x="40" y="1660" width="301" height="421"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_UOSo07tyEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_UOSo1LtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_UOSo1rtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_UOKF8LtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOSo1btyEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_VgsE0LtyEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_VgsE0rtyEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Vgsr4LtyEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Vgsr4btyEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Vgsr4rtyEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Vgsr47tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Vgsr5LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Vgsr5btyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vgsr5rtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Vgsr57tyEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Vgsr6LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Vgsr6btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Vgsr6rtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vgsr67tyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Vgsr7LtyEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Vgsr7btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Vgsr7rtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Vgsr77tyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vgsr8LtyEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_VgqPoLtyEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VgsE0btyEeqdpOpFTAVDtA" x="420" y="1660" width="281" height="421"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Vgyyg7tyEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_VgyyhLtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VgyyhrtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_VgqPoLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VgyyhbtyEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <styles xmi:type="notation:StringValueStyle" xmi:id="_L4ersbs2EeqdpOpFTAVDtA" name="diagram_compatibility_version" stringValue="1.4.0"/>

+    <styles xmi:type="notation:DiagramStyle" xmi:id="_L4ersrs2EeqdpOpFTAVDtA"/>

+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_L4ers7s2EeqdpOpFTAVDtA" diagramKindId="org.eclipse.papyrus.aas.design.diagram">

+      <owner xmi:type="uml:Package" href="FESTO-Demonstrator.uml#_otlw0LttEeqdpOpFTAVDtA"/>

+    </styles>

+    <element xmi:type="uml:Model" href="FESTO-Demonstrator.uml#_3KYE8Ls1EeqdpOpFTAVDtA"/>

+    <edges xmi:type="notation:Connector" xmi:id="_wc8MsbtuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_wcybsLtuEeqdpOpFTAVDtA" target="_wc7lqbtuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_wc8MsrtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wc8MtrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wcwmgLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wc8Ms7tuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wc8MtLtuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wc8MtbtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_6gxCG7tuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_6gpGQLtuEeqdpOpFTAVDtA" target="_6gxCF7tuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_6gxCHLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_6gxpIrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_6gi_oLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6gxCHbtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6gxpILtuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6gxpIbtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_he08sbtwEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_hetA4LtwEeqdpOpFTAVDtA" target="_he0VrbtwEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_he08srtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_he08trtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_heqkoLtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_he08s7twEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_he08tLtwEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_he08tbtwEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_wV--MLtwEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_wV2bULtwEeqdpOpFTAVDtA" target="_wV-XK7twEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_wV--MbtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wV--NbtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wVzYALtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wV--MrtwEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wV--M7twEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wV--NLtwEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_92HiZLtwEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_92CC0LtwEeqdpOpFTAVDtA" target="_92HiYLtwEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_92HiZbtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_92HiabtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_91_mkLtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_92HiZrtwEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_92HiZ7twEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_92HiaLtwEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Y8lZYLtxEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Y8ddkLtxEeqdpOpFTAVDtA" target="_Y8kyU7txEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Y8lZYbtxEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y8lZZbtxEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Y8ZzMLtxEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y8lZYrtxEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y8lZY7txEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y8lZZLtxEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_41tHELtxEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_41nAcLtxEeqdpOpFTAVDtA" target="_41sgA7txEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_41tHEbtxEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_41tHFbtxEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_41kkMLtxEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_41tHErtxEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_41tHE7txEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_41tHFLtxEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Pu5sb7tyEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Pu0M0LtyEeqdpOpFTAVDtA" target="_Pu5sa7tyEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Pu5scLtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Pu6TcLtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_PuyXoLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Pu5scbtyEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Pu5scrtyEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Pu5sc7tyEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Rw6AZLtyEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Rw0g0LtyEeqdpOpFTAVDtA" target="_Rw6AYLtyEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Rw6AZbtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Rw6AabtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_RwxdgLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Rw6AZrtyEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Rw6AZ7tyEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Rw6AaLtyEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_UOTP4LtyEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_UOMiMLtyEeqdpOpFTAVDtA" target="_UOSo07tyEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_UOTP4btyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_UOTP5btyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_UOKF8LtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_UOTP4rtyEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UOTP47tyEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UOTP5LtyEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Vgyyh7tyEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_VgsE0LtyEeqdpOpFTAVDtA" target="_Vgyyg7tyEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_VgyyiLtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VgyyjLtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_VgqPoLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VgyyibtyEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VgyyirtyEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vgyyi7tyEeqdpOpFTAVDtA"/>

+    </edges>

+  </notation:Diagram>

+</xmi:XMI>

diff --git a/examples/AAS UML Example/FESTO-Demonstrator.uml b/examples/AAS UML Example/FESTO-Demonstrator.uml
new file mode 100644
index 0000000..1eabdcb
--- /dev/null
+++ b/examples/AAS UML Example/FESTO-Demonstrator.uml
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:AAS="http://www.eclipse.org/papyrus/AAS" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">

+  <uml:Model xmi:id="_3KYE8Ls1EeqdpOpFTAVDtA" name="FESTO-Demonstrator">

+    <packageImport xmi:type="uml:PackageImport" xmi:id="_3dHawLs1EeqdpOpFTAVDtA">

+      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>

+    </packageImport>

+    <packagedElement xmi:type="uml:Package" xmi:id="_mO1PYLttEeqdpOpFTAVDtA" name="AAS">

+      <packagedElement xmi:type="uml:Class" xmi:id="_QHzL0Ls2EeqdpOpFTAVDtA" name="AASProductionSystem"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_QrUvoLs2EeqdpOpFTAVDtA" name="AASWorkStation"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_Q-sXkLs2EeqdpOpFTAVDtA" name="AASMaterialStorage"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_ReZyYLs2EeqdpOpFTAVDtA" name="AASLidar"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_SG580Ls2EeqdpOpFTAVDtA" name="AASAGV"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_WbzMwLtzEeqdpOpFTAVDtA" name="AASCobot"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_XV2aMLtzEeqdpOpFTAVDtA" name="AASGripper"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_X5hH8LtzEeqdpOpFTAVDtA" name="AASBelt"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_lDz_ALtzEeqdpOpFTAVDtA" name="AASStereoCamera"/>

+    </packagedElement>

+    <packagedElement xmi:type="uml:Package" xmi:id="_oby2MLttEeqdpOpFTAVDtA" name="Assets">

+      <packagedElement xmi:type="uml:Class" xmi:id="_ga0pYLttEeqdpOpFTAVDtA" name="ProductionControlSystem"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_yuB7ALttEeqdpOpFTAVDtA" name="WorkStation"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_-ZbLILttEeqdpOpFTAVDtA" name="MaterialStoage"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_Cj5AcLtuEeqdpOpFTAVDtA" name="AGV"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_JtI7ELtuEeqdpOpFTAVDtA" name="Cobot"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_J8eXkLtuEeqdpOpFTAVDtA" name="Gripper"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_Ks1dgLtuEeqdpOpFTAVDtA" name="Belt"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_K51-wLtuEeqdpOpFTAVDtA" name="Lidar"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_LFHaoLtuEeqdpOpFTAVDtA" name="StereoCamera"/>

+    </packagedElement>

+    <packagedElement xmi:type="uml:Package" xmi:id="_otlw0LttEeqdpOpFTAVDtA" name="Submodels">

+      <packagedElement xmi:type="uml:Class" xmi:id="_wcwmgLtuEeqdpOpFTAVDtA" name="SM_WorkStation">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_T8QvkLtwEeqdpOpFTAVDtA" name="activeOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_bv9VYLtwEeqdpOpFTAVDtA" name="assignOrder"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_6gi_oLtuEeqdpOpFTAVDtA" name="SM_MaterialStorage">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_zxkwwLtvEeqdpOpFTAVDtA" name="ProvidedMaterials"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_8kG9YLtvEeqdpOpFTAVDtA" name="ProvidePart"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_heqkoLtwEeqdpOpFTAVDtA" name="SM_ProductionSystem">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_iPwDULtwEeqdpOpFTAVDtA" name="orders"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_jqKL0LtwEeqdpOpFTAVDtA" name="placeOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_j6XLALtwEeqdpOpFTAVDtA" name="abortOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kEk28LtwEeqdpOpFTAVDtA" name="startOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kOavcLtwEeqdpOpFTAVDtA" name="finishOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kYq3oLtwEeqdpOpFTAVDtA" name="requestMaterial"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_wVzYALtwEeqdpOpFTAVDtA" name="SM_Gripper">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_xnPKsLtwEeqdpOpFTAVDtA" name="state"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_xznZ0LtwEeqdpOpFTAVDtA" name="outputAddress"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_y9HYgLtwEeqdpOpFTAVDtA" name="open"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_zkCOkLtwEeqdpOpFTAVDtA" name="close"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_91_mkLtwEeqdpOpFTAVDtA" name="SM_ConveyorBelt">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_AbebELtxEeqdpOpFTAVDtA" name="state"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_CsXfoLtxEeqdpOpFTAVDtA" name="outputAddress"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_KiP2wLtxEeqdpOpFTAVDtA" name="runForwoard"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_Kxl6ULtxEeqdpOpFTAVDtA" name="runReverse"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_LXTPcLtxEeqdpOpFTAVDtA" name="stop"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_Y8ZzMLtxEeqdpOpFTAVDtA" name="SM_Cobot">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_eYwuMLtxEeqdpOpFTAVDtA" name="position"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_fSB4gLtxEeqdpOpFTAVDtA" name="gripperState"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_jfMcgLtxEeqdpOpFTAVDtA" name="moveToPosition"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kLjMMLtxEeqdpOpFTAVDtA" name="openGripper"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kXO3wLtxEeqdpOpFTAVDtA" name="closeGripper"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kitH8LtxEeqdpOpFTAVDtA" name="pickPart"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_41kkMLtxEeqdpOpFTAVDtA" name="SM_AGV">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_6RAAYLtxEeqdpOpFTAVDtA" name="operationMode"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_6euTULtxEeqdpOpFTAVDtA" name="batteryLevel"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_7ObR8LtxEeqdpOpFTAVDtA" name="position"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_7cPrgLtxEeqdpOpFTAVDtA" name="navigation"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_8EA2ILtxEeqdpOpFTAVDtA" name="manipulation"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_Clu2sLtyEeqdpOpFTAVDtA" name="assignIOToPerophery"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_CyncILtyEeqdpOpFTAVDtA" name="assignManipulationTechnology"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_C9TpMLtyEeqdpOpFTAVDtA" name="assignNavigationTechnology"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_DIJnQLtyEeqdpOpFTAVDtA" name="moveToPosition"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_DTvzQLtyEeqdpOpFTAVDtA" name="moveToStation"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_PuyXoLtyEeqdpOpFTAVDtA" name="SM_Lidar"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_RwxdgLtyEeqdpOpFTAVDtA" name="SM_StereoCam"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_UOKF8LtyEeqdpOpFTAVDtA" name="SM_PartSource"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_VgqPoLtyEeqdpOpFTAVDtA" name="SM_Documentation"/>

+    </packagedElement>

+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_3SVuILs1EeqdpOpFTAVDtA">

+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3SYKYLs1EeqdpOpFTAVDtA" source="http://www.eclipse.org/uml2/2.0.0/UML">

+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AAS#/"/>

+      </eAnnotations>

+      <appliedProfile xmi:type="uml:Profile" href="pathmap://AAS_PROFILE/aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>

+    </profileApplication>

+  </uml:Model>

+  <AAS:AssetAdministrationShell xmi:id="_QIE4oLs2EeqdpOpFTAVDtA" idShort="" base_Class="_QHzL0Ls2EeqdpOpFTAVDtA" asset="_gb5ncLttEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_QrXL4Ls2EeqdpOpFTAVDtA" idShort="" base_Class="_QrUvoLs2EeqdpOpFTAVDtA" asset="_yuE-ULttEeqdpOpFTAVDtA" submodel="_herywLtwEeqdpOpFTAVDtA _UOLUELtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_Q-2IkLs2EeqdpOpFTAVDtA" idShort="" base_Class="_Q-sXkLs2EeqdpOpFTAVDtA" asset="_-ZdnYLttEeqdpOpFTAVDtA" submodel="_UOLUELtyEeqdpOpFTAVDtA _6gmqALtuEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_ReggELs2EeqdpOpFTAVDtA" idShort="" base_Class="_ReZyYLs2EeqdpOpFTAVDtA" asset="_K53M4LtuEeqdpOpFTAVDtA" submodel="_VgrdwLtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_SG8ZELs2EeqdpOpFTAVDtA" idShort="" base_Class="_SG580Ls2EeqdpOpFTAVDtA" asset="_Cj7csLtuEeqdpOpFTAVDtA" submodel="_41lyULtxEeqdpOpFTAVDtA _herywLtwEeqdpOpFTAVDtA _VgrdwLtyEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_gb5ncLttEeqdpOpFTAVDtA" idShort="" base_Class="_ga0pYLttEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_yuE-ULttEeqdpOpFTAVDtA" base_Class="_yuB7ALttEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_-ZdnYLttEeqdpOpFTAVDtA" base_Class="_-ZbLILttEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_Cj7csLtuEeqdpOpFTAVDtA" idShort="" base_Class="_Cj5AcLtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_JtLXULtuEeqdpOpFTAVDtA" base_Class="_JtI7ELtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_J8gMwLtuEeqdpOpFTAVDtA" base_Class="_J8eXkLtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_Ks2roLtuEeqdpOpFTAVDtA" base_Class="_Ks1dgLtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_K53M4LtuEeqdpOpFTAVDtA" base_Class="_K51-wLtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_LFIowLtuEeqdpOpFTAVDtA" base_Class="_LFHaoLtuEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_wcxNkLtuEeqdpOpFTAVDtA" base_Class="_wcwmgLtuEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_6gmqALtuEeqdpOpFTAVDtA" base_Class="_6gi_oLtuEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_herywLtwEeqdpOpFTAVDtA" base_Class="_heqkoLtwEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_wV0mILtwEeqdpOpFTAVDtA" base_Class="_wVzYALtwEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_92A0sLtwEeqdpOpFTAVDtA" base_Class="_91_mkLtwEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_Y8boYLtxEeqdpOpFTAVDtA" base_Class="_Y8ZzMLtxEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_41lyULtxEeqdpOpFTAVDtA" base_Class="_41kkMLtxEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_PuzlwLtyEeqdpOpFTAVDtA" base_Class="_PuyXoLtyEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_RwyroLtyEeqdpOpFTAVDtA" base_Class="_RwxdgLtyEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_UOLUELtyEeqdpOpFTAVDtA" base_Class="_UOKF8LtyEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_VgrdwLtyEeqdpOpFTAVDtA" base_Class="_VgqPoLtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_Wb1B8LtzEeqdpOpFTAVDtA" idShort="" base_Class="_WbzMwLtzEeqdpOpFTAVDtA" asset="_JtLXULtuEeqdpOpFTAVDtA" submodel="_41lyULtxEeqdpOpFTAVDtA _VgrdwLtyEeqdpOpFTAVDtA _wV0mILtwEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_XV3oULtzEeqdpOpFTAVDtA" idShort="" base_Class="_XV2aMLtzEeqdpOpFTAVDtA" asset="_J8gMwLtuEeqdpOpFTAVDtA" submodel="_wV0mILtwEeqdpOpFTAVDtA _VgrdwLtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_X5kLQLtzEeqdpOpFTAVDtA" idShort="" base_Class="_X5hH8LtzEeqdpOpFTAVDtA" submodel="_92A0sLtwEeqdpOpFTAVDtA _VgrdwLtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_lD1NILtzEeqdpOpFTAVDtA" idShort="" base_Class="_lDz_ALtzEeqdpOpFTAVDtA" asset="_LFIowLtuEeqdpOpFTAVDtA" submodel="_VgrdwLtyEeqdpOpFTAVDtA"/>

+</xmi:XMI>

diff --git a/examples/Whirlpool AAS lib/Whirlpool AAS lib.di b/examples/Whirlpool AAS lib/Whirlpool AAS lib.di
new file mode 100644
index 0000000..8fbacc4
--- /dev/null
+++ b/examples/Whirlpool AAS lib/Whirlpool AAS lib.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.aas.ml"/>
diff --git a/examples/Whirlpool AAS lib/Whirlpool AAS lib.notation b/examples/Whirlpool AAS lib/Whirlpool AAS lib.notation
new file mode 100644
index 0000000..552b310
--- /dev/null
+++ b/examples/Whirlpool AAS lib/Whirlpool AAS lib.notation
@@ -0,0 +1,547 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+  <notation:Diagram xmi:id="_y2nCoNchEeq1stvyrA4Lkw" type="PapyrusUMLClassDiagram" name="Assets diagram" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_zsQRMNchEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_zsQRMtchEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_zsQRM9chEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_zsQRNNchEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_zsQ4QNchEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_zsQ4QdchEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_zsQ4QtchEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_zsQ4Q9chEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zsQ4RNchEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_zsQ4RdchEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_zsQ4RtchEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_zsQ4R9chEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_zsQ4SNchEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zsQ4SdchEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_zsQ4StchEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_zsQ4S9chEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_zsQ4TNchEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_zsQ4TdchEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zsQ4TtchEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_zp5gwNchEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zsQRMdchEeq1stvyrA4Lkw" x="80" y="40" width="221" height="221"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_zsUisdchEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_zsUistchEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_zsUitNchEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_zp5gwNchEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zsUis9chEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_LjMw0NclEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_LjMw0tclEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_LjMw09clEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_LjMw1NclEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_LjMw1dclEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_LjMw1tclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_LjMw19clEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_LjMw2NclEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LjMw2dclEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_LjNX4NclEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_LjNX4dclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_LjNX4tclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_LjNX49clEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LjNX5NclEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_LjNX5dclEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_LjNX5tclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_LjNX59clEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_LjNX6NclEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LjNX6dclEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_LjKUkNclEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LjMw0dclEeq1stvyrA4Lkw" x="360" y="40" width="201" height="201"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_LjRCQNclEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_LjRCQdclEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_LjRCQ9clEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_LjKUkNclEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LjRCQtclEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_DOscoNcoEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_DOscotcoEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_DOsco9coEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_DOtDsNcoEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_DOtDsdcoEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_DOtDstcoEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_DOtDs9coEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_DOtDtNcoEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DOtDtdcoEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_DOtDttcoEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_DOtDt9coEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_DOtDuNcoEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_DOtDudcoEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DOtDutcoEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_DOtDu9coEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_DOtDvNcoEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_DOtDvdcoEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_DOtDvtcoEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DOtDv9coEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_sV7VINcnEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DOscodcoEeq1stvyrA4Lkw" x="641" y="52"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_DOwHDdcoEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_DOwHDtcoEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_DOwHENcoEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_sV7VINcnEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_DOwHD9coEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_y2nCodchEeq1stvyrA4Lkw" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_y2nCotchEeq1stvyrA4Lkw"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_y2nCo9chEeq1stvyrA4Lkw" diagramKindId="org.eclipse.papyrus.aas.design.diagram">
+      <owner xmi:type="uml:Package" href="Whirlpool%20AAS%20lib.uml#_vQZw8NchEeq1stvyrA4Lkw"/>
+    </styles>
+    <element xmi:type="uml:Package" href="Whirlpool%20AAS%20lib.uml#_vQZw8NchEeq1stvyrA4Lkw"/>
+    <edges xmi:type="notation:Connector" xmi:id="_zsUitdchEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_zsQRMNchEeq1stvyrA4Lkw" target="_zsUisdchEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_zsUittchEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_zsUiutchEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_zp5gwNchEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_zsUit9chEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zsUiuNchEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_zsUiudchEeq1stvyrA4Lkw"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_LjRCRNclEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_LjMw0NclEeq1stvyrA4Lkw" target="_LjRCQNclEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_LjRCRdclEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_LjRCSdclEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_LjKUkNclEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LjRCRtclEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LjRCR9clEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LjRCSNclEeq1stvyrA4Lkw"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_DOwuENcoEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_DOscoNcoEeq1stvyrA4Lkw" target="_DOwHDdcoEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_DOwuEdcoEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_DOwuFdcoEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_sV7VINcnEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DOwuEtcoEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DOwuE9coEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DOwuFNcoEeq1stvyrA4Lkw"/>
+    </edges>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_MxLHMNciEeq1stvyrA4Lkw" type="PapyrusUMLClassDiagram" name="AAS Diagram" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_OEa3wNciEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_OEa3wtciEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_OEa3w9ciEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_OEa3xNciEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_OEa3xdciEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_OEa3xtciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_OEa3x9ciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_OEa3yNciEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEa3ydciEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_OEa3ytciEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_OEa3y9ciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_OEa3zNciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_OEa3zdciEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEa3ztciEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_OEa3z9ciEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_OEa30NciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_OEa30dciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_OEa30tciEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEa309ciEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_OEX0cNciEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEa3wdciEeq1stvyrA4Lkw" x="60" y="60" width="201" height="301"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_OEeiINciEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_OEeiIdciEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OEeiI9ciEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_OEX0cNciEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OEeiItciEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_YIpOYNclEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_YIp1cNclEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_YIp1cdclEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_YIp1ctclEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_YIp1c9clEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_YIp1dNclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_YIp1ddclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_YIp1dtclEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YIp1d9clEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_YIp1eNclEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_YIp1edclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_YIp1etclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_YIp1e9clEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YIp1fNclEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_YIp1fdclEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_YIp1ftclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_YIp1f9clEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_YIp1gNclEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YIp1gdclEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_YInZMNclEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YIpOYdclEeq1stvyrA4Lkw" x="360" y="60" width="201" height="301"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_YIs4wNclEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_YIs4wdclEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_YIs4w9clEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_YInZMNclEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YIs4wtclEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_H6Z90NcoEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_H6Z90tcoEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_H6Z909coEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_H6Z91NcoEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_H6Z91dcoEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_H6Z91tcoEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_H6Z919coEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_H6Z92NcoEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_H6Z92dcoEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_H6Z92tcoEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_H6Z929coEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_H6Z93NcoEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_H6Z93dcoEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_H6Z93tcoEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_H6ak4NcoEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_H6ak4dcoEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_H6ak4tcoEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_H6ak49coEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_H6ak5NcoEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_uDGooNcnEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_H6Z90dcoEeq1stvyrA4Lkw" x="580" y="60" width="201" height="301"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_H6ePR9coEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_H6ePSNcoEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_H6ePStcoEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_uDGooNcnEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_H6ePSdcoEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_MxLHMdciEeq1stvyrA4Lkw" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_MxLHMtciEeq1stvyrA4Lkw"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_MxLHM9ciEeq1stvyrA4Lkw" diagramKindId="org.eclipse.papyrus.aas.design.diagram">
+      <owner xmi:type="uml:Package" href="Whirlpool%20AAS%20lib.uml#_p5AOcNchEeq1stvyrA4Lkw"/>
+    </styles>
+    <element xmi:type="uml:Package" href="Whirlpool%20AAS%20lib.uml#_p5AOcNchEeq1stvyrA4Lkw"/>
+    <edges xmi:type="notation:Connector" xmi:id="_OEeiJNciEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_OEa3wNciEeq1stvyrA4Lkw" target="_OEeiINciEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_OEeiJdciEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_OEeiKdciEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_OEX0cNciEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OEeiJtciEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OEeiJ9ciEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OEeiKNciEeq1stvyrA4Lkw"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_YIs4xNclEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_YIpOYNclEeq1stvyrA4Lkw" target="_YIs4wNclEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_YIs4xdclEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_YIs4ydclEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_YInZMNclEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YIs4xtclEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YIs4x9clEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YIs4yNclEeq1stvyrA4Lkw"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_H6ePS9coEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_H6Z90NcoEeq1stvyrA4Lkw" target="_H6ePR9coEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_H6ePTNcoEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_H6ePUNcoEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_uDGooNcnEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_H6ePTdcoEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H6ePTtcoEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_H6ePT9coEeq1stvyrA4Lkw"/>
+    </edges>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_fMB48NciEeq1stvyrA4Lkw" type="PapyrusUMLClassDiagram" name="Submodels diagram" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_gf8X4NciEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_gf8X4tciEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_gf8X49ciEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_gf8X5NciEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_gf8X5dciEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_gf8X5tciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_gf8X59ciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gf8X6NciEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gf8X6dciEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_gf8X6tciEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_gf8X69ciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_gf8X7NciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gf8X7dciEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gf8X7tciEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_gf8X79ciEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_gf8X8NciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_gf8X8dciEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gf8X8tciEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gf8X89ciEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_gf5UkNciEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gf8X4dciEeq1stvyrA4Lkw" x="100" y="20"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_ggACVdciEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_ggACVtciEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ggACWNciEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_gf5UkNciEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ggACV9ciEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_cWlOcNclEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_cWl1gNclEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_cWl1gdclEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_cWl1gtclEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_cWl1g9clEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_lZrmoNclEeq1stvyrA4Lkw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="Whirlpool%20AAS%20lib.uml#_lZnVMNclEeq1stvyrA4Lkw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_lZrmodclEeq1stvyrA4Lkw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_rdzFMNclEeq1stvyrA4Lkw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="Whirlpool%20AAS%20lib.uml#_rdtloNclEeq1stvyrA4Lkw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_rdzsQNclEeq1stvyrA4Lkw"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_cWl1hNclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_cWl1hdclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_cWl1htclEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cWl1h9clEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_cWl1iNclEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_cWl1idclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_cWl1itclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_cWl1i9clEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cWl1jNclEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_cWl1jdclEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_cWl1jtclEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_cWl1j9clEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_cWl1kNclEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cWl1kdclEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_cWiyMNclEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cWlOcdclEeq1stvyrA4Lkw" x="380" y="20"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_cWtKQNclEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_cWtKQdclEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_cWtKQ9clEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_cWiyMNclEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cWtKQtclEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_ZU80ANcmEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_ZU80AtcmEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_ZU80A9cmEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_ZU80BNcmEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ZU80BdcmEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_eFdVoNcmEeq1stvyrA4Lkw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="Whirlpool%20AAS%20lib.uml#_eFXPANcmEeq1stvyrA4Lkw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_eFdVodcmEeq1stvyrA4Lkw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_h_FSkNcmEeq1stvyrA4Lkw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="Whirlpool%20AAS%20lib.uml#_h-_zANcmEeq1stvyrA4Lkw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_h_FSkdcmEeq1stvyrA4Lkw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_--zxQNcmEeq1stvyrA4Lkw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="Whirlpool%20AAS%20lib.uml#_--rOYNcmEeq1stvyrA4Lkw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_--zxQdcmEeq1stvyrA4Lkw"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ZU80BtcmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ZU80B9cmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ZU80CNcmEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZU80CdcmEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ZU80CtcmEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ZU80C9cmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ZU80DNcmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ZU80DdcmEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZU80DtcmEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ZU80D9cmEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ZU80ENcmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ZU80EdcmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ZU80EtcmEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZU80E9cmEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_ZU6XwNcmEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZU80AdcmEeq1stvyrA4Lkw" x="600" y="20"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_ZVBFddcmEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_ZVBFdtcmEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZVBFeNcmEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_ZU6XwNcmEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZVBFd9cmEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_0M5t4NcmEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_0M6U8NcmEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_0M6U8dcmEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_0M6U8tcmEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_0M6U89cmEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_4JwlANcmEeq1stvyrA4Lkw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="Whirlpool%20AAS%20lib.uml#_4JoCINcmEeq1stvyrA4Lkw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_4JwlAdcmEeq1stvyrA4Lkw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_7R1wQNcmEeq1stvyrA4Lkw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="Whirlpool%20AAS%20lib.uml#_7RvCkNcmEeq1stvyrA4Lkw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_7R1wQdcmEeq1stvyrA4Lkw"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_0M6U9NcmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_0M6U9dcmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_0M6U9tcmEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0M6U99cmEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_0M6U-NcmEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_0M6U-dcmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_0M6U-tcmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_0M6U-9cmEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0M6U_NcmEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_0M6U_dcmEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_0M6U_tcmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_0M6U_9cmEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_0M6VANcmEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0M6VAdcmEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_0M34sNcmEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0M5t4dcmEeq1stvyrA4Lkw" x="380" y="340"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_0M9_WdcmEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_0M9_WtcmEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0M9_XNcmEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_0M34sNcmEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0M9_W9cmEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_HjVXENcnEeq1stvyrA4Lkw" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_HjV-INcnEeq1stvyrA4Lkw" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_HjV-IdcnEeq1stvyrA4Lkw" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_HjV-ItcnEeq1stvyrA4Lkw" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_HjV-I9cnEeq1stvyrA4Lkw" type="Class_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_K1_aoNcnEeq1stvyrA4Lkw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="Whirlpool%20AAS%20lib.uml#_K15UANcnEeq1stvyrA4Lkw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_K1_aodcnEeq1stvyrA4Lkw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_Oi8NgNcnEeq1stvyrA4Lkw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="Whirlpool%20AAS%20lib.uml#_Oi2G4NcnEeq1stvyrA4Lkw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Oi8NgdcnEeq1stvyrA4Lkw"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_HjV-JNcnEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_HjV-JdcnEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_HjV-JtcnEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HjV-J9cnEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_HjV-KNcnEeq1stvyrA4Lkw" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_HjV-KdcnEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_HjV-KtcnEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_HjV-K9cnEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HjV-LNcnEeq1stvyrA4Lkw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_HjV-LdcnEeq1stvyrA4Lkw" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_HjV-LtcnEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_HjV-L9cnEeq1stvyrA4Lkw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_HjV-MNcnEeq1stvyrA4Lkw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HjV-MdcnEeq1stvyrA4Lkw"/>
+      </children>
+      <element xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_HjTh4NcnEeq1stvyrA4Lkw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HjVXEdcnEeq1stvyrA4Lkw" x="620" y="360"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_HjaPm9cnEeq1stvyrA4Lkw" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_HjaPnNcnEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Hja2oNcnEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_HjTh4NcnEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HjaPndcnEeq1stvyrA4Lkw" x="200"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_fMB48dciEeq1stvyrA4Lkw" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_fMB48tciEeq1stvyrA4Lkw"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_fMB489ciEeq1stvyrA4Lkw" diagramKindId="org.eclipse.papyrus.aas.design.diagram">
+      <owner xmi:type="uml:Package" href="Whirlpool%20AAS%20lib.uml#_rFAHgNchEeq1stvyrA4Lkw"/>
+    </styles>
+    <element xmi:type="uml:Package" href="Whirlpool%20AAS%20lib.uml#_rFAHgNchEeq1stvyrA4Lkw"/>
+    <edges xmi:type="notation:Connector" xmi:id="_ggApUNciEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_gf8X4NciEeq1stvyrA4Lkw" target="_ggACVdciEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_ggApUdciEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ggApVdciEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_gf5UkNciEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ggApUtciEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ggApU9ciEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ggApVNciEeq1stvyrA4Lkw"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_cWtKRNclEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_cWlOcNclEeq1stvyrA4Lkw" target="_cWtKQNclEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_cWtKRdclEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_cWtKSdclEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_cWiyMNclEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cWtKRtclEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cWtKR9clEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cWtKSNclEeq1stvyrA4Lkw"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_ZVBFedcmEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_ZU80ANcmEeq1stvyrA4Lkw" target="_ZVBFddcmEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_ZVBFetcmEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ZVBFftcmEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_ZU6XwNcmEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZVBFe9cmEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZVBFfNcmEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZVBFfdcmEeq1stvyrA4Lkw"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_0M9_XdcmEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_0M5t4NcmEeq1stvyrA4Lkw" target="_0M9_WdcmEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_0M9_XtcmEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0M9_YtcmEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_0M34sNcmEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0M9_X9cmEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0M9_YNcmEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0M9_YdcmEeq1stvyrA4Lkw"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_Hja2odcnEeq1stvyrA4Lkw" type="StereotypeCommentLink" source="_HjVXENcnEeq1stvyrA4Lkw" target="_HjaPm9cnEeq1stvyrA4Lkw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_Hja2otcnEeq1stvyrA4Lkw"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Hja2ptcnEeq1stvyrA4Lkw" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="Whirlpool%20AAS%20lib.uml#_HjTh4NcnEeq1stvyrA4Lkw"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Hja2o9cnEeq1stvyrA4Lkw" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Hja2pNcnEeq1stvyrA4Lkw"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Hja2pdcnEeq1stvyrA4Lkw"/>
+    </edges>
+  </notation:Diagram>
+</xmi:XMI>
diff --git a/examples/Whirlpool AAS lib/Whirlpool AAS lib.uml b/examples/Whirlpool AAS lib/Whirlpool AAS lib.uml
new file mode 100644
index 0000000..b7935c1
--- /dev/null
+++ b/examples/Whirlpool AAS lib/Whirlpool AAS lib.uml
@@ -0,0 +1,75 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:AAS="http://www.eclipse.org/papyrus/AAS" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+  <uml:Model xmi:id="_mgI1MNchEeq1stvyrA4Lkw" name="Whirlpool AAS lib">
+    <packagedElement xmi:type="uml:Package" xmi:id="_p5AOcNchEeq1stvyrA4Lkw" name="AAS">
+      <packagedElement xmi:type="uml:Class" xmi:id="_OEX0cNciEeq1stvyrA4Lkw" name="DrumLineAAS"/>
+      <packagedElement xmi:type="uml:Class" xmi:id="_YInZMNclEeq1stvyrA4Lkw" name="PuncherAAS"/>
+      <packagedElement xmi:type="uml:Class" xmi:id="_uDGooNcnEeq1stvyrA4Lkw" name="MeasurementAAS"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Package" xmi:id="_rFAHgNchEeq1stvyrA4Lkw" name="Submodels">
+      <packagedElement xmi:type="uml:Class" xmi:id="_gf5UkNciEeq1stvyrA4Lkw" name="DrumLineDocumentation"/>
+      <packagedElement xmi:type="uml:Class" xmi:id="_cWiyMNclEeq1stvyrA4Lkw" name="PuncherControlSubmodel">
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_lZnVMNclEeq1stvyrA4Lkw" name="producedQuantity">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+        </ownedAttribute>
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_rdtloNclEeq1stvyrA4Lkw" name="status" type="_AQ6HwNcmEeq1stvyrA4Lkw"/>
+      </packagedElement>
+      <packagedElement xmi:type="uml:DataType" xmi:id="_AQ6HwNcmEeq1stvyrA4Lkw" name="StatusType">
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_DuY7QNcmEeq1stvyrA4Lkw" name="value" visibility="public">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+        </ownedAttribute>
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_ICbjUNcmEeq1stvyrA4Lkw" name="timestamp" visibility="public">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        </ownedAttribute>
+      </packagedElement>
+      <packagedElement xmi:type="uml:Class" xmi:id="_ZU6XwNcmEeq1stvyrA4Lkw" name="PuncherHealthyParameters">
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_eFXPANcmEeq1stvyrA4Lkw" name="pressure" type="_sZbKgNcmEeq1stvyrA4Lkw"/>
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_h-_zANcmEeq1stvyrA4Lkw" name="acceleration" type="_sZbKgNcmEeq1stvyrA4Lkw"/>
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_--rOYNcmEeq1stvyrA4Lkw" name="temperature">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+        </ownedAttribute>
+      </packagedElement>
+      <packagedElement xmi:type="uml:DataType" xmi:id="_sZbKgNcmEeq1stvyrA4Lkw" name="Timeserie"/>
+      <packagedElement xmi:type="uml:Class" xmi:id="_0M34sNcmEeq1stvyrA4Lkw" name="PuncherResourceUsageSubmodel">
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_4JoCINcmEeq1stvyrA4Lkw" name="energy">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+        </ownedAttribute>
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_7RvCkNcmEeq1stvyrA4Lkw" name="oil">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Real"/>
+        </ownedAttribute>
+      </packagedElement>
+      <packagedElement xmi:type="uml:Class" xmi:id="_HjTh4NcnEeq1stvyrA4Lkw" name="PartSubmodel">
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_K15UANcnEeq1stvyrA4Lkw" name="partCode">
+          <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        </ownedAttribute>
+        <ownedAttribute xmi:type="uml:Property" xmi:id="_Oi2G4NcnEeq1stvyrA4Lkw" name="Property2"/>
+      </packagedElement>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Package" xmi:id="_vQZw8NchEeq1stvyrA4Lkw" name="Assets">
+      <packagedElement xmi:type="uml:Class" xmi:id="_zp5gwNchEeq1stvyrA4Lkw" name="DrumLine"/>
+      <packagedElement xmi:type="uml:Class" xmi:id="_LjKUkNclEeq1stvyrA4Lkw" name="Puncher"/>
+      <packagedElement xmi:type="uml:Class" xmi:id="_sV7VINcnEeq1stvyrA4Lkw" name="MeasurementAsset"/>
+    </packagedElement>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_mgurENchEeq1stvyrA4Lkw">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_mgwgQNchEeq1stvyrA4Lkw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AAS#/"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://AAS_PROFILE/aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    </profileApplication>
+  </uml:Model>
+  <AAS:Asset xmi:id="_zsFSENchEeq1stvyrA4Lkw" idShort="" base_Class="_zp5gwNchEeq1stvyrA4Lkw">
+    <identification xmi:type="AAS:Identifier" xmi:id="_6FQaoNchEeq1stvyrA4Lkw" id="AssetNumberxxx"/>
+  </AAS:Asset>
+  <AAS:AssetAdministrationShell xmi:id="_OEZpoNciEeq1stvyrA4Lkw" idShort="" description="this is the parent AAS for the drum line" base_Class="_OEX0cNciEeq1stvyrA4Lkw" asset="_zsFSENchEeq1stvyrA4Lkw" submodel="_gf7JwNciEeq1stvyrA4Lkw"/>
+  <AAS:Submodel xmi:id="_gf7JwNciEeq1stvyrA4Lkw" base_Class="_gf5UkNciEeq1stvyrA4Lkw"/>
+  <AAS:Asset xmi:id="_LjLisNclEeq1stvyrA4Lkw" idShort="" base_Class="_LjKUkNclEeq1stvyrA4Lkw">
+    <identification xmi:type="AAS:Identifier" xmi:id="_TgFH0NclEeq1stvyrA4Lkw" id="PuncherNumber"/>
+  </AAS:Asset>
+  <AAS:AssetAdministrationShell xmi:id="_YIonUNclEeq1stvyrA4Lkw" idShort="" base_Class="_YInZMNclEeq1stvyrA4Lkw" parent="_OEZpoNciEeq1stvyrA4Lkw" asset="_LjLisNclEeq1stvyrA4Lkw" submodel="_ZU7l4NcmEeq1stvyrA4Lkw _cWkAUNclEeq1stvyrA4Lkw _0M5G0NcmEeq1stvyrA4Lkw"/>
+  <AAS:Submodel xmi:id="_cWkAUNclEeq1stvyrA4Lkw" base_Class="_cWiyMNclEeq1stvyrA4Lkw"/>
+  <AAS:Submodel xmi:id="_ZU7l4NcmEeq1stvyrA4Lkw" idShort="" base_Class="_ZU6XwNcmEeq1stvyrA4Lkw"/>
+  <AAS:Submodel xmi:id="_0M5G0NcmEeq1stvyrA4Lkw" idShort="" base_Class="_0M34sNcmEeq1stvyrA4Lkw"/>
+  <AAS:Submodel xmi:id="_HjUI8NcnEeq1stvyrA4Lkw" base_Class="_HjTh4NcnEeq1stvyrA4Lkw"/>
+  <AAS:Asset xmi:id="_sV9KUNcnEeq1stvyrA4Lkw" base_Class="_sV7VINcnEeq1stvyrA4Lkw"/>
+  <AAS:AssetAdministrationShell xmi:id="_uDHPsNcnEeq1stvyrA4Lkw" idShort="" base_Class="_uDGooNcnEeq1stvyrA4Lkw" parent="_OEZpoNciEeq1stvyrA4Lkw" asset="_sV9KUNcnEeq1stvyrA4Lkw" submodel="_HjUI8NcnEeq1stvyrA4Lkw"/>
+</xmi:XMI>
diff --git a/examples/pom.xml b/examples/pom.xml
new file mode 100755
index 0000000..e5fd04c
--- /dev/null
+++ b/examples/pom.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas.root</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas-examples</artifactId>
+	<packaging>pom</packaging>
+
+	<modules>
+<!-- 		<module>org.eclipse.papyrus.aas.aasumlexample</module> -->
+	</modules>
+</project>
\ No newline at end of file
diff --git a/extClasses/basyx.components.lib-0.1.0-SNAPSHOT.jar b/extClasses/basyx.components.lib-0.1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..d79887d
--- /dev/null
+++ b/extClasses/basyx.components.lib-0.1.0-SNAPSHOT.jar
Binary files differ
diff --git a/extClasses/basyx.examples-0.1.0-SNAPSHOT.jar b/extClasses/basyx.examples-0.1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..aff8671
--- /dev/null
+++ b/extClasses/basyx.examples-0.1.0-SNAPSHOT.jar
Binary files differ
diff --git a/extClasses/basyx.sdk-0.1.0-SNAPSHOT.jar b/extClasses/basyx.sdk-0.1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..811a4f7
--- /dev/null
+++ b/extClasses/basyx.sdk-0.1.0-SNAPSHOT.jar
Binary files differ
diff --git a/extClasses/basyx.sdk-0.1.0-SNAPSHOT.pom b/extClasses/basyx.sdk-0.1.0-SNAPSHOT.pom
new file mode 100644
index 0000000..719dc35
--- /dev/null
+++ b/extClasses/basyx.sdk-0.1.0-SNAPSHOT.pom
@@ -0,0 +1,183 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<groupId>org.eclipse.basyx</groupId>
+	<artifactId>basyx.sdk</artifactId>
+	<version>0.1.0-SNAPSHOT</version>
+	<name>BaSyx SDK</name>
+
+	<packaging>jar</packaging>
+
+	<properties>
+		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+	</properties>
+
+	<build>
+		<sourceDirectory>src/main/java</sourceDirectory>
+		<testSourceDirectory>src/test/java</testSourceDirectory>
+
+		<plugins>
+			<!-- Compile Sources using Java 8 -->
+			<plugin>
+				<artifactId>maven-compiler-plugin</artifactId>
+				<version>3.8.1</version>
+				<configuration>
+<<<<<<< HEAD
+					<source>11</source>
+					<target>11</target>
+=======
+					<source>1.8</source>
+					<target>1.8</target>
+>>>>>>> synch basyx build from 10.12.2020
+				</configuration>
+			</plugin>
+
+			<!-- Attach sources to jar file -->
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-source-plugin</artifactId>
+				<version>3.1.0</version>
+				<executions>
+					<execution>
+						<id>attach-sources</id>
+						<goals>
+							<goal>jar-no-fork</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+
+			<!-- Generate separate jar for tests and exclude logback.xml from generated jars -->
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-jar-plugin</artifactId>
+				<version>3.1.1</version>
+				<configuration>
+					<excludes>
+						<exclude>**/logback.xml</exclude>
+					</excludes>
+				</configuration>
+				<executions>
+					<execution>
+						<goals>
+							<goal>test-jar</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+
+			<!-- Run Unit Tests -->
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-surefire-plugin</artifactId>
+				<version>3.0.0-M3</version>
+				<configuration>
+					<excludes>
+						<exclude>**/*HTTP*</exclude>
+						<exclude>**/*TCP*</exclude>
+					</excludes>
+					<includes>
+						<include>**/**</include>
+					</includes>
+				</configuration>
+			</plugin>
+
+			<!-- Run Integration Tests -->
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-failsafe-plugin</artifactId>
+				<version>3.0.0-M3</version>
+				<configuration>
+					<includes>
+						<include>**/*HTTP*</include>
+						<include>**/*TCP*</include>
+					</includes>
+				</configuration>
+				<executions>
+					<execution>
+						<goals>
+							<goal>integration-test</goal>
+							<goal>verify</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+
+	<dependencies>
+		<!-- JUnit 4 for running JUnit tests -->
+		<dependency>
+			<groupId>junit</groupId>
+			<artifactId>junit</artifactId>
+			<version>4.12</version>
+			<scope>test</scope>
+		</dependency>
+
+		<!-- Eclipse Milo (for OPC-UA client) -->
+		<dependency>
+			<groupId>org.eclipse.milo</groupId>
+			<artifactId>sdk-client</artifactId>
+			<version>0.3.3</version>
+		</dependency>
+
+		<!-- Eclipse Milo (for OPC-UA server) -->
+		<dependency>
+			<groupId>org.eclipse.milo</groupId>
+			<artifactId>sdk-server</artifactId>
+			<version>0.3.3</version>
+		</dependency>
+
+		<!-- Java Servlet API (for HTTP provider) -->
+		<dependency>
+			<groupId>javax.servlet</groupId>
+			<artifactId>javax.servlet-api</artifactId>
+			<version>4.0.1</version>
+		</dependency>
+
+		<!-- Java REST API (for WebServiceRawClient) -->
+		<dependency>
+			<groupId>javax.ws.rs</groupId>
+			<artifactId>javax.ws.rs-api</artifactId>
+			<version>2.1.1</version>
+		</dependency>
+
+		<!-- Java REST Jersey client (for WebServiceRawClient) -->
+		<dependency>
+			<groupId>org.glassfish.jersey.core</groupId>
+			<artifactId>jersey-client</artifactId>
+			<version>2.29</version>
+		</dependency>
+
+		<!-- Jersey InjectionManager (for Jersey client)  -->
+		<dependency>
+			<groupId>org.glassfish.jersey.inject</groupId>
+			<artifactId>jersey-hk2</artifactId>
+			<version>2.29</version>
+		</dependency>
+
+		<!-- Tomcat 8 for HTTP server resource -->
+		<dependency>
+			<groupId>org.apache.tomcat</groupId>
+			<artifactId>tomcat-catalina</artifactId>
+			<version>8.0.53</version>
+		</dependency>
+		
+		<!-- Logger -->
+		<dependency>
+    		<groupId>ch.qos.logback</groupId>
+    		<artifactId>logback-classic</artifactId>
+    		<version>1.2.3</version>
+		</dependency>
+		
+		<!-- Used by Logback to compile filter expressions from logback.xml -->
+		<dependency>
+    		<groupId>org.codehaus.janino</groupId>
+    		<artifactId>janino</artifactId>
+    		<version>2.7.5</version>
+		</dependency>
+	</dependencies>
+</project>
\ No newline at end of file
diff --git a/features/org.eclipse.papyrus.aas.feature/.project b/features/org.eclipse.papyrus.aas.feature/.project
new file mode 100755
index 0000000..f37318e
--- /dev/null
+++ b/features/org.eclipse.papyrus.aas.feature/.project
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.aas.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
diff --git a/features/org.eclipse.papyrus.aas.feature/build.properties b/features/org.eclipse.papyrus.aas.feature/build.properties
new file mode 100755
index 0000000..b3a611b
--- /dev/null
+++ b/features/org.eclipse.papyrus.aas.feature/build.properties
@@ -0,0 +1,2 @@
+bin.includes = feature.xml,\
+               feature.properties
diff --git a/features/org.eclipse.papyrus.aas.feature/feature.properties b/features/org.eclipse.papyrus.aas.feature/feature.properties
new file mode 100755
index 0000000..379e803
--- /dev/null
+++ b/features/org.eclipse.papyrus.aas.feature/feature.properties
@@ -0,0 +1,35 @@
+###############################################################################
+# Copyright (c) 2020 CEA LIST, and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#
+###############################################################################
+
+# "featureName" property - name of the feature
+featureName=CanvAAS feature
+
+# "providerName" property - name of the company that provides the feature
+providerName=CanvAAS project 
+
+# description property - text of the "Feature Description"
+description=\
+CanvAAS project\n\
+\n
+################ end of description property ##################################
+
+# "copyright" property - text of the "Feature Update Copyright"
+copyright=\
+Copyright (c) 2020 CEA LIST, and others.\n\
+All rights reserved. This program and the accompanying materials\n\
+are made available under the terms of the Eclipse Public License 2.0\n\
+which accompanies this distribution, and is available at\n\
+https://www.eclipse.org/legal/epl-2.0/\n\
+SPDX-License-Identifier: EPL-2.0\n
+################ end of copyright property ####################################
diff --git a/features/org.eclipse.papyrus.aas.feature/feature.xml b/features/org.eclipse.papyrus.aas.feature/feature.xml
new file mode 100644
index 0000000..a461173
--- /dev/null
+++ b/features/org.eclipse.papyrus.aas.feature/feature.xml
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.papyrus.aas.feature"
+      label="%featureName"
+      version="0.7.0.qualifier"
+      provider-name="%providerName"
+      license-feature="org.eclipse.license"
+      license-feature-version="2.0.2">
+
+   <description url="https://eclipse.org/papyrus/">
+      %description
+   </description>
+
+   <copyright>
+      %copyright
+   </copyright>
+
+   <license url="%licenseURL">
+      %license
+   </license>
+
+   <requires>
+      <import feature="org.eclipse.papyrus.sdk.feature" version="5.0.0" match="compatible"/>
+      <import feature="org.eclipse.jst.server_adapters.feature" version="3.2.0" match="compatible"/>
+      <import feature="org.eclipse.m2e.sdk.feature" version="1.16.0" match="compatible"/>
+   </requires>
+
+   <plugin
+         id="org.eclipse.aas.basyx.codegen"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.aas.basyx.lib"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.aas.codegen.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.aas.profile"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.aas.ui"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+   <plugin
+         id="org.eclipse.papyrus.aas.aasx.import"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"
+         unpack="false"/>
+
+</feature>
diff --git a/features/org.eclipse.papyrus.aas.feature/pom.xml b/features/org.eclipse.papyrus.aas.feature/pom.xml
new file mode 100644
index 0000000..a617a8a
--- /dev/null
+++ b/features/org.eclipse.papyrus.aas.feature/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-features</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.feature</artifactId>
+	<version>0.7.0-SNAPSHOT</version>
+	<packaging>eclipse-feature</packaging>
+
+</project>
diff --git a/features/pom.xml b/features/pom.xml
new file mode 100755
index 0000000..4a03d84
--- /dev/null
+++ b/features/pom.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas.root</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas-features</artifactId>
+	<packaging>pom</packaging>
+
+	<modules>
+		<module>org.eclipse.papyrus.aas.feature</module>
+	</modules>
+
+</project>
\ No newline at end of file
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/.classpath b/plugins/codegen/org.eclipse.aas.basyx.codegen/.classpath
new file mode 100644
index 0000000..d499d30
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/.gitignore b/plugins/codegen/org.eclipse.aas.basyx.codegen/.gitignore
new file mode 100644
index 0000000..9a080fb
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/.gitignore
@@ -0,0 +1,3 @@
+/bin/
+/.settings/
+/*.patch
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/.project b/plugins/codegen/org.eclipse.aas.basyx.codegen/.project
new file mode 100644
index 0000000..baa4965
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.aas.basyx.codegen</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/.settings/org.eclipse.jdt.core.prefs b/plugins/codegen/org.eclipse.aas.basyx.codegen/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..774fb39
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,15 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=11
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=enabled
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/META-INF/MANIFEST.MF b/plugins/codegen/org.eclipse.aas.basyx.codegen/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..2f49143
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/META-INF/MANIFEST.MF
@@ -0,0 +1,19 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: org.eclipse.aas.basyx.codegen
+Bundle-SymbolicName: org.eclipse.aas.basyx.codegen
+Bundle-Version: 1.0.0.qualifier
+Bundle-RequiredExecutionEnvironment: JavaSE-11
+Bundle-ClassPath: org.junit.jupiter.api_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.engine_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.migrationsupport_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.params_5.6.0.v20200203-2009.jar,
+ org.junit.platform.commons_1.6.0.v20200203-2009.jar,
+ org.junit.platform.engine_1.6.0.v20200203-2009.jar,
+ org.junit.platform.launcher_1.6.0.v20200203-2009.jar,
+ org.junit.platform.runner_1.6.0.v20200203-2009.jar,
+ .
+Export-Package: org.eclipse.aas.basyx.codegen.util,
+ org.eclipse.aas.basyx.codegen.util.submodel,
+ org.eclipse.aas.basyx.codegen.util.test
+Require-Bundle: org.eclipse.aas.basyx.lib;bundle-version="[1.0.0,2.0.0)"
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/README b/plugins/codegen/org.eclipse.aas.basyx.codegen/README
new file mode 100644
index 0000000..e69de29
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/README
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/build.properties b/plugins/codegen/org.eclipse.aas.basyx.codegen/build.properties
new file mode 100644
index 0000000..d7d5541
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/build.properties
@@ -0,0 +1,18 @@
+###############################################################################
+# Copyright (c) 2020 DFKI.
+#
+# This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#     DFKI - Volkan Gezer <volkan.gezer@dfki.de>
+#     
+###############################################################################
+source.. = src/
+bin.includes = META-INF/,\
+               .,\
+               extClasses/
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.components.lib-0.1.0-SNAPSHOT.jar b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.components.lib-0.1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..d79887d
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.components.lib-0.1.0-SNAPSHOT.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.examples-0.1.0-SNAPSHOT.jar b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.examples-0.1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..aff8671
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.examples-0.1.0-SNAPSHOT.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.sdk-0.1.0-SNAPSHOT.jar b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.sdk-0.1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..811a4f7
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.sdk-0.1.0-SNAPSHOT.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.sdk-0.1.0-SNAPSHOT.pom b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.sdk-0.1.0-SNAPSHOT.pom
new file mode 100644
index 0000000..1451411
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/basyx.sdk-0.1.0-SNAPSHOT.pom
@@ -0,0 +1,178 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<groupId>org.eclipse.basyx</groupId>
+	<artifactId>basyx.sdk</artifactId>
+	<version>0.1.0-SNAPSHOT</version>
+	<name>BaSyx SDK</name>
+
+	<packaging>jar</packaging>
+
+	<properties>
+		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+	</properties>
+
+	<build>
+		<sourceDirectory>src/main/java</sourceDirectory>
+		<testSourceDirectory>src/test/java</testSourceDirectory>
+
+		<plugins>
+			<!-- Compile Sources using Java 8 -->
+			<plugin>
+				<artifactId>maven-compiler-plugin</artifactId>
+				<version>3.8.1</version>
+				<configuration>
+					<source>1.8</source>
+					<target>1.8</target>
+				</configuration>
+			</plugin>
+
+			<!-- Attach sources to jar file -->
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-source-plugin</artifactId>
+				<version>3.1.0</version>
+				<executions>
+					<execution>
+						<id>attach-sources</id>
+						<goals>
+							<goal>jar-no-fork</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+
+			<!-- Generate separate jar for tests and exclude logback.xml from generated jars -->
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-jar-plugin</artifactId>
+				<version>3.1.1</version>
+				<configuration>
+					<excludes>
+						<exclude>**/logback.xml</exclude>
+					</excludes>
+				</configuration>
+				<executions>
+					<execution>
+						<goals>
+							<goal>test-jar</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+
+			<!-- Run Unit Tests -->
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-surefire-plugin</artifactId>
+				<version>3.0.0-M3</version>
+				<configuration>
+					<excludes>
+						<exclude>**/*HTTP*</exclude>
+						<exclude>**/*TCP*</exclude>
+					</excludes>
+					<includes>
+						<include>**/**</include>
+					</includes>
+				</configuration>
+			</plugin>
+
+			<!-- Run Integration Tests -->
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-failsafe-plugin</artifactId>
+				<version>3.0.0-M3</version>
+				<configuration>
+					<includes>
+						<include>**/*HTTP*</include>
+						<include>**/*TCP*</include>
+					</includes>
+				</configuration>
+				<executions>
+					<execution>
+						<goals>
+							<goal>integration-test</goal>
+							<goal>verify</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+
+	<dependencies>
+		<!-- JUnit 4 for running JUnit tests -->
+		<dependency>
+			<groupId>junit</groupId>
+			<artifactId>junit</artifactId>
+			<version>4.12</version>
+			<scope>test</scope>
+		</dependency>
+
+		<!-- Eclipse Milo (for OPC-UA client) -->
+		<dependency>
+			<groupId>org.eclipse.milo</groupId>
+			<artifactId>sdk-client</artifactId>
+			<version>0.3.3</version>
+		</dependency>
+
+		<!-- Eclipse Milo (for OPC-UA server) -->
+		<dependency>
+			<groupId>org.eclipse.milo</groupId>
+			<artifactId>sdk-server</artifactId>
+			<version>0.3.3</version>
+		</dependency>
+
+		<!-- Java Servlet API (for HTTP provider) -->
+		<dependency>
+			<groupId>javax.servlet</groupId>
+			<artifactId>javax.servlet-api</artifactId>
+			<version>4.0.1</version>
+		</dependency>
+
+		<!-- Java REST API (for WebServiceRawClient) -->
+		<dependency>
+			<groupId>javax.ws.rs</groupId>
+			<artifactId>javax.ws.rs-api</artifactId>
+			<version>2.1.1</version>
+		</dependency>
+
+		<!-- Java REST Jersey client (for WebServiceRawClient) -->
+		<dependency>
+			<groupId>org.glassfish.jersey.core</groupId>
+			<artifactId>jersey-client</artifactId>
+			<version>2.29</version>
+		</dependency>
+
+		<!-- Jersey InjectionManager (for Jersey client)  -->
+		<dependency>
+			<groupId>org.glassfish.jersey.inject</groupId>
+			<artifactId>jersey-hk2</artifactId>
+			<version>2.29</version>
+		</dependency>
+
+		<!-- Tomcat 8 for HTTP server resource -->
+		<dependency>
+			<groupId>org.apache.tomcat</groupId>
+			<artifactId>tomcat-catalina</artifactId>
+			<version>8.0.53</version>
+		</dependency>
+		
+		<!-- Logger -->
+		<dependency>
+    		<groupId>ch.qos.logback</groupId>
+    		<artifactId>logback-classic</artifactId>
+    		<version>1.2.3</version>
+		</dependency>
+		
+		<!-- Used by Logback to compile filter expressions from logback.xml -->
+		<dependency>
+    		<groupId>org.codehaus.janino</groupId>
+    		<artifactId>janino</artifactId>
+    		<version>2.7.5</version>
+		</dependency>
+	</dependencies>
+</project>
\ No newline at end of file
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/json-20200518.jar b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/json-20200518.jar
new file mode 100644
index 0000000..0b85b0e
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/extClasses/json-20200518.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/pom.xml b/plugins/codegen/org.eclipse.aas.basyx.codegen/pom.xml
new file mode 100755
index 0000000..71089ca
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-codegen</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.aas.basyx.codegen</artifactId>
+	<version>1.0.0-SNAPSHOT</version>
+	<packaging>eclipse-plugin</packaging>
+
+</project>
\ No newline at end of file
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/DataConnector.java b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/DataConnector.java
new file mode 100644
index 0000000..6e70abc
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/DataConnector.java
@@ -0,0 +1,938 @@
+/*******************************************************************************
+ * Copyright (c) 2020 DFKI.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *     DFKI - Volkan Gezer <volkan.gezer@dfki.de>
+ *     
+ *******************************************************************************/
+package org.eclipse.aas.basyx.codegen.util;
+import java.util.Iterator;
+import java.util.Map;
+import java.util.Map.Entry;
+
+import org.eclipse.aas.basyx.codegen.util.submodel.SubModel;
+import org.eclipse.aas.basyx.codegen.util.submodel.SubModelCreator;
+
+public class DataConnector {
+	private String modelUrn;
+	private String aasIp;
+	private String aasPort;
+	private SubModelCreator submodelCreator = new SubModelCreator();
+	private Project projectOperations;
+	
+	public DataConnector(String modelUrn, String aasIp, String aasPort, SubModelCreator submodelCreator, 
+			Project projectOperations) {
+		this.modelUrn = modelUrn;
+		this.aasIp = aasIp;
+		this.aasPort = aasPort;
+		this.submodelCreator = submodelCreator;
+		this.projectOperations = projectOperations;
+	}
+	
+
+	public SubModelCreator getSubModelCreator() {
+		return submodelCreator;
+	}
+
+
+	public String createDataCrawler() {
+		String text = "package " + projectOperations.getNamespace() + ".connection;\r\n" + 
+				"\r\n" + 
+				"import java.util.Iterator;\r\n" + 
+				"import java.util.Map;\r\n" + 
+				"import java.util.Map.Entry;\r\n" + 
+				"import java.util.concurrent.TimeUnit;\r\n" + 
+				"\r\n" + 
+				"import org.eclipse.basyx.submodel.metamodel.map.submodelelement.dataelement.property.Property;\r\n" + 
+				"import org.eclipse.basyx.submodel.metamodel.api.submodelelement.dataelement.IProperty;\r\n" + 
+				"import org.eclipse.basyx.submodel.metamodel.map.SubModel;\r\n" + 
+				"\r\n" + 
+				"/**\r\n" + 
+				" * The CyclicDataCrawler provides methods for collecting data from connected\r\n" + 
+				" * devices and updates them into selected submodel.\r\n" + 
+				" * \r\n" + 
+				" * By default one cycle will always be executed.\r\n" + 
+				" *\r\n" + 
+				" * @author DFKI\r\n" + 
+				" *\r\n" + 
+				" */\r\n" + 
+				" \r\n" + 
+				"public class DataCrawler {\r\n" + 
+				"\r\n" + 
+				"	protected Integer cycleCounter = 1;\r\n" + 
+				"	protected Integer sleepInterval = 10;\r\n" + 
+				"	protected ConnectedDevice connectedDevice;\r\n" + 
+				"	protected String aas_submodelid;\r\n" + 
+				"\r\n" + 
+				"	public DataCrawler(ConnectedDevice connDev) {\r\n" + 
+				"		connectedDevice = connDev;\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	public void setCycleConfiguration(Integer cc, Integer si) {\r\n" + 
+				"		cycleCounter = cc;\r\n" + 
+				"		sleepInterval = si;\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	public void collectOPCUAData(SubModel subModel) throws Exception {\r\n" + 
+				"\r\n" + 
+				"		for (int i = 0; i < cycleCounter; i++) {\r\n" + 
+				"\r\n" + 
+				"			String valueupdate = \"0\";\r\n" + 
+				"\r\n" + 
+				"			aas_submodelid = subModel.getIdShort();\r\n" + 
+				"\r\n" + 
+				"			System.out.println(\"Activated data crawler for submodel: \" + aas_submodelid);\r\n" + 
+				"\r\n" + 
+				"			/* Take all submodel properties in a map to provide several iterations. */\r\n" + 
+				"\r\n" + 
+				"			Map<String, IProperty> propertyMap = subModel.getProperties();\r\n" + 
+				"\r\n" + 
+				"			Iterator<Entry<String, IProperty>> it = propertyMap.entrySet().iterator();\r\n" + 
+				"\r\n" + 
+				"			while (it.hasNext()) {\r\n" + 
+				"				Entry<String, IProperty> pair = it.next();" + 
+				"\r\n" + 
+				"				Property propertyupdate = (Property) propertyMap.get(pair.getKey());\r\n" + 
+				"\r\n" + 
+				"				/* Get current values from device by using the aas-key. */\r\n" + 
+				"\r\n" + 
+				"				if (connectedDevice.online == true) {\r\n" + 
+				"\r\n" + 
+				"					valueupdate = connectedDevice.getSingleDeviceValueByConfig(String.valueOf(pair.getKey()));\r\n" + 
+				"				}\r\n" + 
+				"\r\n" + 
+				"				else {\r\n" + 
+				"					valueupdate = String.valueOf(i);\r\n" + 
+				"				}\r\n" + 
+				"\r\n" + 
+				"				/* Updating the current available submodel. */\r\n" + 
+				"\r\n" + 
+				"				propertyupdate.set(valueupdate);\r\n" + 
+				"				subModel.getProperties().replace(String.valueOf(pair.getKey()), propertyupdate);\r\n" + 
+				"\r\n" + 
+				"				System.out.println(\"Property-Update: \" + String.valueOf(pair.getKey()) + \" with value \"\r\n" + 
+				"						+ String.valueOf(valueupdate));\r\n" + 
+				"\r\n" + 
+				"			}\r\n" + 
+				"\r\n" + 
+				"			Thread.sleep(TimeUnit.SECONDS.toMillis(sleepInterval));\r\n" + 
+				"\r\n" + 
+				"			System.out.println(\"Processed cycles: \" + String.valueOf(i));\r\n" + 
+				"\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"}\r\n" + 
+				"";
+		
+		return text;
+	}
+	
+	public String createDeviceAAS() {
+		String text = 
+				"package " + projectOperations.getNamespace() + ".module.submodel;\r\n" + 
+				"\r\n" + 
+				"import org.eclipse.basyx.aas.metamodel.map.AssetAdministrationShell;\r\n" + 
+				"import org.eclipse.basyx.aas.metamodel.map.descriptor.ModelUrn;\r\n" + 
+				"\r\n" + 
+				"/**\r\n" + 
+				" * AAS header element for inputs of a floor device.\r\n" + 
+				" * \r\n" + 
+				" * @author DFKI\r\n" + 
+				" * \r\n" + 
+				" */\r\n" + 
+				"\r\n" + 
+				"public class DeviceAAS extends AssetAdministrationShell {\r\n" + 
+				"	private static final long serialVersionUID = 1L;\r\n" + 
+				"\r\n" + 
+				"	// Since submodel-class refactoring, reference of inherited submodels necessary\r\n" + 
+				"	// in the aas class is no longer necessary.\r\n" + 
+				"\r\n" + 
+				"	public DeviceAAS() {\r\n" + 
+				"\r\n" + 
+				"		// Model URN only available as placeholder\r\n" + 
+				"\r\n" + 
+				"		ModelUrn urn = new ModelUrn(\"" + this.modelUrn + "\");\r\n" + 
+				"		this.setIdentification(urn.getIdType(), urn.getURN());\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"}";
+		
+		return text;
+	}
+	
+	public String createConnectedDevice() {
+		return createConnectedDevice("", "", "", "", "", "");
+	}
+	
+	public String createConnectedDevice(String sqlHostPort, String sqlDb, String sqlUser, String sqlPass, String sqlP, String sqlD) {
+		String text = "package " + projectOperations.getNamespace() + ".connection;\r\n" + 
+				"\r\n" + 
+				"import java.sql.ResultSet;\r\n" + 
+				"import java.util.Arrays;\r\n" + 
+				"import java.util.Collection;\r\n" + 
+				"import java.util.LinkedList;\r\n" + 
+				"\r\n" + 
+				"import org.eclipse.basyx.tools.sql.driver.SQLDriver;\r\n" + 
+				"import org.eclipse.basyx.tools.sql.driver.ISQLDriver;\r\n" + 
+				"import org.eclipse.basyx.vab.gateway.ConnectorProviderMapper;\r\n" + 
+				"import org.eclipse.basyx.vab.protocol.opcua.connector.OpcUaConnectorProvider;\r\n" + 
+				"\r\n" + 
+				"/**\r\n" + 
+				" * This device (connector) class implements connector-interfaces that are not\r\n" + 
+				" * yet or not strongly supported by the Virtual Automation Bus, because they\r\n" + 
+				" * need a specific configuration (e.g. OPCUA / MQTT) to the control component.\r\n" + 
+				" * The belonging configuration for values and methods for a specific device will\r\n" + 
+				" * be done here, so the class has the role to provide this configuration.\r\n" + 
+				" * \r\n" + 
+				" * The Device must call this connection class by using database configuration\r\n" + 
+				" * \"service registry\". The address can be saved in database tables for dynamic\r\n" + 
+				" * endpoint calls.\r\n" + 
+				" * \r\n" + 
+				" * In future development, the usage of subscriptions and dependency injection\r\n" + 
+				" * for class tests and simulation methods can be made. The connection type can\r\n" + 
+				" * be set in an array object, to provide one or more connection types for one\r\n" + 
+				" * single device.\r\n" + 
+				" * \r\n" + 
+				" * The provided connection types for a device has to be set up in a object\r\n" + 
+				" * array, containing the connectors which can be saved in a database. Current\r\n" + 
+				" * available is only OPCUA.\r\n" + 
+				" * \r\n" + 
+				" * @author DFKI\r\n" + 
+				" *\r\n" + 
+				" */\r\n" + 
+				"\r\n" + 
+				"\r\n" + 
+				"public class ConnectedDevice {\r\n" + 
+				"\r\n" + 
+				"	/* Definition of objects */\r\n" + 
+				"\r\n" + 
+				"	public ConnectorProviderMapper clientMapper = new ConnectorProviderMapper();\r\n" + 
+				"	public OPCUAConnectorWrapper opcuaConnector = new OPCUAConnectorWrapper();\r\n" + 
+				"	private static String sqlHostPort = \"" + sqlHostPort + "\";\r\n" + 
+				"	private static String sqlDb = \"" + sqlDb + "\";\r\n" + 
+				"	private static String sqlUser = \"" + sqlUser + "\";\r\n" + 
+				"	private static String sqlPass = \"" + sqlPass + "\";\r\n" + 
+				"	private static String connP = \"" + sqlP + "\";\r\n" + 
+				"	private static String sqlD = \"" + sqlD + "\";\r\n" + 
+				"	\r\n" + 
+				"	/* Definition of properties */\r\n" + 
+				"\r\n" + 
+				"	protected String devendpoint;\r\n" + 
+				"	protected String deviceid;\r\n" + 
+				"	protected String address;\r\n" + 
+				"	protected Object[] connectiontype;\r\n" + 
+				"	protected Boolean databaseinit = false;\r\n" + 
+				"	public Boolean online = false;\r\n" + 
+				"\r\n" + 
+				"	/*\r\n" + 
+				"	 * Store SQL driver reference\r\n" + 
+				"	 */\r\n" + 
+				"	\r\n" + 
+				"	protected ISQLDriver sqlDriver = null;\r\n" + 
+				"\r\n" + 
+				"	/*\r\n" + 
+				"	 * The Device-Class should contain the adapters for different communication\r\n" + 
+				"	 * protocols. Initialization e.g. of the connector object for OPC UA.\r\n" + 
+				"	 */\r\n" + 
+				"	\r\n" + 
+				"	public ConnectedDevice(String endpoint, Object[] conntypes, String devid, Boolean initDB) {\r\n" + 
+				"		this(endpoint, conntypes, devid, initDB, ConnectedDevice.sqlHostPort, ConnectedDevice.sqlDb, ConnectedDevice.sqlUser, ConnectedDevice.sqlPass, \r\n" + 
+				"				ConnectedDevice.connP, ConnectedDevice.sqlD);\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	public ConnectedDevice(String endpoint, Object[] conntypes, String devid, Boolean initDB,\r\n" + 
+				"			String sqlHostPort, String sqlDb, String sqlUser, String sqlPass, String sqlConnectP, String sqlDr) {\r\n" + 
+				"		\r\n" + 
+				"		ConnectedDevice.sqlHostPort = sqlHostPort;\r\n" + 
+				"		ConnectedDevice.sqlDb = sqlDb;\r\n" + 
+				"		ConnectedDevice.sqlUser = sqlUser;\r\n" + 
+				"		ConnectedDevice.sqlPass = sqlPass;\r\n" + 
+				"		ConnectedDevice.connP = sqlConnectP;\r\n" + 
+				"		ConnectedDevice.sqlD = sqlDr;\r\n" + 
+				"		\r\n" + 
+				"\r\n" + 
+				"		devendpoint = endpoint;\r\n" + 
+				"		deviceid = devid;\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Set the connection type and initialize all necessary connector wrappers.\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		connectiontype = conntypes;\r\n" + 
+				"\r\n" + 
+				"		if (connectiontype[0] == \"OPCUA\") {\r\n" + 
+				"			opcuaConnector.clientMapper.addConnectorProvider(\"opc.tcp\", new OpcUaConnectorProvider());\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Set the connection to database to enable interactions with available\r\n" + 
+				"		 * configuration.\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		if (initDB == true) {\r\n" + 
+				"			sqlDriver = new SQLDriver(sqlHostPort + \"/\" + sqlDb, sqlUser, sqlPass, sqlConnectP,\r\n" + 
+				"					                  sqlDr);\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	/**\r\n" + 
+				"	 * Method getSingleDeviceValueByConfig uses a key to identify the configuration\r\n" + 
+				"	 * \r\n" + 
+				"	 * @param key identifier of element\r\n" + 
+				"	 * \r\n" + 
+				"	 * @return device value\r\n" + 
+				"	 * \r\n" + 
+				"	 */\r\n" + 
+				"	\r\n" + 
+				"	public String getSingleDeviceValueByConfig(String key) throws Exception {\r\n" + 
+				"\r\n" + 
+				"		String address;\r\n" + 
+				"\r\n" + 
+				"		if (sqlDriver == null) {\r\n" + 
+				"			return \"No Database initialized\";\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Set the SQL connection parameters\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		Collection<String> sqlQuery1Params = new LinkedList<>();\r\n" + 
+				"\r\n" + 
+				"		sqlQuery1Params.add(\"deviceid\");\r\n" + 
+				"		sqlQuery1Params.add(deviceid);\r\n" + 
+				"		sqlQuery1Params.add(\"browsename\");\r\n" + 
+				"		sqlQuery1Params.add(key);\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Set the SQL connection string\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		String sqlQuery1String = getSQLString(\"SELECT * FROM device.deviceendpoints WHERE $1='$2' AND $3='$4'\",\r\n" + 
+				"				sqlQuery1Params);\r\n" + 
+				"\r\n" + 
+				"		System.out.println(\"SQL: \" + sqlQuery1String);\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Get the address as SQL result string\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		ResultSet result1 = sqlDriver.sqlQuery(sqlQuery1String);\r\n" + 
+				"\r\n" + 
+				"		/* Result next necessary to guarantee a data entry */\r\n" + 
+				"\r\n" + 
+				"		if (result1.next()) {\r\n" + 
+				"\r\n" + 
+				"			address = result1.getString(\"address\");\r\n" + 
+				"\r\n" + 
+				"			System.out.println(\"ID   : \" + address);\r\n" + 
+				"			return this.getSingleDeviceValue(address, \"OPCUA\");\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		return \"No configuration records available\";\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	/**\r\n" + 
+				"	 * Method getSingleDeviceValue uses address call for the set connector\r\n" + 
+				"	 * \r\n" + 
+				"	 * @param address  path of connection endpoint (e.g. opcua node)\r\n" + 
+				"	 * @param conntype the connection type to access the endpoint\r\n" + 
+				"	 * \r\n" + 
+				"	 * @return Device value\r\n" + 
+				"	 * \r\n" + 
+				"	 */\r\n" + 
+				"\r\n" + 
+				"	public String getSingleDeviceValue(String address, String conntype) throws Exception {\r\n" + 
+				"\r\n" + 
+				"		try {\r\n" + 
+				"\r\n" + 
+				"			/*\r\n" + 
+				"			 * Execute only, if device can provide the configured connection type for the\r\n" + 
+				"			 * address.\r\n" + 
+				"			 */\r\n" + 
+				"\r\n" + 
+				"			if (Arrays.stream(connectiontype).anyMatch(x -> conntype.equals(x))) {\r\n" + 
+				"\r\n" + 
+				"				Object ret = (opcuaConnector.getOPCUANodeValue(devendpoint, address));\r\n" + 
+				"\r\n" + 
+				"				return (String) ret;\r\n" + 
+				"\r\n" + 
+				"			}\r\n" + 
+				"\r\n" + 
+				"			return null;\r\n" + 
+				"\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		catch (Exception e) {\r\n" + 
+				"			e.printStackTrace();\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		return null;\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	/**\r\n" + 
+				"	 * Method setSingleDeviceValueByConfig uses a key to identify the configuration\r\n" + 
+				"	 * \r\n" + 
+				"	 * @param key   identifier of element\r\n" + 
+				"	 * @param value value that should be set\r\n" + 
+				"	 * \r\n" + 
+				"	 * @return device value\r\n" + 
+				"	 * \r\n" + 
+				"	 */\r\n" + 
+				"\r\n" + 
+				"	public String setSingleDeviceValueByConfig(String key, String value) throws Exception {\r\n" + 
+				"\r\n" + 
+				"		String address;\r\n" + 
+				"\r\n" + 
+				"		if (sqlDriver == null) {\r\n" + 
+				"			return \"No Database initialized\";\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Set the SQL connection parameters\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		Collection<String> sqlQuery1Params = new LinkedList<>();\r\n" + 
+				"\r\n" + 
+				"		sqlQuery1Params.add(\"deviceid\");\r\n" + 
+				"		sqlQuery1Params.add(deviceid);\r\n" + 
+				"		sqlQuery1Params.add(\"browsename\");\r\n" + 
+				"		sqlQuery1Params.add(key);\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Set the SQL connection string\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		String sqlQuery1String = getSQLString(\"SELECT * FROM device.deviceendpoints WHERE $1='$2' AND $3='$4'\",\r\n" + 
+				"				sqlQuery1Params);\r\n" + 
+				"\r\n" + 
+				"		System.out.println(\"SQL: \" + sqlQuery1String);\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Get the address as SQL result string\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		ResultSet result1 = sqlDriver.sqlQuery(sqlQuery1String);\r\n" + 
+				"\r\n" + 
+				"		/* Result next necessary to guarantee a data entry */\r\n" + 
+				"\r\n" + 
+				"		if (result1.next()) {\r\n" + 
+				"\r\n" + 
+				"			address = result1.getString(\"address\");\r\n" + 
+				"\r\n" + 
+				"			System.out.println(\"ID   : \" + address);\r\n" + 
+				"			return this.setSingleDeviceValue(address, \"OPCUA\", value);\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		return \"No configuration records available\";\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	/**\r\n" + 
+				"	 * Method setSingleDeviceValue uses address call for the set connector\r\n" + 
+				"	 * \r\n" + 
+				"	 * @param address  path of connection endpoint (e.g. opcua node)\r\n" + 
+				"	 * @param conntype the connection type to access the endpoint\r\n" + 
+				"	 * @param value    value that should be set\r\n" + 
+				"	 * \r\n" + 
+				"	 * @return device value\r\n" + 
+				"	 * \r\n" + 
+				"	 */\r\n" + 
+				"\r\n" + 
+				"	public String setSingleDeviceValue(String address, String conntype, String value) throws Exception {\r\n" + 
+				"\r\n" + 
+				"		try {\r\n" + 
+				"\r\n" + 
+				"			/*\r\n" + 
+				"			 * Execute only, if device can provide the configured connection type for the\r\n" + 
+				"			 * address.\r\n" + 
+				"			 */\r\n" + 
+				"\r\n" + 
+				"			if (Arrays.stream(connectiontype).anyMatch(x -> conntype.equals(x))) {\r\n" + 
+				"\r\n" + 
+				"				Object ret = (opcuaConnector.setOPCUANodeValue(devendpoint, address, value, \"Boolean\"));\r\n" + 
+				"\r\n" + 
+				"				return (String) ret;\r\n" + 
+				"\r\n" + 
+				"			}\r\n" + 
+				"\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		catch (Exception e) {\r\n" + 
+				"			e.printStackTrace();\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		return null;\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	/**\r\n" + 
+				"	 * Method setSingleDeviceValueByConfig uses a key to identify the configuration\r\n" + 
+				"	 * \r\n" + 
+				"	 * @param key         identifier of element\r\n" + 
+				"	 * @param arguments[] arguments for method calls\r\n" + 
+				"	 * \r\n" + 
+				"	 * @return result of method call\r\n" + 
+				"	 * \r\n" + 
+				"	 */\r\n" + 
+				"\r\n" + 
+				"	public String callOperationByConfig(String key, Object[] arguments) throws Exception {\r\n" + 
+				"\r\n" + 
+				"		String address;\r\n" + 
+				"\r\n" + 
+				"		if (sqlDriver == null) {\r\n" + 
+				"			return \"No Database initialized\";\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Set the SQL connection parameters\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		Collection<String> sqlQuery1Params = new LinkedList<>();\r\n" + 
+				"\r\n" + 
+				"		sqlQuery1Params.add(\"deviceid\");\r\n" + 
+				"		sqlQuery1Params.add(deviceid);\r\n" + 
+				"		sqlQuery1Params.add(\"browsename\");\r\n" + 
+				"		sqlQuery1Params.add(key);\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Set the SQL connection string\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		String sqlQuery1String = getSQLString(\"SELECT * FROM device.deviceendpoints WHERE $1='$2' AND $3='$4'\",\r\n" + 
+				"				sqlQuery1Params);\r\n" + 
+				"\r\n" + 
+				"		System.out.println(\"SQL: \" + sqlQuery1String);\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Get the address as SQL result string\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		ResultSet result1 = sqlDriver.sqlQuery(sqlQuery1String);\r\n" + 
+				"\r\n" + 
+				"		/* Result next necessary to guarantee a data entry */\r\n" + 
+				"\r\n" + 
+				"		if (result1.next()) {\r\n" + 
+				"\r\n" + 
+				"			address = result1.getString(\"address\");\r\n" + 
+				"\r\n" + 
+				"			System.out.println(\"ID   : \" + address);\r\n" + 
+				"			return this.callOperation(address, \"OPCUA\", arguments);\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		return \"No configuration records available\";\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	/**\r\n" + 
+				"	 * Method callOperation uses address call for the set connector\r\n" + 
+				"	 * \r\n" + 
+				"	 * @param address     path of connection endpoint (e.g. opcua node)\r\n" + 
+				"	 * @param conntype    the connection type to access the endpoint\r\n" + 
+				"	 * @param arguments[] arguments for method calls\r\n" + 
+				"	 * \r\n" + 
+				"	 * @return device value\r\n" + 
+				"	 * \r\n" + 
+				"	 */\r\n" + 
+				"\r\n" + 
+				"	public String callOperation(String address, String conntype, Object[] arguments) throws Exception {\r\n" + 
+				"\r\n" + 
+				"		try {\r\n" + 
+				"\r\n" + 
+				"			/*\r\n" + 
+				"			 * Execute only, if device can provide the configured connection type for the\r\n" + 
+				"			 * address.\r\n" + 
+				"			 */\r\n" + 
+				"\r\n" + 
+				"			if (Arrays.stream(connectiontype).anyMatch(x -> conntype.equals(x))) {\r\n" + 
+				"\r\n" + 
+				"				Object ret = (opcuaConnector.callOPCUAMethod(devendpoint, address, arguments));\r\n" + 
+				"\r\n" + 
+				"				return (String) ret;\r\n" + 
+				"\r\n" + 
+				"			}\r\n" + 
+				"\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		catch (Exception e) {\r\n" + 
+				"			e.printStackTrace();\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		return null;\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	/**\r\n" + 
+				"	 * >>> Method from class \"SQLProviderTestOLD\" <<<\r\n" + 
+				"	 * \r\n" + 
+				"	 * Create a SQL string from an input SQL String with place holders in format $x\r\n" + 
+				"	 * with x being an integer number.\r\n" + 
+				"	 * \r\n" + 
+				"	 * @param baseString SQL string with place holders\r\n" + 
+				"	 * @param parameter  Parameter values that place holders are substituted for\r\n" + 
+				"	 * \r\n" + 
+				"	 * @return SQL string with parameter instead of place holders\r\n" + 
+				"	 */\r\n" + 
+				"\r\n" + 
+				"	public static String getSQLString(String baseString, Collection<String> parameter) {\r\n" + 
+				"		// Resulting SQL String\r\n" + 
+				"		String result = baseString;\r\n" + 
+				"\r\n" + 
+				"		// Replace place holders with parameter\r\n" + 
+				"		// - Counter variable\r\n" + 
+				"		int counter = 1;\r\n" + 
+				"		// - Replace all place holders\r\n" + 
+				"		for (String par : parameter) {\r\n" + 
+				"			result = result.replace(\"$\" + counter, par);\r\n" + 
+				"			counter++;\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		// Return SQL string with resolved parameter\r\n" + 
+				"		return result;\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"}\r\n" + 
+				"";
+		
+		return text;
+	}
+	
+	public String createOPCUAConnectorWrapper() {
+		String text = "package " + projectOperations.getNamespace() + ".connection;\r\n" + 
+				"\r\n" + 
+				"import org.eclipse.basyx.vab.exception.provider.ProviderException;\r\n" + 
+				"import org.eclipse.basyx.vab.gateway.ConnectorProviderMapper;\r\n" + 
+				"import org.eclipse.basyx.vab.protocol.opcua.connector.OpcUaConnectorProvider;\r\n" + 
+				"\r\n" + 
+				"/**\r\n" + 
+				" * This generic connector-class provides a wrapper which holds the OPC UA\r\n" + 
+				" * clientMapper object with its functions. Aim of this wrapper class is to\r\n" + 
+				" * provide the OPC UA clientRunner-Functions of VAB.\r\n" + 
+				" *\r\n" + 
+				" * @author DFKI\r\n" + 
+				" *\r\n" + 
+				" */\r\n" + 
+				"\r\n" + 
+				"public class OPCUAConnectorWrapper {\r\n" + 
+				"\r\n" + 
+				"	protected boolean booleanValue;\r\n" + 
+				"	public ConnectorProviderMapper clientMapper = new ConnectorProviderMapper();\r\n" + 
+				"\r\n" + 
+				"	/*\r\n" + 
+				"	 * Initialize the connector object for OPC UA connection directly in the\r\n" + 
+				"	 * connector wrapper class. The clientMapper-Object provides complete OPC UA\r\n" + 
+				"	 * client functions from MILO package.\r\n" + 
+				"	 */\r\n" + 
+				"\r\n" + 
+				"	public OPCUAConnectorWrapper() {\r\n" + 
+				"		clientMapper.addConnectorProvider(\"opc.tcp\", new OpcUaConnectorProvider());\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	public String getOPCUANodeValue(String endpoint, String node_browsename) throws ProviderException {\r\n" + 
+				"\r\n" + 
+				"		try {\r\n" + 
+				"\r\n" + 
+				"			Object ret = clientMapper.getConnector(endpoint).getModelPropertyValue(node_browsename);\r\n" + 
+				"\r\n" + 
+				"			return (String) ret;\r\n" + 
+				"\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		catch (final Exception e) {\r\n" + 
+				"			e.printStackTrace();\r\n" + 
+				"			return \"0\";\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	public String setOPCUANodeValue(String endpoint, String node_browsename, String value, String datatype)\r\n" + 
+				"			throws ProviderException {\r\n" + 
+				"\r\n" + 
+				"		try {\r\n" + 
+				"\r\n" + 
+				"			/* TBD: DataType necessary */\r\n" + 
+				"\r\n" + 
+				"			if (datatype == \"Boolean\") {\r\n" + 
+				"				booleanValue = Boolean.valueOf(value);\r\n" + 
+				"			}\r\n" + 
+				"\r\n" + 
+				"			/* Set the value to opcua node */\r\n" + 
+				"			clientMapper.getConnector(endpoint).setModelPropertyValue(node_browsename, booleanValue);\r\n" + 
+				"\r\n" + 
+				"			/* Check if value has been set correctly */\r\n" + 
+				"			Object ret = clientMapper.getConnector(endpoint).getModelPropertyValue(node_browsename);\r\n" + 
+				"\r\n" + 
+				"			return (String) ret;\r\n" + 
+				"\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		catch (final Exception e) {\r\n" + 
+				"			e.printStackTrace();\r\n" + 
+				"			return \"0\";\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	public String callOPCUAMethod(String endpoint, String node_browsename, Object[] methodargument)\r\n" + 
+				"			throws ProviderException {\r\n" + 
+				"\r\n" + 
+				"		try {\r\n" + 
+				"\r\n" + 
+				"			/* Provide method call with import parameters (can also be empty) */\r\n" + 
+				"			Object methodret = clientMapper.getConnector(endpoint).invokeOperation(node_browsename, methodargument);\r\n" + 
+				"\r\n" + 
+				"			return (String) methodret;\r\n" + 
+				"\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		catch (Exception e) {\r\n" + 
+				"			e.printStackTrace();\r\n" + 
+				"			return null;\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"}\r\n" + 
+				"";
+		
+		return text;
+	}
+	
+	public String createDeviceAASServer() {
+		return createDeviceAASServer(this.aasIp, this.aasPort);
+	}
+	
+	public String createDeviceAASServer(String deviceEndPoint) {
+		return createDeviceAASServer(this.aasIp, this.aasPort, deviceEndPoint);
+	}
+	
+	public String createDeviceAASServer(String aasIp, String aasPort) {
+		return createDeviceAASServer(aasIp, aasPort, "");
+	}
+	
+	public String createDeviceAASServer(String aasIp, String aasPort, String deviceEndPoint) {
+		// Endpoint def: opc.tcp://192.168.0.37:4840
+		String text = "package " + projectOperations.getNamespace() + ".module;\r\n" + 
+				"\r\n" + 
+				"import java.util.concurrent.TimeUnit;\r\n" + 
+				"\r\n" + 
+				"import org.eclipse.basyx.aas.metamodel.map.AssetAdministrationShell;\r\n" + 
+				"import " + projectOperations.getNamespace() + ".connection.ConnectedDevice;\r\n" + 
+				"import org.eclipse.basyx.submodel.metamodel.connected.ConnectedSubModel;\r\n" + 
+				"import org.eclipse.basyx.vab.coder.json.connector.JSONConnector;\r\n" + 
+				"import org.eclipse.basyx.vab.modelprovider.VABElementProxy;\r\n" + 
+				"import org.eclipse.basyx.vab.protocol.http.connector.HTTPConnector;\r\n" + 
+				"import org.eclipse.basyx.vab.protocol.http.server.AASHTTPServer;\r\n" + 
+				"\r\n" + 
+				"/**\r\n" + 
+				" * A HTTP server with the asset administration shell and registry context. This\r\n" + 
+				" * class provides the AAS with submodels over HTTP by using the given context\r\n" + 
+				" * and provides the connected device class for the submodel connection.\r\n" + 
+				" * \r\n" + 
+				" * @author DFKI\r\n" + 
+				" * \r\n" + 
+				" */\r\n" + 
+				"\r\n" + 
+				"public class DeviceAASServer extends AASHTTPServer {\r\n" + 
+				"\r\n" + 
+				"	protected static String deviceendpoint = \"" + deviceEndPoint + "/\";\r\n" + 
+				"	protected static AssetAdministrationShell AAS;\r\n" + 
+				"\r\n" + 
+				"	/*\r\n" + 
+				"	 * Setting the context in the constructor makes the context object with submodel\r\n" + 
+				"	 * available.\r\n" + 
+				"	 */\r\n" + 
+				"\r\n" + 
+				"	public DeviceAASServer(DeviceContext DeviceContext) {\r\n" + 
+				"\r\n" + 
+				"		super(DeviceContext);\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	public static void main(String[] args) throws Exception {\r\n" + 
+				"\r\n" + 
+				"		/* Connected device with state machine */\r\n" + 
+				"\r\n" + 
+				"		ConnectedDevice connectedDevice = new ConnectedDevice(deviceendpoint, new Object[] { \"OPCUA\" },\r\n" + 
+				"				\"canvaas\", false);\r\n" + 
+				"\r\n" + 
+				"		/* Building the HTTP Server with the given context */\r\n" + 
+				"\r\n" + 
+				"		DeviceContext deviceContext = new DeviceContext(\"" + aasIp + "\", " + aasPort + ", connectedDevice);\r\n" + 
+				"		DeviceAASServer deviceServer = new DeviceAASServer(deviceContext);\r\n" + 
+				"		deviceServer.start();\r\n" + 
+				"\r\n" + 
+				"		/* Create a connected sub model */\r\n" + 
+				"\r\n" + 
+				"		// ConnectedSubModel connectedControlSubModel = directlyConnectToSubmodelControl();\r\n" + 
+				"\r\n" + 
+				"		System.out.println(\"Waiting to connect: 2 ms\");\r\n" + 
+				"		Thread.sleep(TimeUnit.SECONDS.toMillis(2));\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Setting the connected device to true to enable interactions with the device.\r\n" + 
+				"		 * Possibility in future development to set this to false for simulation mode.\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		connectedDevice.online = true;\r\n" + 
+				"\r\n" + 
+				"		System.out.println(\"" + projectOperations.getProjectName() + " is online at: http://" + this.aasIp + ":" + 
+						this.aasPort + "/" + projectOperations.getSafeProjectName() + "/aas/\");\r\n" + 
+				"\r\n" + 
+				"		// floorserver.shutdown();\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"//	private static ConnectedSubModel directlyConnectToSubmodelControl() {\r\n" + 
+				"//		VABElementProxy proxy = new VABElementProxy(\"\",\r\n" + 
+				"//				new JSONConnector(new HTTPConnector(\"http://" + aasIp +":" + aasPort + "/"+ projectOperations.getSafeProjectName() + "/\")));\r\n" + 
+				"//		return new ConnectedSubModel(proxy.getDeepProxy(\"/aas/submodels/ControlComponent/\"));\r\n" + 
+				"//	}\r\n" + 
+				"}\r\n" + 
+				"";
+		return text;
+	}
+	
+	public String createDeviceContext() {
+		String text = "package " + projectOperations.getNamespace() + ".module;\r\n" + 
+				"\r\n" + 
+				"import javax.servlet.http.HttpServlet;\r\n" + 
+				"\r\n" + 
+				"import org.eclipse.basyx.aas.metamodel.map.AssetAdministrationShell;\r\n" + 
+				"import org.eclipse.basyx.aas.metamodel.map.descriptor.ModelUrn;\r\n" + 
+				"import org.eclipse.basyx.aas.restapi.AASModelProvider;\r\n" + 
+				"import org.eclipse.basyx.aas.metamodel.api.parts.asset.AssetKind;\r\n" + 
+				"import org.eclipse.basyx.aas.metamodel.map.parts.Asset;\r\n" + 
+				"import org.eclipse.basyx.submodel.metamodel.api.identifier.IdentifierType;\r\n" +
+				"import org.eclipse.basyx.aas.restapi.VABMultiSubmodelProvider;\r\n" + 
+				"import " + projectOperations.getNamespace() + ".connection.ConnectedDevice;\r\n" + 
+				"import " + projectOperations.getNamespace() + ".module.submodel.DeviceAAS;\r\n"; 
+				for(SubModel model : submodelCreator.getSubModels()) {
+					text += "import " + projectOperations.getNamespace() + ".module.submodel." + model.getName().replace(" ", "") + ";\r\n";
+				}
+				text += "import org.eclipse.basyx.submodel.metamodel.map.SubModel;\r\n" + 
+				"import org.eclipse.basyx.submodel.restapi.SubModelProvider;\r\n" + 
+				"import org.eclipse.basyx.vab.modelprovider.api.IModelProvider;\r\n" + 
+				"import org.eclipse.basyx.vab.protocol.http.server.BaSyxContext;\r\n" + 
+				"import org.eclipse.basyx.vab.protocol.http.server.VABHTTPInterface;\r\n" + 
+				"\r\n" + 
+				"/**\r\n" + 
+				" * Context for the HTTP server. This class provides the device aas with its sub\r\n" + 
+				" * models providing for http-servlets by using VAB.\r\n" + 
+				" * \r\n" + 
+				" * @author DFKI\r\n" + 
+				" * \r\n" + 
+				" */\r\n" + 
+				"\r\n" + 
+				"public class DeviceContext extends BaSyxContext {\r\n" + 
+				"	private static final long serialVersionUID = 5469957942186749451L;\r\n" + 
+				"\r\n" + 
+				"	protected AssetAdministrationShell AAS;\r\n" + 
+				"\r\n" + 
+				"	/*\r\n" + 
+				"	 * The context class is necessary to build the whole model context of AAS and\r\n" + 
+				"	 * provide it by HTTP.\r\n" + 
+				"	 */\r\n" + 
+				"\r\n" + 
+				"	public DeviceContext(String hostName, int port, ConnectedDevice connDevice) {\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * Create a context with the base path /basys.floor/*, a default server context\r\n" + 
+				"		 * base directory (\"\") and the given host server and port. The base path must be\r\n" + 
+				"		 * identical with hosted aas and its submodels. *\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		super(\"/" + projectOperations.getSafeProjectName() + "\", \"\", hostName, port);\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * 1. Create models. For direct method link of submodels, the submodel gets the\r\n" + 
+				"		 * connected device.\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		AssetAdministrationShell aas = new DeviceAAS();\r\n";
+				
+				for (SubModel model : submodelCreator.getSubModels()) {
+					String modelClass = model.getName().replaceAll(" ", "");
+					text += "		SubModel " + modelClass.toLowerCase() + " = new " + modelClass + "(connDevice);\r\n";
+					text += "\r\n" + 
+							"		ModelUrn urn" + modelClass.toLowerCase() + " = new ModelUrn(\"urn:de.basyxifs:devices:" + modelClass + ":1.0:1:asset#001\");\r\n" + 
+							"		" + modelClass.toLowerCase() + ".setIdentification(urn" + modelClass.toLowerCase() + ".getIdType(), urn" + modelClass.toLowerCase() + ".getURN());\r\n" + 
+							"\r\n";
+//					text += "		aas.addSubModel(new SubmodelDescriptor(" + modelClass.toLowerCase() + ".getIdShort(), " + modelClass.toLowerCase() + ".getIdentification(),\r\n" + 
+//							"				\"http://" + aasIp + ":" + aasPort + "/" + projectOperations.getSafeProjectName() + "/aas/submodels/" + modelClass + "/\")); // + sm.getIdShort()\r\n" + 
+//							"		\r\n";
+					text += "		aas.addSubModel(" + modelClass.toLowerCase() + ");\r\n";
+					text += "		// Access to submodel via: http://" + aasIp + ":" + aasPort + "/" + projectOperations.getSafeProjectName() + "/aas/submodels/" + modelClass + "/\r\n";
+				}
+				
+
+				text += "		Asset asset = new Asset();\r\n" + 
+						"		\r\n" + 
+						"		/* Asset Kind can be Instance or Type */\r\n" + 
+						"		asset.setAssetKind(AssetKind.INSTANCE);\r\n" + 
+						"		asset.setIdShort(\"" + projectOperations.getProjectNameWithoutSpace() + "\");\r\n" + 
+						"		asset.setIdentification(IdentifierType.CUSTOM, \"" + projectOperations.getProjectNameWithoutSpace() + "1\");\r\n" + 
+						"\r\n" + 
+						"		\r\n" + 
+						"		aas.setAsset(asset);\r\n" +
+						"		aas.setIdShort(\"" + projectOperations.getProjectNameWithoutSpace() + "AAS\");\r\n" +
+						"		/* Adding all submodels by using the submodel-descriptor functionality. */\r\n" + 
+				"		/*\r\n" + 
+				"		 * 2. Wrap models in model providers\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		VABMultiSubmodelProvider provider = new VABMultiSubmodelProvider();\r\n" + 
+				"		provider.setAssetAdministrationShell(new AASModelProvider(aas));\r\n" + 
+				"\r\n";
+				for (SubModel model : submodelCreator.getSubModels()) {
+					String modelClass = model.getName().replaceAll(" ", "");
+					text += "		SubModelProvider " + modelClass + "Provider = new SubModelProvider(" + modelClass.toLowerCase() + ");\r\n" + 
+							"		provider.addSubmodel(\"" + modelClass + "\", " + modelClass + "Provider);\r\n" + 
+							"		\r\n";
+				}
+				
+				text += "		/*\r\n" + 
+				"		 * 3. Create HTTP servlet for hosting with tomcat\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		HttpServlet servlet = new VABHTTPInterface<IModelProvider>(provider);\r\n" + 
+				"\r\n" + 
+				"		/*\r\n" + 
+				"		 * 4. Add the servlet to server context\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"//		addServletMapping(\"/*\", servlet);\r\n" + 
+				"//		addServletMapping(\"/SQL/*\", new SQLDirectoryServlet().withParameter(\"config\",\r\n" + 
+				"//				\"/WebContent/WEB-INF/config/directory/sqldirectory/directory.properties\"));\r\n" + 
+				"\r\n" + 
+				"		addServletMapping(\"/*\", servlet);\r\n" + 
+				"		\r\n" + 
+				"		/*\r\n" + 
+				"		 * 5. Quick provide for aas and submodel elements (Possibility: Provide\r\n" + 
+				"		 * availability in array)\r\n" + 
+				"		 */\r\n" + 
+				"\r\n" + 
+				"		AAS = aas;\r\n" + 
+				"\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"	public AssetAdministrationShell getAAS() {\r\n" + 
+				"		return AAS;\r\n" + 
+				"	}\r\n" + 
+				"\r\n" + 
+				"\r\n" + 
+				"}\r\n" + 
+				"";
+		return text;
+	}
+}
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/FileUtils.java b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/FileUtils.java
new file mode 100644
index 0000000..eb51856
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/FileUtils.java
@@ -0,0 +1,177 @@
+/*******************************************************************************
+ * Copyright (c) 2020 DFKI.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *     DFKI - Volkan Gezer <volkan.gezer@dfki.de>
+ *     
+ *******************************************************************************/
+package org.eclipse.aas.basyx.codegen.util;
+
+/**
+*
+*/
+
+import java.io.BufferedWriter;
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.FileNotFoundException;
+import java.io.FileWriter;
+import java.io.IOException;
+import java.io.PrintWriter;
+import java.io.RandomAccessFile;
+import java.nio.file.FileAlreadyExistsException;
+import java.nio.file.Files;
+
+/**
+ * Provides static methods to perform file operations.
+ * 
+ * @author Volkan
+ *
+ */
+public class FileUtils {
+
+	/**
+	 * Removes file contents.
+	 * 
+	 * @param fileName to clear
+	 */
+	public static void clearFile(final String fileName) {
+		PrintWriter writer;
+		try {
+			writer = new PrintWriter(fileName);
+			writer.close();
+		} catch (final FileNotFoundException e) {
+			System.err.println("File not found!");
+			e.printStackTrace();
+		}
+
+	}
+	
+	/**
+	 * Reads file contents.
+	 * 
+	 * @param fileName to read
+	 */
+	public static String readFile(final String fileName) {
+
+		try {
+			File file = new File(fileName);
+			FileInputStream fis = new FileInputStream(file);
+			byte[] data = new byte[(int) file.length()];
+			fis.read(data);
+			fis.close();
+
+			return new String(data, "UTF-8");
+		} catch (Exception e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+		return "File Error!";
+
+	}
+	
+
+	/**
+	 * Removes a line from the given file.
+	 *
+	 * @param fileName     to open for writing
+	 * @param lineToRemove line to search for.
+	 * @return {@code true if successful}, {@code false} if not.
+	 */
+	public static boolean removeLine(final String fileName, final String lineToRemove) {
+		RandomAccessFile file;
+		boolean success = false;
+		try {
+			file = new RandomAccessFile(fileName, "rw");
+			String delete;
+			String task = "";
+			while ((delete = file.readLine()) != null) {
+				if (delete.startsWith(lineToRemove)) {
+					success = true;
+					continue;
+				}
+				task += delete + "\n";
+			}
+			final BufferedWriter writer = new BufferedWriter(new FileWriter(fileName));
+			writer.write(task);
+			file.close();
+			writer.close();
+			System.out.println("Line removed!");
+		} catch (final Exception e) {
+			System.err.println("Error during line removal!");
+			e.printStackTrace();
+		}
+		return success;
+
+	}
+
+	/**
+	 * Writes the given text into the given file. Creates if file not exists. Closes
+	 * after writing. It does not clear the existing data.
+	 * 
+	 * @param fileName to open for writing.
+	 * @param data     to write as a new line.
+	 *
+	 */
+	public static void writeData(final String fileName, final String data) {
+		try {
+			clearFile(fileName);
+			final BufferedWriter writer = new BufferedWriter(new FileWriter(fileName, true));
+			writer.write(data);
+			writer.newLine();
+			writer.close();
+		} catch (final IOException e) {
+			System.err.println("Error while opening the file!");
+		}
+	}
+
+	/**
+	 * Creates the given {@code fullPath}, if some of the folders do not exist, it
+	 * creates them.
+	 * 
+	 * @param fullPath
+	 * @return {@code true} if created, {@code false} if not
+	 */
+	public static boolean createDirectories(String fullPath) {
+		File directory = new File(fullPath);
+
+		System.out.println("Creating folder: " + directory.getAbsolutePath());
+		if (!directory.exists()) {
+
+			directory.mkdirs();
+			System.out.println(directory.getAbsolutePath()+ " successfully created");
+			return true;
+		}
+		return false;
+	}
+
+	public static String getCurrentWorkingDirectory() {
+		File directory = new File("");
+		return directory.getAbsolutePath();
+	}
+
+	public static String getFullPathFromNamespace(String namespace) {
+		// convert each dot into a folder
+		return namespace.replace(".", "/");
+	}
+	
+	public static void copyFile(String fromFullPath, String toFullPath) {
+		File source = new File(fromFullPath);
+		File dest = new File(toFullPath);
+		try {
+			Files.copy(source.toPath(), dest.toPath());
+		} catch(FileAlreadyExistsException e) {
+			System.out.println("The project with the same name was found. Skipping external class copy!");
+		} catch (IOException e) {
+			System.out.println("Error during copy!");
+			e.printStackTrace();
+		}
+	}
+}
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/Project.java b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/Project.java
new file mode 100644
index 0000000..7162daa
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/Project.java
@@ -0,0 +1,501 @@
+/*******************************************************************************
+ * Copyright (c) 2020 DFKI.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *     DFKI - Volkan Gezer <volkan.gezer@dfki.de>
+ *     
+ *******************************************************************************/
+package org.eclipse.aas.basyx.codegen.util;
+
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.aas.basyx.codegen.util.submodel.SubModel;
+import org.eclipse.aas.basyx.codegen.util.submodel.SubModelCreator;
+
+public class Project {
+	private DataConnector sdc;
+	private SubModelCreator mc;
+	private String deviceendpoint;
+	private String externalClassFolder = FileUtils.getCurrentWorkingDirectory() + "/extClasses";
+	private String aasIP;
+	private String aasPort;
+	private String namespace = "de.dfki.canvaas.default";
+	private String projectName = "CanvAASProject";
+	private String projectFolder = projectName + "/";
+	
+	
+	public Project(String modelUrn, String aasIp, String aasPort, SubModelCreator mc) {
+		// Set access point to AAS
+		this(modelUrn, aasIp, aasPort, mc, "");
+	}
+	
+	public String getProjectName() {
+		return projectName;
+	}
+
+	/**
+	 * Defines where the external classes are stored. They are automatically copied into
+	 * project folder after project creation. If not set, uses the API's {@code extClasses} folder.
+	 * @param externalClassFolder full path to the external class folder
+	 */
+	public void setExternalClassFolder(String externalClassFolder) {
+		this.externalClassFolder = externalClassFolder;
+	}
+
+	/**
+	 * Sets the project folder to export the files to. If not set, creates a folder with {@code projectName}
+	 * in API's folder.
+	 * @param projectFolder to export the files to.
+	 */
+	public void setProjectFolder(String projectFolder) {
+		this.projectFolder = projectFolder;
+	}
+
+	public SubModelCreator getSMC() {
+		return mc;
+	}
+
+
+	public String getAasIP() {
+		return aasIP;
+	}
+
+
+	public String getAasPort() {
+		return aasPort;
+	}
+
+	public String getNamespace() {
+		return namespace;
+	}
+	
+	/**
+	 * Sets the project name. This is also used as asset name.
+	 * @param projectName to set
+	 */
+	public void setProjectName(String projectName) {
+		this.projectName = projectName;
+	}
+	
+	/**
+	 * Sets the namespace of the classes using the project name automatically.
+	 * If not set, defaults to {@code de.dfki.canvaas.default}.
+	 */
+	public void setNamespaceFromProjectName() {
+		namespace = projectName.toLowerCase().replace(" ", ".");
+	}
+
+	/**
+	 * Returns the project name with lowercase and trimmed from spaces.
+	 * @return
+	 */
+	public String getSafeProjectName() {
+		return projectName.toLowerCase().replace(" ", "");
+	}
+	
+	/**
+	 * Returns the project name without spaces.
+	 * @return
+	 */
+	public String getProjectNameWithoutSpace() {
+		return projectName.replace(" ", "");
+	}
+
+	/**
+	 * Sets the namespace of the project to be created. See
+	 * {@link #setNamespaceFromProjectName()} to create it automatically.
+	 * @param namespace to set.
+	 */
+	public void setNamespace(String namespace) {
+		this.namespace = namespace;
+	}
+
+	/**
+	 * 
+	 * Constructor. Creates a project to write actual files.
+	 *
+	 * @param modelUrn a unique identifier for the model.
+	 * @param aasIp IP address to access to the AAS server
+	 * @param aasPort Port number to access to the server
+	 * @param subModelCreator that collects the sub models.
+	 * @param deviceEndPoint IP:PORT of the device in case AAS is not stored 
+	 * at the same physical location.
+	 */
+	public Project(String modelUrn, String aasIp, String aasPort, SubModelCreator subModelCreator, String deviceEndPoint) {
+		// Set access point to AAS
+		DataConnector dc = new DataConnector(modelUrn,
+				aasIp, aasPort, subModelCreator, this);
+		this.aasIP = aasIp;
+		this.aasPort = aasPort;
+		this.mc = subModelCreator;
+		this.sdc = dc;
+		this.deviceendpoint = deviceEndPoint;
+	}
+
+	private void createFilePaths() {
+		FileUtils.createDirectories(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/connection");
+		// FileUtils.createDirectories(fullPath + "/module"); // Optional because of next line
+		FileUtils.createDirectories(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/module/submodel");
+		FileUtils.createDirectories(projectFolder + "/includes");
+		//FileUtils.createDirectories(projectFolder + "/includes/basyx");
+		//FileUtils.createDirectories(projectFolder + "/includes/basyx/basyx.sdk/");
+		FileUtils.createDirectories(projectFolder + "/includes/basyx/basyx.sdk/0.1.0-SNAPSHOT/");
+		//FileUtils.createDirectories(projectFolder + "/includes/org.json/");
+		//FileUtils.createDirectories(projectFolder + "/includes/org.json/json/");
+		FileUtils.createDirectories(projectFolder + "/includes/org.json/json/20200518/");
+	}
+	
+	private void createConnectionFiles() {
+		createFilePaths();
+		// ConnectedDevice
+		FileUtils.writeData(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/connection/ConnectedDevice.java", sdc.createConnectedDevice());
+		// DataCrawler
+		FileUtils.writeData(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/connection/DataCrawler.java", sdc.createDataCrawler());
+		// OPCUAConnectorWrapper
+		FileUtils.writeData(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/connection/OPCUAConnectorWrapper.java", sdc.createOPCUAConnectorWrapper());
+	}
+	
+	private void createModuleFiles() {
+		createFilePaths();
+		// DeviceAASServer
+		FileUtils.writeData(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/module/DeviceAASServer.java", sdc.createDeviceAASServer(deviceendpoint));
+		// DeviceContext
+		FileUtils.writeData(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/module/DeviceContext.java", sdc.createDeviceContext());
+		
+	}
+	
+	private void createSubModelFiles() {
+		createFilePaths();
+		// ModelFile
+		List<SubModel> models = mc.getSubModels();
+		for (SubModel submodel : models) {
+			System.out.println("Creating submodel: " + submodel.getName());
+			FileUtils.writeData(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/module/submodel/" + 
+					submodel.getName().replace(" ", "") + ".java", mc.createSubModelFile(submodel.getName(), this));
+		}
+		// DeviceAAS
+		FileUtils.writeData(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/module/submodel/DeviceAAS.java", sdc.createDeviceAAS());
+	}
+	
+	private void createProjectFile() {
+		String text = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n" + 
+				"<projectDescription>\r\n" + 
+				"	<name>" + getProjectName() + "</name>\r\n" + 
+				"	<comment></comment>\r\n" + 
+				"	<projects>\r\n" + 
+				"	</projects>\r\n" + 
+				"	<buildSpec>\r\n" + 
+				"		<buildCommand>\r\n" + 
+				"			<name>org.eclipse.jdt.core.javabuilder</name>\r\n" + 
+				"			<arguments>\r\n" + 
+				"			</arguments>\r\n" + 
+				"		</buildCommand>\r\n" + 
+				"   	<buildCommand>\r\n" + 
+				"			<name>org.eclipse.m2e.core.maven2Builder</name>\r\n" + 
+				"			<arguments>\r\n" + 
+				"			</arguments>\r\n" + 
+				"		</buildCommand>\r\n" +
+				"	</buildSpec>\r\n" + 
+				"	<natures>\r\n" + 
+				"		<nature>org.eclipse.jdt.core.javanature</nature>\r\n" + 
+				"	</natures>\r\n" + 
+				"</projectDescription>\r\n";
+		
+		FileUtils.writeData(projectFolder + ".project", text);
+	}
+	
+	private void createPOMFile() {
+		
+		String text = "<project xmlns=\"http://maven.apache.org/POM/4.0.0\"\r\n" + 
+				"	xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\r\n" + 
+				"	xsi:schemaLocation=\"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd\">\r\n" + 
+				"	<modelVersion>4.0.0</modelVersion>\r\n" + 
+				"\r\n" + 
+				"	<groupId>de.dfki.canvaas</groupId>\r\n" + 
+				"	<artifactId>canvaas." + getSafeProjectName() + "</artifactId>\r\n" + 
+				"	<version>0.0.1-SNAPSHOT</version>\r\n" + 
+				"	<name>" + getProjectName() + "</name>\r\n" + 
+				"\r\n" + 
+				"	<packaging>jar</packaging>\r\n" + 
+				"\r\n" + 
+				"	<properties>\r\n" + 
+				"		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>\r\n" + 
+				"		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>\r\n" + 
+				"	</properties>\r\n" + 
+				"\r\n" + 
+				"	<!-- Specify a repository in the project dir -->\r\n" + 
+				"	<repositories>\r\n" + 
+				"		<repository>\r\n" + 
+				"			<id>data-local</id>\r\n" + 
+				"			<name>data</name>\r\n" + 
+				"			<url>file://${project.basedir}/includes</url>\r\n" + 
+				"		</repository>\r\n" + 
+				"	</repositories>\r\n" + 
+				"\r\n" + 
+				"	<build>\r\n" + 
+				"		<!-- specify custom source directory (default maven source folder is /src/main/java) -->\r\n" + 
+				"		<sourceDirectory>/src</sourceDirectory>\r\n" + 
+				"\r\n" + 
+				"		<plugins>\r\n" + 
+				"			<!-- Compile Sources using Java 8 -->\r\n" + 
+				"			<plugin>\r\n" + 
+				"				<artifactId>maven-compiler-plugin</artifactId>\r\n" + 
+				"				<version>3.8.1</version>\r\n" + 
+				"				<configuration>\r\n" + 
+				"					<source>1.8</source>\r\n" + 
+				"					<target>1.8</target>\r\n" + 
+				"				</configuration>\r\n" + 
+				"			</plugin>\r\n" + 
+				"		</plugins>\r\n" + 
+				"	</build>\r\n" + 
+				"\r\n" + 
+				"	<dependencies>		\r\n" + 
+				"		<!-- Add BaSys SDK from local repository. SDK has to be installed previously -->\r\n" + 
+				"		<dependency>\r\n" + 
+				"			<groupId>basyx</groupId>\r\n" + 
+				"			<artifactId>basyx.sdk</artifactId>\r\n" + 
+				"			<version>0.1.0-SNAPSHOT</version>\r\n" + 
+				"		</dependency>\r\n" + 
+				"	</dependencies>\r\n" + 
+				"</project>";
+		
+		FileUtils.writeData(projectFolder + "pom.xml", text);
+	}
+	
+	private void createClassFile() {
+		String text = "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n" + 
+				"<classpath>\r\n" + 
+				"	<classpathentry kind=\"src\" output=\"target/classes\" path=\"src\">\r\n" + 
+				"		<attributes>\r\n" + 
+				"			<attribute name=\"optional\" value=\"true\"/>\r\n" + 
+				"			<attribute name=\"maven.pomderived\" value=\"true\"/>\r\n" + 
+				"		</attributes>\r\n" + 
+				"	</classpathentry>\r\n" + 
+				"	<classpathentry kind=\"con\" path=\"org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8\">\r\n" + 
+				"		<attributes>\r\n" + 
+				"			<attribute name=\"maven.pomderived\" value=\"true\"/>\r\n" + 
+				"		</attributes>\r\n" + 
+				"	</classpathentry>\r\n" + 
+				"	<classpathentry kind=\"con\" path=\"org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER\">\r\n" + 
+				"		<attributes>\r\n" + 
+				"			<attribute name=\"maven.pomderived\" value=\"true\"/>\r\n" + 
+				"		</attributes>\r\n" + 
+				"	</classpathentry>\r\n" + 
+				"   <classpathentry kind=\"con\" path=\"org.eclipse.jdt.junit.JUNIT_CONTAINER/5\"/>\r\n" + 
+				"	<classpathentry kind=\"lib\" path=\"includes/basyx/basyx.components.lib-0.1.0-SNAPSHOT.jar\"/>\r\n" + 
+				"	<classpathentry kind=\"lib\" path=\"includes/basyx/basyx.examples-0.1.0-SNAPSHOT.jar\"/>\r\n" + 
+				"	<classpathentry kind=\"lib\" path=\"includes/org.json/json/20200518/json-20200518.jar\"/>\r\n" + 
+				"	<classpathentry kind=\"output\" path=\"target/classes\"/>\r\n" + 
+				"</classpath>\r\n" + 
+				"";
+		FileUtils.writeData(projectFolder + ".classpath", text);
+	}
+	
+	private void createReadMe() {
+		String text = "# Welcome to " + projectName + "!\r\n"
+				+ "\r\n"
+				+ "This project contains all required files to run your AAS server.\r\n"
+				+ "\r\n"
+				+ "# Running\r\n"
+				+ "To run the AAS without modifications, please right-click on **DeviceAASServer.java** in *" 
+						+ getSafeProjectName() + ".module* package and choose **Run As -> Java Application**. "
+						+ "Then, you will see when the server is ready to be accessed on: "
+						+ "**http://" + getAasIP() + ":" + getAasPort() + "/" + getSafeProjectName() + "/aas/**\r\n"
+				+ "\r\n"
+				+ "The AAS Server provides a REST interface. You can see the list of commands "
+				+ "[here](https://app.swaggerhub.com/apis/BaSyx/basyx_submodel_http_rest_api/v1).\r\n"
+				+ "Using the interface, you can invoke operations and/or get property values."
+				+ "\r\n"
+				+ "# Files\r\n"
+				+ "\r\n"
+				+ "## Sub Models\r\n"
+				+ "\r\n"
+				+ "The project contains the following sub models:\r\n"
+				+ "\r\n";
+		
+				List<SubModel> submodels = sdc.getSubModelCreator().getSubModels();
+				for (SubModel subModel : submodels) {
+					text += " - " + subModel.getName() + " (URL to access: *[http://" + getAasIP() + ":" + getAasPort() + "/" + 
+												getSafeProjectName() + "/aas/submodels/" + subModel.getName() + "]"
+												+ "(http://" + getAasIP() + ":" + getAasPort() + "/" + 
+												getSafeProjectName() + "/aas/submodels/" + subModel.getName() + ")*)\r\n";
+				}
+				text += "\r\n"
+				+ "You can find them inside *" + getSafeProjectName() + ".module.submodel* package.\r\n"
+				+ "You can edit these files to tweak properties and operations. You may need to refer to "
+				+ "[Basyx Documentation](https://wiki.eclipse.org/BaSyx) to work with those files manually.\r\n"
+				+ "\r\n"
+				+ "## Link\r\n"
+				+ "\r\n"
+				+ "If you linked two AAS projects, you can see pre-created methods to access remote API calls inside "
+				+ "*" + getSafeProjectName() + ".module.submodel.link* package. You can use these methods using static calls.\r\n";
+		FileUtils.writeData(projectFolder + "README.md", text );
+	}
+	
+	private void copyLibs() {
+		System.out.println("Copying external classes to the project folder...");
+		FileUtils.copyFile(externalClassFolder + "/basyx.components.lib-0.1.0-SNAPSHOT.jar", projectFolder + "includes/basyx/basyx.components.lib-0.1.0-SNAPSHOT.jar");
+		FileUtils.copyFile(externalClassFolder + "/basyx.examples-0.1.0-SNAPSHOT.jar", projectFolder + "includes/basyx/basyx.examples-0.1.0-SNAPSHOT.jar");
+		FileUtils.copyFile(externalClassFolder + "/basyx.sdk-0.1.0-SNAPSHOT.jar", projectFolder + "includes/basyx/basyx.sdk/0.1.0-SNAPSHOT/basyx.sdk-0.1.0-SNAPSHOT.jar");
+		FileUtils.copyFile(externalClassFolder + "/basyx.sdk-0.1.0-SNAPSHOT.pom", projectFolder + "includes/basyx/basyx.sdk/0.1.0-SNAPSHOT/basyx.sdk-0.1.0-SNAPSHOT.pom");
+		FileUtils.copyFile(externalClassFolder + "/json-20200518.jar", projectFolder + "includes/org.json/json/20200518/json-20200518.jar");
+	}
+	
+	/**
+	 * Creates the project based on the given parameters and writes to actual files.
+	 */
+	public void createProject() {
+		if(getNamespace().contentEquals("de.dfki.canvaas.default")) {
+			System.err.println("Project namespace is not set!");
+			return;
+		}
+		if(getProjectName().contentEquals("CanvAASProject")) {
+			System.out.println("Project name is using default name: " + projectName);
+		}
+		if(mc.getSubModels().size() < 1) {
+			System.err.println("You need at least one model to create model files!");
+			return;
+		}
+		createConnectionFiles();
+		createModuleFiles();
+		createSubModelFiles();
+		createProjectFile();
+		createClassFile();
+		createPOMFile();
+		createReadMe();
+		copyLibs();
+		System.out.println("Done. Files are at: " + projectFolder);
+	}
+
+
+	/**
+	 * Links the current AAS with another remote AAS for remote operation calls.
+	 * Linked AAS can be called with {@code <AASProjectName><SubModelName>.OperationName(args...)}.
+	 * E.g. TestAASSubmodel.Operation1(HashMap args). {@code args} must be variable value pair of
+	 * the remote operation.
+	 * @param po {@link #Project(String, String, String, SubModelCreator) Project} instance that 
+	 * collects all information of another AAS project
+	 */
+	public void linkAAS(Project po) {
+		FileUtils.createDirectories(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/module/submodel/link");
+		List<SubModel> submodels = po.getSMC().getSubModels();
+		String lowLevelOps = "";
+		for (SubModel subModel : submodels) { // get all submodels
+			Set<String> operations = subModel.getMoc().getOperations().keySet();
+			String operationCollection = "";
+			for (String operation : operations) {
+				operationCollection += createRemoteOperationCalls(po.getProjectName(), subModel.getName(), operation);
+			}
+			// same file multiple submodels
+			lowLevelOps += createRemoteCallLowLevel(po.getProjectName(), subModel.getName());
+			createRemoteCreateSubModelFile(po.getProjectName(), subModel.getName(), operationCollection);
+		}
+		// write to file
+		createRemoteCallFile(lowLevelOps);
+		
+	}
+
+	private void createRemoteCreateSubModelFile(String projectName, String subModelName, String operationCollection) {
+		String text = "package " +  getNamespace() + ".module.submodel.link;\r\n" + 
+				"\r\n" + 
+				"import java.util.HashMap;\r\n" + 
+				"\r\n" + 
+				"/**\r\n" + 
+				" * Performs remote calls to " + projectName + " AAS's " + subModelName + " operations\r\n" + 
+				" * @author DFKI\r\n" + 
+				" *\r\n" + 
+				" */\r\n" +
+				"public class " + projectName.substring(0, 1).toUpperCase() + projectName.substring(1) + subModelName + " {\r\n" + 
+				"\r\n" + 
+				"	\r\n"; 
+				text += operationCollection;
+				text += "	\r\n" + 
+				"	\r\n" + 
+				"}\r\n";
+		FileUtils.writeData(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/module/submodel/link/" + projectName.substring(0, 1).toUpperCase() + projectName.substring(1) + subModelName +".java", text);
+	}
+
+	private String createRemoteOperationCalls(String projectName, String subModelName, String operation) {
+		String text = "	/**\r\n" + 
+				"	 * Calls the remote {@code " + operation + "} operation of " + projectName + " AAS's " + subModelName + " submodel \r\n" + 
+				"	 * @param arguments Use a {@code HashMap<String, String>} to send argument/value pair\r\n" + 
+				"	 * \r\n" + 
+				"	 * @throws Exception\r\n" + 
+				"	 */\r\n" +
+				"	public static void " + operation + "(HashMap<String, String> arguments) throws Exception {\r\n" + 
+				"		\r\n" + 
+				"		RemoteOperationCaller.call"+ projectName + subModelName + "Operation(\"" + operation + "\", arguments);\r\n" + 
+				"	}\r\n";
+		return text;
+	}
+	
+	private String createRemoteCallLowLevel(String projectName, String subModelName) {
+		String text = "	public static void call" + projectName + subModelName + "Operation(String operation, HashMap<String, String> arguments) {\r\n" + 
+				"		try {\r\n" + 
+				"			invokeOperation(\"http://" + aasIP + ":" + aasPort + "/test/aas\", \"" + subModelName + "\", operation, arguments);\r\n" + 
+				"		} catch (Exception e) {\r\n" + 
+				"			// TODO Auto-generated catch block\r\n" + 
+				"			e.printStackTrace();\r\n" + 
+				"		}\r\n" + 
+				"	}\r\n";
+		return text;
+	}
+
+	private void createRemoteCallFile(String lowLevelOps) {
+		String text = "package " + getNamespace() + ".module.submodel.link;\r\n" + 
+				"\r\n" + 
+				"import java.io.OutputStreamWriter;\r\n" + 
+				"import java.net.HttpURLConnection;\r\n" + 
+				"import java.net.URL;\r\n" + 
+				"import java.util.HashMap;\r\n" + 
+				"import java.util.Scanner;\r\n" + 
+				"\r\n" + 
+				"import org.json.JSONObject;\r\n" + 
+				"\r\n" + 
+				"public class RemoteOperationCaller {\r\n" + 
+				"\r\n" + 
+				"	private static void invokeOperation(String aasEndPoint, String subModel, String operation,\r\n" + 
+				"			HashMap<String, String> arguments) throws Exception {\r\n" + 
+				"\r\n" + 
+				"		HttpURLConnection connection = (HttpURLConnection) new URL(\r\n" + 
+				"				aasEndPoint + \"/submodels/\" + subModel + \"/operations/\" + operation + \"/\").openConnection();\r\n" + 
+				"\r\n" + 
+				"		connection.setRequestMethod(\"POST\");\r\n" + 
+				"\r\n" + 
+				"		connection.setDoOutput(true);\r\n" + 
+				"		OutputStreamWriter wr = new OutputStreamWriter(connection.getOutputStream());\r\n" + 
+				"\r\n" + 
+				"		JSONObject post = new JSONObject();\r\n" + 
+				"\r\n" + 
+				"		for (String key : arguments.keySet()) {\r\n" + 
+				"			post.put(key, arguments.get(key));\r\n" + 
+				"		}\r\n" + 
+				"\r\n" + 
+				"		wr.write(post.toString());\r\n" + 
+				"		wr.flush();\r\n" + 
+				"\r\n" + 
+				"		String response = \"\";\r\n" + 
+				"		Scanner scanner = new Scanner(connection.getInputStream());\r\n" + 
+				"		while (scanner.hasNextLine()) {\r\n" + 
+				"			response += scanner.nextLine();\r\n" + 
+				"			response += \"\\n\";\r\n" + 
+				"		}\r\n" + 
+				"		scanner.close();\r\n" + 
+				"\r\n" + 
+				"		System.out.println(response);\r\n" + 
+				"	}\r\n" + 
+				"\r\n";
+		text += lowLevelOps;
+		text +=	"}";
+		FileUtils.writeData(projectFolder + "src/" + FileUtils.getFullPathFromNamespace(namespace) + "/module/submodel/link/RemoteOperationCaller.java", text);
+		
+	}
+}
\ No newline at end of file
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModel.java b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModel.java
new file mode 100644
index 0000000..d308522
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModel.java
@@ -0,0 +1,294 @@
+/*******************************************************************************
+ * Copyright (c) 2020 DFKI.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *     DFKI - Volkan Gezer <volkan.gezer@dfki.de>
+ *     
+ *******************************************************************************/
+package org.eclipse.aas.basyx.codegen.util.submodel;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.List;
+
+public class SubModel {
+	private String name;
+	private String filePath = "";
+	private SubModelPropCollector mpc = new SubModelPropCollector();
+	private SubModelOperationCollector moc = new SubModelOperationCollector();
+	private List<String> secs = new ArrayList<String>();
+	private HashMap<String, String> subsectosec = new HashMap<String, String>();
+	private String fileSec = "";
+	
+	SubModel(String modelName, SubModelPropCollector mpc, SubModelOperationCollector moc) {
+		this.name = modelName;
+		this.mpc = mpc;
+		this.moc = moc;
+	}
+	
+	/**
+	 * 
+	 * Constructor. Creates a new sub model.
+	 *
+	 * @param modelName to create
+	 */
+	public SubModel(String modelName) {
+		this.name = modelName;
+	}
+	
+	public HashMap<String, String> getSubModelElementCollectionMap() {
+		return subsectosec;
+	}
+
+	public String getFileSec() {
+		return fileSec;
+	}
+
+	public List<String> getSubModelElementCollections() {
+		return secs;
+	}
+
+	public SubModelPropCollector getMpc() {
+		return mpc;
+	}
+	public SubModelOperationCollector getMoc() {
+		return moc;
+	}
+
+	public String getName() {
+		return name;
+	}
+	
+	public void setName(String name) {
+		this.name = name;
+	}
+	
+	public String getSafeName() {
+		return name.toLowerCase().replace(" ", "");
+	}
+	
+	/**
+	 * Adds a property to the sub model with default value of "Undefined".
+	 * @param propName to add
+	 */
+	public void addProperty(String propName) {
+		mpc.addProperty(propName);
+	}
+	
+	/**
+	 * Adds a property to the sub model and sets its value to {@code propValue}.
+	 * @param propName to add
+	 * @param propValue to set the value
+	 */
+	public void addProperty(String propName, String propValue) {
+		mpc.addProperty(propName, propValue);
+	}
+	
+	/**
+	 * Adds a property to the sub model, sets its value to {@code propValue}, and its type to {@code propType}.
+	 * @param propName to add
+	 * @param propValue to set the value
+	 * @param propType One of {@code Boolean, Collection, Container, Double, Float, Integer, Map, Null, String, Void}
+	 */
+	public void addProperty(String propName, String propValue, String propType) {
+		mpc.addProperty(propName, propValue, propType);
+		
+	}
+	
+	/**
+	 * Adds a property with name {@code propName} to an existing {@code subModelElementCollection}.
+	 * @param propName to add into collection
+	 * @param subModelElementCollection name to add into
+	 */
+	public void addPropertyToSubModelElementCollection(String propName, String subModelElementCollection) {
+		mpc.addPropertyToSubModelElementCollection(propName, subModelElementCollection);
+	}
+	
+	public void removePropertyFromSubModelElementCollection(String propName) {
+		mpc.removePropertyFromSubModelElementCollection(propName);
+	}
+	
+	public void removeProperty(String propName) {
+		mpc.removeProperty(propName);
+	}
+	
+	public void updateProperty(String propName, String propValue) {
+		mpc.updateProperty(propName, propValue);
+	}
+	
+	/**
+	 * Adds a single input variable to an operation. See {@link #addInputVariables(String, HashMap)} to add multiple variables.
+	 * @param opName to add inputs to
+	 * @param inputName name of the variable
+	 * @param paramType type of the variable. One of the following: 
+	 * {@code Boolean, Collection, Container, Double, Float, Integer, Map, Null, String, Void}
+	 */
+	public void addInputVariable(String opName, String inputName, String paramType) {
+		LinkedHashMap<String, String> paramAndType = new LinkedHashMap<String, String>();
+		paramAndType.put(inputName, paramType);
+		moc.getInputVars().put(opName, paramAndType);
+		System.out.println("Adding single input variable to " + opName + ": Name: " + inputName + ", type: " + paramType);
+	}
+	
+	/**
+	 * Adds a single output variable to an operation. See {@link #addOutputVariables(String, HashMap)} to add multiple variables.
+	 * @param opName to add outputs to
+	 * @param outputName name of the variable
+	 * @param paramType type of the variable. One of the following: 
+	 * {@code Boolean, Collection, Container, Double, Float, Integer, Map, Null, String, Void}
+	 */
+	public void addOutputVariable(String opName, String outputName, String paramType) {
+		LinkedHashMap<String, String> paramAndType = new LinkedHashMap<String, String>();
+		paramAndType.put(outputName, paramType);
+		moc.getInputVars().put(opName, paramAndType);
+		System.out.println("Adding single output variable to " + opName + ": Name: " + outputName + ", type: " + paramType);
+	}
+	
+	/**
+	 * Adds a single inoutput variable to an operation. See {@link #addInOutputVariables(String, HashMap)} to add multiple variables.
+	 * @param opName to add inoutputs to
+	 * @param inoutputName name of the variable
+	 * @param paramType type of the variable. One of the following: 
+	 * {@code Boolean, Collection, Container, Double, Float, Integer, Map, Null, String, Void}
+	 */
+	public void addInOutputVariable(String opName, String inoutputName, String paramType) {
+		LinkedHashMap<String, String> paramAndType = new LinkedHashMap<String, String>();
+		paramAndType.put(inoutputName, paramType);
+		moc.getInputVars().put(opName, paramAndType);
+		System.out.println("Adding single inoutput variable to " + opName + ": Name: " + inoutputName + ", type: " + paramType);
+	}
+	
+	/**
+	 * Adds input variables to an operation. See {@link #addInputVariable(String, String, String)} to add only one.
+	 * @param opName to add inputs to
+	 * @param inputVariables HashMap of variables with key being the input name and value being the type.
+	 * Type can be one of the following: {@code Boolean, Collection, Container, Double, Float, Integer, Map, Null, String, Void}
+	 */
+	public void addInputVariables(String opName, LinkedHashMap<String, String> inputVariables) {
+		moc.addInputVariables(opName, inputVariables);
+	}
+	
+	/**
+	 * Adds output variables to an operation. See {@link #addOutputVariable(String, String, String)} to add only one.
+	 * @param opName to add outputs to
+	 * @param outputVariables HashMap of variables with key being the output name and value being the type.
+	 * Type can be one of the following: {@code Boolean, Collection, Container, Double, Float, Integer, Map, Null, String, Void}
+	 */
+	public void addOutputVariables(String opName, LinkedHashMap<String, String> outputVariables) {
+		moc.addOutputVariables(opName, outputVariables);
+	}
+	
+	/**
+	 * Adds inout variables to an operation.  See {@link #addInOutputVariable(String, String, String)} to add only one.
+	 * @param opName to add inoutputs to
+	 * @param inoutVariables HashMap of variables with key being the inoutput name and value being the type.
+	 * Type can be one of the following: {@code Boolean, Collection, Container, Double, Float, Integer, Map, Null, String, Void}
+	 */
+	public void addInOutputVariables(String opName, LinkedHashMap<String, String> inoutputVariables) {
+		moc.addInOutputVariables(opName, inoutputVariables);
+	}
+	
+	/**
+	 * Adds an operation to the sub model.
+	 * @param opName to add
+	 */
+	public void addOperation(String opName) {
+		moc.addOperation(opName);
+	}
+	
+	/**
+	 * Adds an operation with custom code body. Leaving code empty uses default code snippet.
+	 * @param opName to add
+	 * @param operationCode Java code directly written inside function call.
+	 */
+	public void addOperation(String opName, String operationCode) {
+		moc.addOperation(opName, operationCode);
+	}
+	
+	public void addOperation(String opName, String operationCode, String configKey, String secondValue) {
+		moc.addOperation(opName, operationCode, configKey, secondValue);
+	}
+	
+	/**
+	 * Adds an operation with name {@code opName} to an existing {@code subModelElementCollection}.
+	 * @param opName to add into collection
+	 * @param subModelElementCollection name to add into
+	 */
+	public void addOperationToSubModelElementCollection(String opName, String subModelElementCollection) {
+		moc.addOperationToSubModelElementCollection(opName, subModelElementCollection);
+	}
+	
+	public void removeOperationFromSubModelElementCollection(String propName) {
+		moc.removeOperationFromSubModelElementCollection(propName);
+	}
+	
+	public void removeOperation(String opName) {
+		moc.removeOperation(opName);
+	}
+	
+	public void updateOperation(String opName, String operationCode, String configKey, String secondValue) {
+		moc.updateOperation(opName, operationCode, configKey, secondValue);
+	}
+
+	/**
+	 * Adds a SubModelElementCollection into a sub model. Required to group elements.
+	 * @param name to define submodelelementcollection. Also used as shortId.
+	 */
+	public void addSubModelElementCollection(String name) {
+		secs.add(name);
+		System.out.println("Creating subModelElementCollection: " + name);
+	}
+	
+	/**
+	 * Adds a File element to the sub model.
+	 * @param filePath
+	 */
+	public void addFilePath(String filePath) {
+		addFilePath(filePath, "");
+	}
+	
+	/**
+	 * Adds a File element to the sub model's {@code subModelElementCollection}. If not exists, ignores the
+	 * method.
+	 * @param filePath
+	 * @param subModelElementCollection
+	 */
+	public void addFilePath(String filePath, String subModelElementCollection) {
+		if(!secs.contains(subModelElementCollection)) {
+			System.err.println("SubModelElementCollection assigned to FilePath not found! Ignoring FilePath.\r\n"
+					+ "Create it first using addSubModelElementCollection!");
+			return;
+		}
+		this.filePath = filePath;
+		System.out.println("Adding file path: " + filePath);
+		this.fileSec  = subModelElementCollection;
+	}
+	
+	public String getFilePath() {
+		return this.filePath;
+	}
+
+	/**
+	 * Adds {@code subSubModelElementCollection} into {@code parentSubModelElementCollection}.
+	 * @param subSubModelElementCollection
+	 * @param parentSubModelElementCollection
+	 */
+	public void addCollectionIntoSubModelElementCollection(String subSubModelElementCollection, String parentSubModelElementCollection) {
+		if(!secs.contains(parentSubModelElementCollection)) {
+			System.err.println("Parent subModelElementCollection " + parentSubModelElementCollection + " not found!\r\nCreate it to use as a parent.");
+			return;
+		}
+		subsectosec.put(subSubModelElementCollection, parentSubModelElementCollection);
+		System.out.println("Adding subModelElementCollection " + subSubModelElementCollection + " to " + parentSubModelElementCollection  + ".");
+	}
+
+
+}
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModelCreator.java b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModelCreator.java
new file mode 100644
index 0000000..75af73b
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModelCreator.java
@@ -0,0 +1,239 @@
+/*******************************************************************************
+ * Copyright (c) 2020 DFKI.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *     DFKI - Volkan Gezer <volkan.gezer@dfki.de>
+ *     
+ *******************************************************************************/
+package org.eclipse.aas.basyx.codegen.util.submodel;
+
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+
+import org.eclipse.aas.basyx.codegen.util.Project;
+/**
+ * Creates a monitor that keeps the list of sub models.
+ * @author DFKI
+ *
+ */
+public class SubModelCreator {
+	
+	List<SubModel> submodels = new ArrayList<SubModel>();
+
+	/**
+	 * Adds a sub model into the list. Used only in UI version of the API. See {@link #addSubModel(SubModel)}.
+	 * @param subModel
+	 * @param mpc
+	 * @param moc
+	 */
+	public void addSubModel(String subModel, SubModelPropCollector mpc, SubModelOperationCollector moc) {
+		SubModel m = new SubModel(subModel, mpc, moc);
+		submodels.add(m);
+	}
+	
+	/**
+	 * Adds a sub model into the list.
+	 * @param subModel to add
+	 */
+	public void addSubModel(SubModel subModel) {
+		submodels.add(subModel);
+	}
+	
+	public SubModel getSubModel(String subModelName) {
+		for (SubModel submodel : submodels) {
+			if(submodel.getName().equals(subModelName)) {
+				return submodel;
+			}
+		}
+		return null;
+	}
+	
+	public List<SubModel> getSubModels() {
+		return submodels;
+	}
+	
+	public List<String> getSubModelElementCollections(String subModelName) {
+		return getSubModel(subModelName).getSubModelElementCollections();
+	}
+	
+	/**
+	 * Alias for {@link #removeSubModel(String)}.
+	 * @param subModelName
+	 */
+	public void deleteSubModel(String subModelName) {
+		removeSubModel(subModelName);
+	}
+	
+	/**
+	 * Remove the submodel given with {@code modelName}.
+	 * @param subModelName to remove.
+	 */
+	public void removeSubModel(String subModelName) {
+		for(SubModel model : submodels) {
+			if(model.getName().contentEquals(subModelName)) {
+				submodels.remove(model);
+				break;
+			}
+		}
+	}
+	
+	/**
+	 * Clears all submodels. Use with care.
+	 */
+	public void removeAllSubModels() {
+		submodels.clear();
+	}
+
+	public String createSubModelFile(String subModelName, Project projectOperations) {
+		try {
+			SubModel submodel = getSubModel(subModelName);
+			SubModelOperationCollector moc = submodel.getMoc();
+			SubModelPropCollector mpc = submodel.getMpc();
+			String className = subModelName.replace(" ", "");
+			String text = "package " + projectOperations.getNamespace() + ".module.submodel;\r\n" + 
+					"\r\nimport java.util.function.Function;\r\n" + 
+					"import java.util.ArrayList;\r\n" + 
+					"import java.util.Collection;\r\n" +
+					"import " + projectOperations.getNamespace() + ".connection.ConnectedDevice;\r\n" + 
+					"import " + projectOperations.getNamespace() + ".connection.DataCrawler;\r\n" + 
+					"import org.eclipse.basyx.submodel.metamodel.map.submodelelement.operation.Operation;\r\n" + 
+					"import org.eclipse.basyx.submodel.metamodel.map.submodelelement.SubmodelElementCollection;\r\n" +
+					"import org.eclipse.basyx.submodel.metamodel.map.submodelelement.dataelement.property.valuetypedef.PropertyValueTypeDef;\r\n" +
+					"import org.eclipse.basyx.submodel.metamodel.map.submodelelement.dataelement.File;\r\n" +
+					"import org.eclipse.basyx.submodel.metamodel.map.submodelelement.dataelement.property.Property;\r\n" + 	
+					"import org.eclipse.basyx.submodel.metamodel.api.submodelelement.ISubmodelElement;\r\n" +
+					"import org.eclipse.basyx.submodel.metamodel.map.SubModel;\r\n" +
+					"import org.eclipse.basyx.submodel.metamodel.map.submodelelement.operation.OperationVariable;\r\n" + 
+					"\r\n" + 
+					"/**\r\n" + 
+					" * \r\n" + 
+					" * @author DFKI\r\n" + 
+					" * \r\n" + 
+					" */\r\n" + 
+					"\r\n" + 
+					"public class " + className + " extends SubModel {\r\n" + 
+					"\r\n" + 
+					"	protected ConnectedDevice connectedDevice;\r\n" + 
+					"\r\n" + 
+					"	public " + className + "(ConnectedDevice connDev) {\r\n" + 
+					"\r\n" + 
+					"		connectedDevice = connDev;\r\n" +
+					"		setIdShort(\"" + subModelName + "\");\r\n" +
+					"		//DataCrawler DataCrawler = new DataCrawler(connectedDevice);\r\n" +
+					"		\r\n";
+					text += createSubModelElementCollections(subModelName);
+					text += createFilePath(submodel, submodel.getFileSec());
+					text += moc.prepareAllOperations(className, submodel);
+					text += mpc.prepareAllProperties(submodel);
+					
+					text += createSubModelElementCollectionLinks(subModelName);
+					text += createCollectionIntoSubModelCollection(subModelName);
+					text += createSubModelElementCollectionLinksParent(subModelName);
+					text += createSubModelElementCollectionSubModelElement(subModelName);
+					text += "	}\r\n" + 
+							"	\r\n" + 
+							"}\r\n" + 
+							"";
+					return text;
+		}
+		catch (Exception e) {
+			e.printStackTrace();
+			return "Model cannot be found!";
+		}
+	}
+
+	private String createSubModelElementCollectionLinks(String subModelName) {
+		List<String> secs = getSubModel(subModelName).getSubModelElementCollections();
+		String text = "";
+		for (String sec : secs) {
+			if(getSubModel(subModelName).getSubModelElementCollectionMap().containsKey(sec)) { 
+				// only add to submodel if not defined as subsub EC
+				text += "		" + sec + ".setValue(" + sec + "value);\r\n" +
+						"		" + sec + ".setIdShort(\"" + sec + "\");\r\n";	
+			}
+					
+		}
+		return text;
+	}
+	
+	private String createSubModelElementCollectionLinksParent(String subModelName) {
+		List<String> secs = getSubModel(subModelName).getSubModelElementCollections();
+		String text = "";
+		for (String sec : secs) {
+			if(!getSubModel(subModelName).getSubModelElementCollectionMap().containsKey(sec)) { 
+				// only add to submodel if not defined as subsub EC
+				text += "		" + sec + ".setValue(" + sec + "value);\r\n" +
+						"		" + sec + ".setIdShort(\"" + sec + "\");\r\n";	
+			}
+					
+		}
+		return text;
+	}
+	
+	private String createSubModelElementCollectionSubModelElement(String subModelName) {
+		List<String> secs = getSubModel(subModelName).getSubModelElementCollections();
+		String text = "";
+		for (String sec : secs) {
+			if(!getSubModel(subModelName).getSubModelElementCollectionMap().containsKey(sec)) { 
+				// only add to submodel if not defined as subsub EC
+				text += "		addSubModelElement(" + sec + ");\r\n\r\n";
+			}
+					
+		}
+		return text;
+	}
+	
+	private String createSubModelElementCollections(String subModelName) {
+		List<String> secs = getSubModel(subModelName).getSubModelElementCollections();
+		String text = "";
+		for (String sec : secs) {
+			text += "		SubmodelElementCollection " + sec + " = new SubmodelElementCollection();\r\n" + 
+					"		Collection<ISubmodelElement> " + sec + "value = new ArrayList<ISubmodelElement>();\r\n";
+			}
+					
+		return text;
+	}
+	
+	private String createCollectionIntoSubModelCollection(String subModelName) {
+		String text = "";
+		HashMap<String, String> secollection = getSubModel(subModelName).getSubModelElementCollectionMap();
+		// key = subsubelement collection, value = submodel element collection
+		for (String subsubelementcollection : secollection.keySet()) {
+			if(!getSubModel(subModelName).getSubModelElementCollections().contains(secollection.get(subsubelementcollection))) {
+				// subsubEC not defined in submodel
+				System.out.println(subModelName + " sub model does not have collection " + secollection.get(subsubelementcollection) + ". Creating.");
+				getSubModel(subModelName).addSubModelElementCollection(secollection.get(subsubelementcollection));
+			}
+			text += "		" + secollection.get(subsubelementcollection) + "value.add(" + subsubelementcollection + ");\r\n\r\n";
+			
+			
+		}
+		
+		
+		return text;
+	}
+	
+	private String createFilePath(SubModel subModel, String subModelCollection) {
+		String text = "";
+		if(subModel.getFilePath().length() > 0) {
+			text += "		File file = new File();\r\n" + 
+					"		String filePath = \"" + subModel.getFilePath() + "\";\r\n" + 
+					"		file.setValue(filePath);\r\n";
+			if(subModelCollection.length() > 0) {
+				text += "		" + subModelCollection + "value.add(file);\r\n\r\n";
+			}
+			else {
+				text += "		addSubModelElement(file);\r\n\r\n";
+			}
+		}
+		return text;
+	}
+}
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModelOperationCollector.java b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModelOperationCollector.java
new file mode 100644
index 0000000..0418194
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModelOperationCollector.java
@@ -0,0 +1,296 @@
+/*******************************************************************************
+ * Copyright (c) 2020 DFKI.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *     DFKI - Volkan Gezer <volkan.gezer@dfki.de>
+ *     
+ *******************************************************************************/
+package org.eclipse.aas.basyx.codegen.util.submodel;
+
+import java.util.HashMap;
+import java.util.LinkedHashMap;
+import java.util.Map;
+
+public class SubModelOperationCollector {
+
+	private HashMap<String, String> operations = new HashMap<String, String>();
+	private HashMap<String, String> configs = new HashMap<String, String>();
+	private HashMap<String, String> operationCodes = new HashMap<String, String>();
+	// For the following: HashMap<String, HashMap<String, String>> opName, variableName, variableType
+	private Map<String, LinkedHashMap<String, String>> inputVars = new LinkedHashMap <String, LinkedHashMap <String, String>>();
+	private Map<String, LinkedHashMap<String, String>> outputVars = new LinkedHashMap <String, LinkedHashMap <String, String>>();
+	private Map<String, LinkedHashMap<String, String>> inoutputVars = new LinkedHashMap <String, LinkedHashMap <String, String>>();
+	private Map<String, String> submodelelementcollection = new LinkedHashMap<String, String>();
+
+	
+	
+	/**
+	 * Returns all the code bodies of all operations of the submodel.
+	 * @return the operationCodes
+	 */
+	public HashMap<String, String> getOperationCodes() {
+		return operationCodes;
+	}
+
+	/**
+	 * Returns the input variables of all operations of the submodel.
+	 * @return the inputVars
+	 */
+	public Map<String, LinkedHashMap<String, String>> getInputVars() {
+		return inputVars;
+	}
+
+	/**
+	 * Returns the output variables of all operations of the submodel.
+	 * @return the outputVars
+	 */
+	public Map<String, LinkedHashMap<String, String>> getOutputVars() {
+		return outputVars;
+	}
+
+	/**
+	 * Returns the inoutput variables of all operations of the submodel.
+	 * @return the inoutputVars
+	 */
+	public Map<String, LinkedHashMap<String, String>> getInoutputVars() {
+		return inoutputVars;
+	}
+
+	/**
+	 * Returns the defined {@code SubModelElementCollections} of the submodel.
+	 * @return the submodelelementcollection
+	 */
+	public Map<String, String> getSubModelElementCollection() {
+		return submodelelementcollection;
+	}
+
+	protected void addOperation(String opName) {
+		addOperation(opName, "", "");
+	}
+	
+	protected void addOperationToSubModelElementCollection(String opName, String subModelCollectionName) {
+		submodelelementcollection.put(opName, subModelCollectionName);
+		if(!operations.containsKey(opName)) {
+			addOperation(opName);
+		}
+		System.out.println("Adding " + opName + " to subModelElementCollection " + subModelCollectionName);
+	}
+	
+	protected void removeOperationFromSubModelElementCollection(String opName) {
+		submodelelementcollection.remove(opName);
+	}
+
+	protected void addInputVariables(String opName, LinkedHashMap<String, String> inputVar) {
+		inputVars.put(opName, inputVar);
+		if(inputVar.entrySet().iterator().hasNext()) {
+		Map.Entry<String,String> entry = inputVar.entrySet().iterator().next();
+		System.out.println("Adding input variable to " + opName + ": Name: " + entry.getKey() + ", type: " + entry.getValue());
+		}
+	}
+
+	protected void addOutputVariables(String opName, LinkedHashMap<String, String> outputVar) {
+		outputVars.put(opName, outputVar);
+		if(outputVar.entrySet().iterator().hasNext()) {
+		Map.Entry<String,String> entry = outputVar.entrySet().iterator().next();
+		System.out.println("Adding output variable to " + opName + ": Name: " + entry.getKey() + ", type: " + entry.getValue());
+		}
+	}
+
+	protected void addInOutputVariables(String opName, LinkedHashMap<String, String> inoutputVar) {
+		inoutputVars.put(opName, inoutputVar);
+		if(inoutputVar.entrySet().iterator().hasNext()) {
+		Map.Entry<String,String> entry = inoutputVar.entrySet().iterator().next();
+		System.out.println("Adding inoutput variable to " + opName + ": Name: " + entry.getKey() + ", type: " + entry.getValue());
+		}
+	}
+
+	public HashMap<String, String> getOperations() {
+		return operations;
+	}
+
+	public String getOperationConfigKey(String opName) {
+		return operations.get(opName);
+	}
+
+	public String getOperationSubkeyFromConfigKey(String configKey) {
+		return configs.get(configKey);
+	}
+
+	public String getOperationSubkeyFromOpName(String opName) {
+
+		String configKey = operations.get(opName);
+		return configs.get(configKey);
+	}
+
+	protected void addOperation(String opName, String operationCode, String configKey) {
+		addOperation(opName, operationCode, configKey, "");
+	}
+
+	protected void addOperation(String opName, String operationCode, String configKey, String secondValue) {
+		System.out.println("Adding operation: " + opName);
+		operations.put(opName, configKey);
+		configs.put(configKey, secondValue);
+		operationCodes.put(opName, operationCode);
+	}
+	
+	protected void addOperation(String opName, String operationCode) {
+		addOperation(opName, operationCode, "", "");
+	}
+
+	protected void removeOperation(String opName) {
+		configs.remove(operations.get(opName)); // remove configKey
+		operations.remove(opName);
+		submodelelementcollection.remove(opName);
+		operationCodes.remove(opName);
+	}
+
+	protected void updateOperation(String opName, String operationCode, String configKey, String secondValue) {
+		removeOperation(opName);
+		addOperation(opName, operationCode, configKey, secondValue);
+
+	}
+
+	private String prepareOperation(String opName, String operationCode, String configKey, 
+			String secondValue, String className, SubModel submodel) {
+		String opsafename = opName.toLowerCase().replace(" ", "");
+		String opNoSpace = opName.replace(" ", "");
+		String readValue = "String.valueOf(\"Floor\")";
+		if (configKey.isEmpty()) {
+			configKey = opName;
+		}
+		if (!secondValue.isEmpty()) {
+			readValue += ", String.valueOf(\"" + secondValue + "\")";
+		}
+		if(operationCode == "") {
+			operationCode = 	"			try {\r\n" + "\r\n" 
+					+ "				if (connectedDevice.online == true) {\r\n"
+					+ "					//connectedDevice.callOperationByConfig(\"" + configKey + "\", new Object[] { "
+					+ readValue + " });\r\n" + "\r\n" + "					// TODO: Implement the operation behavior here\r\n"
+					//+ "					//DataCrawler.setCycleConfiguration(1, 10);\r\n"
+					//+ "					//DataCrawler.collectOPCUAData(" + className + ".this);\r\n"
+					+ "					System.out.println(\"Received arguments from operation call: \" + arguments[0]);" + "\r\n"
+					+ "				}\r\n" + "\r\n" + "				else {\r\n"
+					+ "					System.out.println(\"Device not connected\");\r\n" + "				}\r\n" + "\r\n"
+					+ "			}\r\n" + "\r\n" + "			catch (Exception e) {\r\n"
+					+ "				e.printStackTrace();\r\n" + "			}\r\n" + "\r\n" 
+					+ "			return null;\r\n"
+					+ "\r\n";
+		}
+		
+		String opText = "" + "		Function<Object[], Object> call" + opNoSpace + " = (arguments) -> {\r\n" + "\r\n"
+				+ operationCode 
+				+ "\r\n		};\r\n"
+				+ "		Operation " + opsafename + "= new Operation();\r\n" + "		"
+				+ opsafename + ".setIdShort(\"" + opNoSpace + "\");\r\n" + "		" + opsafename
+				+ ".setInvocable(call" + opNoSpace + ");\r\n\r\n";
+
+		opText += getInputVariables(opsafename, opName);
+
+		opText += getOutputVariables(opsafename, opName);
+
+		opText += getInOutputVariables(opsafename, opName);
+
+		boolean foundSecs = true;
+		if(!submodel.getSubModelElementCollections().contains(submodelelementcollection.get(opName)) &&
+				submodelelementcollection.get(opName) != null) { // if secs not defined for submodel
+			foundSecs = false;
+			System.err.println("SubModelElementCollection " + submodelelementcollection.get(opName) + " cannot be found for operation: " + opName
+					+ "\r\nAdding to top level.");
+		}
+		
+		else if(submodelelementcollection.containsKey(opName) && foundSecs) {
+			opText += "		"+ submodelelementcollection.get(opName) +"value.add(" + opsafename +");\r\n";
+		}
+		if(!foundSecs || submodelelementcollection.get(opName) == null){
+			opText += "		addSubModelElement(" + opsafename + ");\r\n";
+		}
+		
+		
+				
+		opText += "\r\n";
+
+
+		return opText;
+	}
+
+	/**
+	 * Returns input variables of {@code operationName}.
+	 * @param idsafeopname operation name lowercase and trimmed from spaces.
+	 * @param operationName
+	 * @return
+	 */
+	protected String getInputVariables(String idsafeopname, String operationName) {
+		return getOperationVariables(this.inputVars, operationName, idsafeopname, "Input");
+	}
+
+	/**
+	 * Returns output variables of {@code operationName}.
+	 * @param idsafeopname operation name lowercase and trimmed from spaces.
+	 * @param operationName
+	 * @return
+	 */
+	protected String getOutputVariables(String idsafeopname, String operationName) {
+		return getOperationVariables(this.outputVars, operationName, idsafeopname, "Output");
+	}
+
+	/**
+	 * Returns inoutput variables of {@code operationName}.
+	 * @param idsafeopname operation name lowercase and trimmed from spaces.
+	 * @param operationName
+	 * @return
+	 */
+	protected String getInOutputVariables(String idsafeopname, String operationName) {
+		return getOperationVariables(this.inoutputVars, operationName, idsafeopname, "InOutput");
+	}
+	
+	/**
+	 * Returns operation variables of {@code operationName}
+	 * @param operationVariableMap map that stores the operation variables.
+	 * @param operationName
+	 * @param idsafeopname operation name lowercase and trimmed from spaces.
+	 * @param variableType: One of {@code Input, Output, InOutput}.
+	 * @return
+	 */
+	private String getOperationVariables(Map<String, LinkedHashMap<String, String>> operationVariableMap, String operationName, 
+			String idsafeopname, String variableType) {
+		if (operationVariableMap.get(operationName) == null) {
+			return "";
+		}
+
+		String opText = "		Collection<OperationVariable> " + idsafeopname
+				+ variableType + "s = new ArrayList<OperationVariable>();\r\n";
+		for (String inoutputName : operationVariableMap.get(operationName).keySet()) {
+			
+			System.out.println("Creating " + variableType + " to " + operationName + " with name: " + inoutputName + " and type: " + operationVariableMap.get(operationName).get(inoutputName));
+			if(inoutputName!=null) {
+			inoutputName = inoutputName.replace(" ", ""); // remove spaces
+			}else
+				inoutputName="";	
+			opText += "		OperationVariable " + inoutputName + idsafeopname + " = new OperationVariable();\r\n"
+					+ "		Property " + inoutputName + variableType + " = new Property(\"" + inoutputName + "\", PropertyValueTypeDef." + operationVariableMap.get(operationName).get(inoutputName) + ");\r\n" + "		"
+					+ inoutputName + idsafeopname + ".setValue(" + inoutputName + variableType + ");\r\n"
+					+ "		" + idsafeopname + variableType + "s.add(" + inoutputName + idsafeopname +");\r\n";
+		}
+
+		opText += "		" + idsafeopname + ".set" + variableType + "Variables(" + idsafeopname + variableType +"s);\r\n\r\n";
+		return opText;
+		
+	}
+
+	protected String prepareAllOperations(String className, SubModel submodel) {
+		String text = "";
+		for (Map.Entry<String, String> operation : operations.entrySet()) {
+			text += prepareOperation(operation.getKey(), operationCodes.get(operation.getKey()), operation.getValue(), configs.get(operation.getValue()),
+					className, submodel);
+		}
+		return text;
+	}
+
+}
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModelPropCollector.java b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModelPropCollector.java
new file mode 100644
index 0000000..57c9053
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/submodel/SubModelPropCollector.java
@@ -0,0 +1,141 @@
+/*******************************************************************************
+ * Copyright (c) 2020 DFKI.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *     DFKI - Volkan Gezer <volkan.gezer@dfki.de>
+ *     
+ *******************************************************************************/
+package org.eclipse.aas.basyx.codegen.util.submodel;
+
+import java.util.HashMap;
+import java.util.Map;
+
+
+public class SubModelPropCollector {
+	HashMap<String, String> properties = new HashMap<>(); // name, value
+	HashMap<String, String> propertyTypes = new HashMap<>(); // name, type
+	HashMap<String, String> collection = new HashMap<String, String>();
+
+	/**
+	 * See {@link #addProperty(String, String, String)}.
+	 * 
+	 */
+	protected void addProperty(String propName, String propValue) {
+		addProperty(propName, propValue, "String");
+	}
+	
+	/**
+	 * See {@link #addProperty(String, String, String)}.
+	 * 
+	 */
+	protected void addProperty(String propName) {
+		addProperty(propName, "Undefined");
+	}
+	
+	/**
+	 * Adds a property to the sub model. To add into SubModelElementCollection, use 
+	 * {@link #addPropertyToSubModelElementCollection(String, String)}.
+	 * @param propName to add
+	 * @param propValue initial value
+	 * @param type One of {@code Boolean, Collection, Container, Double, Float, Integer, Map, Null, String, Void} 
+	 */
+	protected void addProperty(String propName, String propValue, String type) {
+		System.out.println("Adding property: " + propName);
+		properties.put(propName, propValue);
+		propertyTypes.put(propName, type);
+	}
+	
+	/**
+	 * Adds property to a submodelelementcollection.
+	 * @param propName
+	 * @param subModelCollectionName
+	 */
+	protected void addPropertyToSubModelElementCollection(String propName, String subModelCollectionName) {
+		addPropertyToSubModelElementCollection(propName, subModelCollectionName, "Undefined", "String");
+	}
+	
+	/**
+	 * Adds property to a submodelelementcollection.
+	 * @param propName to add
+	 * @param subModelCollectionName to insert into
+	 * @param propertyValue default value of the property
+	 * @param propertyType One of {@code Boolean, Collection, Container, Double, Float, Integer, Map, Null, String, Void} 
+	 */
+	protected void addPropertyToSubModelElementCollection(String propName, String subModelCollectionName, String propertyValue, String propertyType) {
+		collection.put(propName, subModelCollectionName);
+		if(!properties.containsKey(propName)) {
+			addProperty(propName, propertyValue, propertyType);
+		}
+		System.out.println("Adding " + propName + " to subModelElementCollection " + subModelCollectionName);
+	}
+	
+	/**
+	 * Also call {@link #removeProperty(String)} to complete removal. This only removes from collection
+	 * and moves the property to an upper level.
+	 * @param propName
+	 */
+	protected void removePropertyFromSubModelElementCollection(String propName) {
+		collection.remove(propName);
+	}
+	
+	public String getPropertyValue(String propName) {
+		return properties.get(propName);
+	}
+	
+	public HashMap<String, String> getProperties() {
+		return properties;
+	}
+	
+	protected void removeProperty(String propName) {
+		properties.remove(propName);
+		collection.remove(propName);
+	}
+	
+	protected void updateProperty(String propName, String propValue) {
+		removeProperty(propName);
+		addProperty(propName, propValue);
+	}
+	
+	private String prepareProperty(String propertyName, String value, SubModel submodel) {
+		String idsafename = propertyName.toLowerCase().replace(" ", "");
+		boolean foundSecs = true;
+		String propText = ""
+				+ "		Property " + idsafename + "= new Property();\r\n"
+				+ "		" + idsafename + ".setIdShort(\"" + propertyName +"\");\r\n" 
+				+ "		" + idsafename + ".setValueType(PropertyValueTypeDef." + propertyTypes.get(propertyName) + ");\r\n"
+				//property2.setValueType(PropertyValueTypeDef.Boolean);
+				+ "		" + idsafename + ".set(\"" + value + "\");\r\n";
+		if(!submodel.getSubModelElementCollections().contains(collection.get(propertyName)) &&
+				collection.get(propertyName) != null) { // if secs not defined for submodel
+			foundSecs = false;
+			System.err.println("SubModelElementCollection " + collection.get(propertyName) + " cannot be found for property: " + propertyName
+					+ "\r\nAdding to top level.");
+		}
+		else if(collection.containsKey(propertyName) && foundSecs) {
+			propText += "		"+ collection.get(propertyName) +"value.add(" + idsafename +");\r\n";
+		}
+		if(!foundSecs || collection.get(propertyName) == null){
+			propText += "		addSubModelElement(" + idsafename +");\r\n";
+		}
+		propText += "\r\n\r\n";
+		
+		return propText;
+		
+	}
+	
+	protected String prepareAllProperties(SubModel submodel) {
+		String text = "";
+		for (Map.Entry<String, String> property : properties.entrySet()) {
+			text += prepareProperty(property.getKey(), property.getValue(), submodel);
+		}
+		return text;
+	}
+	
+}
diff --git a/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/test/Test.java b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/test/Test.java
new file mode 100644
index 0000000..283000b
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.codegen/src/org/eclipse/aas/basyx/codegen/util/test/Test.java
@@ -0,0 +1,146 @@
+/*******************************************************************************
+ * Copyright (c) 2020 DFKI.
+ *
+ * This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *     DFKI - Volkan Gezer <volkan.gezer@dfki.de>
+ *     
+ *******************************************************************************/
+package org.eclipse.aas.basyx.codegen.util.test;
+
+import java.util.LinkedHashMap;
+
+import org.eclipse.aas.basyx.codegen.util.Project;
+import org.eclipse.aas.basyx.codegen.util.submodel.SubModel;
+import org.eclipse.aas.basyx.codegen.util.submodel.SubModelCreator;
+
+public class Test {
+
+	public static void main(String[] args) {
+		// Set project settings
+
+
+		SubModel docModel = new SubModel("Documentation"); // Sub model name: Documentation
+
+		// Add properties for the first sub model
+		docModel.addProperty("DownloadLink", "http://example.org/documentation");
+		docModel.addProperty("version","1");
+		docModel.addProperty("version","2");
+
+		// Create another sub model with the name "TestSubModel"
+		SubModel subModel2 = new SubModel("TestSubModel");
+		// Add an operation for second sub model
+		subModel2.addOperation("Operation1");
+		// Add another operation with a custom code
+		subModel2.addOperation("Operation1", "			try {\r\n" + 
+				"\r\n" + 
+				"				if (connectedDevice.online == true) {\r\n" + 
+				"					//connectedDevice.callOperationByConfig(\"Operation2\", new Object[] { String.valueOf(\"Floor\") });\r\n" + 
+				"\r\n" + 
+				"					// TODO: Implement the operation behavior here\r\n" + 
+				"					System.out.println(\"Received arguments from operation call: \" + arguments[0]);\r\n" + 
+				"				}\r\n" + 
+				"\r\n" + 
+				"				else {\r\n" + 
+				"					System.out.println(\"Device not connected\");\r\n" + 
+				"				}\r\n" + 
+				"\r\n" + 
+				"			}\r\n" + 
+				"\r\n" + 
+				"			catch (Exception e) {\r\n" + 
+				"				e.printStackTrace();\r\n" + 
+				"			}\r\n" + 
+				"\r\n" + 
+				"			return null;");
+		// Add Operation1 to SubModelElementCollection
+		subModel2.addOperationToSubModelElementCollection("Operation1", "SubSubCollection");
+		
+		// Add a new SubModelElementCollection to group (v) members
+		subModel2.addSubModelElementCollection("Collection"); // with name Collection
+		
+		subModel2.addSubModelElementCollection("SubSubCollection");
+		
+		subModel2.addCollectionIntoSubModelElementCollection("SubSubCollection", "Collection");
+		
+		// Add inputs for Operation1
+		// Requires a LinkedHashMap<String, String>.
+		LinkedHashMap<String, String> inputlist = new LinkedHashMap<String, String>();
+		inputlist.put("Operation1In1", "String");
+		subModel2.addInputVariables("Operation1", inputlist);
+		
+		// Alternatively, one can add single variables as following:
+		// Similarly, for Output and InOutput...
+		subModel2.addInputVariable("Operation1", "Operation1In2", "String");
+		
+		
+		// Add outputs for Operation1
+		LinkedHashMap<String, String> testOp1OutVars = new LinkedHashMap<String, String>();
+		testOp1OutVars.put("Operation1Out1", "String");
+		subModel2.addOutputVariables("Operation1", testOp1OutVars);
+		
+		// Add another operation for second sub model
+		subModel2.addOperation("Operation2");
+		
+		// Add inputs for Operation2
+		LinkedHashMap<String, String> inputVariables = new LinkedHashMap<String, String>();
+		inputVariables.put("Operation2In1", "String");
+		inputVariables.put("Operation2In2", "String");
+		subModel2.addInputVariables("Operation2", inputVariables);
+		
+		// Add outputs for Operation2		
+		LinkedHashMap<String, String> outputVariables = new LinkedHashMap<String, String>();
+		outputVariables.put("Operation2Out1", "String");
+		outputVariables.put("Operation2Out2", "String");
+		subModel2.addOutputVariables("Operation2", outputVariables);
+		
+		// Add inout variables for Operation2
+		LinkedHashMap<String, String> inoutputVariables = new LinkedHashMap<String, String>();
+		inoutputVariables.put("Operation2TestInout1", "String");
+		inoutputVariables.put("Operation2TestInout2", "String");
+		subModel2.addInOutputVariables("Operation2", inoutputVariables);
+		
+		
+		// Add properties for second sub model
+		subModel2.addProperty("Property1", "Value1"); // Set Property1 value as Value1
+		subModel2.addProperty("Property2"); // Set Property2 value as "Undefined"
+		subModel2.addProperty("Property2", "Undefined", "Integer"); // Set Property2 value as "Undefined"
+		
+		subModel2.addPropertyToSubModelElementCollection("Property2", "Collection2"); // Non-existent to add to top-level
+		
+		// Add File path to Collection SubModelElementCollection
+		subModel2.addFilePath("test/path", "Collection");
+
+		// Define sub model creator
+		SubModelCreator mc = new SubModelCreator();
+
+		// Add created sub models into sub model creator
+		mc.addSubModel(subModel2);
+		mc.addSubModel(docModel);
+ 
+
+		// Create project files
+		Project testAAS = new Project("urn:2123",
+				"localhost", "1995", mc, "opc.tcp://IP");
+		// Currently only OPC-UA connection with the devices are possible
+
+		// If below is commented out, it creates project files in the working folder.
+		testAAS.setProjectName("test2"); // The asset name as well as the project name
+		testAAS.setNamespaceFromProjectName(); // Creates project structure in Eclipse automatically based on project name
+		// testAAS.setNamespace("eu.dfki.canvaas.project"); // Instead, it is possible to use explicit namespacing.
+		testAAS.setProjectFolder("C:\\Users\\volka\\git\\gel\\");
+		testAAS.setExternalClassFolder("C:\\Users\\volka\\basyfloor\\CanvAAS\\extClasses");
+		
+		testAAS.linkAAS(testAAS);
+
+		// Create the runnable project
+		testAAS.createProject();
+		
+	}
+
+}
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/.classpath b/plugins/codegen/org.eclipse.aas.basyx.lib/.classpath
new file mode 100644
index 0000000..4b0f899
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/.classpath
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
+		<attributes>
+			<attribute name="module" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.engine_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.engine.source_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.launcher_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.launcher.source_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.runner_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.runner.source_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.suite.api_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.suite.api.source_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.source_4.13.0.v20200204-1500.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.vintage.engine_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.vintage.engine.source_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.opentest4j_1.2.0.v20190826-0900.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.opentest4j.source_1.2.0.v20190826-0900.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.hamcrest.core_1.3.0.v20180420-1519.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.hamcrest.core.source_1.3.0.v20180420-1519.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.jupiter.api_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.jupiter.api.source_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.jupiter.engine_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.jupiter.engine.source_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.jupiter.migrationsupport_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.jupiter.migrationsupport.source_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.jupiter.params_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.jupiter.params.source_5.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.commons_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.junit.platform.commons.source_1.6.0.v20200203-2009.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.apiguardian_1.1.0.v20190826-0900.jar"/>
+	<classpathentry exported="true" kind="lib" path="org.apiguardian.source_1.1.0.v20190826-0900.jar"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/.project b/plugins/codegen/org.eclipse.aas.basyx.lib/.project
new file mode 100644
index 0000000..74ea984
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.aas.basyx.lib</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/.settings/org.eclipse.jdt.core.prefs b/plugins/codegen/org.eclipse.aas.basyx.lib/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..e50443c
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,15 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=enabled
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/META-INF/MANIFEST.MF b/plugins/codegen/org.eclipse.aas.basyx.lib/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..7323c60
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/META-INF/MANIFEST.MF
@@ -0,0 +1,106 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: Lib
+Bundle-SymbolicName: org.eclipse.aas.basyx.lib
+Bundle-Version: 1.0.0.qualifier
+Bundle-ClassPath: org.junit.platform.engine_1.6.0.v20200203-2009.jar,
+ org.junit.platform.engine.source_1.6.0.v20200203-2009.jar,
+ org.junit.platform.launcher_1.6.0.v20200203-2009.jar,
+ org.junit.platform.launcher.source_1.6.0.v20200203-2009.jar,
+ org.junit.platform.runner_1.6.0.v20200203-2009.jar,
+ org.junit.platform.runner.source_1.6.0.v20200203-2009.jar,
+ org.junit.platform.suite.api_1.6.0.v20200203-2009.jar,
+ org.junit.platform.suite.api.source_1.6.0.v20200203-2009.jar,
+ org.junit.source_4.13.0.v20200204-1500.jar,
+ org.junit.vintage.engine_5.6.0.v20200203-2009.jar,
+ org.junit.vintage.engine.source_5.6.0.v20200203-2009.jar,
+ org.opentest4j_1.2.0.v20190826-0900.jar,
+ org.opentest4j.source_1.2.0.v20190826-0900.jar,
+ org.hamcrest.core_1.3.0.v20180420-1519.jar,
+ org.hamcrest.core.source_1.3.0.v20180420-1519.jar,
+ org.junit.jupiter.api_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.api.source_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.engine_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.engine.source_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.migrationsupport_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.migrationsupport.source_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.params_5.6.0.v20200203-2009.jar,
+ org.junit.jupiter.params.source_5.6.0.v20200203-2009.jar,
+ org.junit.platform.commons_1.6.0.v20200203-2009.jar,
+ org.junit.platform.commons.source_1.6.0.v20200203-2009.jar,
+ org.apiguardian_1.1.0.v20190826-0900.jar,
+ org.apiguardian.source_1.1.0.v20190826-0900.jar
+Export-Package: org.apiguardian.api,
+ org.hamcrest,
+ org.hamcrest.core,
+ org.hamcrest.internal,
+ org.junit.jupiter.api,
+ org.junit.jupiter.api.condition,
+ org.junit.jupiter.api.extension,
+ org.junit.jupiter.api.extension.support,
+ org.junit.jupiter.api.function,
+ org.junit.jupiter.api.io,
+ org.junit.jupiter.api.parallel,
+ org.junit.jupiter.engine,
+ org.junit.jupiter.engine.config,
+ org.junit.jupiter.engine.descriptor,
+ org.junit.jupiter.engine.discovery,
+ org.junit.jupiter.engine.discovery.predicates,
+ org.junit.jupiter.engine.execution,
+ org.junit.jupiter.engine.extension,
+ org.junit.jupiter.engine.support,
+ org.junit.jupiter.migrationsupport,
+ org.junit.jupiter.migrationsupport.conditions,
+ org.junit.jupiter.migrationsupport.rules,
+ org.junit.jupiter.migrationsupport.rules.adapter,
+ org.junit.jupiter.migrationsupport.rules.member,
+ org.junit.jupiter.params,
+ org.junit.jupiter.params.aggregator,
+ org.junit.jupiter.params.converter,
+ org.junit.jupiter.params.provider,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.annotations,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.annotations.helpers,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common.beans,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common.fields,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common.input,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common.input.concurrent,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common.iterators,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common.processor,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common.processor.core,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common.record,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.common.routine,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.conversions,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.csv,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.fixed,
+ org.junit.jupiter.params.shadow.com.univocity.parsers.tsv,
+ org.junit.jupiter.params.support,
+ org.junit.platform.commons,
+ org.junit.platform.commons.annotation,
+ org.junit.platform.commons.function,
+ org.junit.platform.commons.logging,
+ org.junit.platform.commons.support,
+ org.junit.platform.commons.util,
+ org.junit.platform.engine,
+ org.junit.platform.engine.discovery,
+ org.junit.platform.engine.reporting,
+ org.junit.platform.engine.support.config,
+ org.junit.platform.engine.support.descriptor,
+ org.junit.platform.engine.support.discovery,
+ org.junit.platform.engine.support.filter,
+ org.junit.platform.engine.support.hierarchical,
+ org.junit.platform.launcher,
+ org.junit.platform.launcher.core,
+ org.junit.platform.launcher.listeners,
+ org.junit.platform.launcher.listeners.discovery,
+ org.junit.platform.launcher.tagexpression,
+ org.junit.platform.runner,
+ org.junit.platform.suite.api,
+ org.junit.vintage.engine,
+ org.junit.vintage.engine.descriptor,
+ org.junit.vintage.engine.discovery,
+ org.junit.vintage.engine.execution,
+ org.junit.vintage.engine.support,
+ org.opentest4j
+Bundle-RequiredExecutionEnvironment: JavaSE-11
+Automatic-Module-Name: org.eclipse.aas.basyx.lib
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/build.properties b/plugins/codegen/org.eclipse.aas.basyx.lib/build.properties
new file mode 100644
index 0000000..ede3ae2
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/build.properties
@@ -0,0 +1,31 @@
+bin.includes = META-INF/,\
+               org.junit.platform.engine_1.6.0.v20200203-2009.jar,\
+               org.junit.platform.engine.source_1.6.0.v20200203-2009.jar,\
+               org.junit.platform.launcher_1.6.0.v20200203-2009.jar,\
+               org.junit.platform.launcher.source_1.6.0.v20200203-2009.jar,\
+               org.junit.platform.runner_1.6.0.v20200203-2009.jar,\
+               org.junit.platform.runner.source_1.6.0.v20200203-2009.jar,\
+               org.junit.platform.suite.api_1.6.0.v20200203-2009.jar,\
+               org.junit.platform.suite.api.source_1.6.0.v20200203-2009.jar,\
+               org.junit.source_4.13.0.v20200204-1500.jar,\
+               org.junit.vintage.engine_5.6.0.v20200203-2009.jar,\
+               org.junit.vintage.engine.source_5.6.0.v20200203-2009.jar,\
+               org.opentest4j_1.2.0.v20190826-0900.jar,\
+               org.opentest4j.source_1.2.0.v20190826-0900.jar,\
+               org.hamcrest.core_1.3.0.v20180420-1519.jar,\
+               org.hamcrest.core.source_1.3.0.v20180420-1519.jar,\
+               org.junit.jupiter.api_5.6.0.v20200203-2009.jar,\
+               org.junit.jupiter.api.source_5.6.0.v20200203-2009.jar,\
+               org.junit.jupiter.engine_5.6.0.v20200203-2009.jar,\
+               org.junit.jupiter.engine.source_5.6.0.v20200203-2009.jar,\
+               org.junit.jupiter.migrationsupport_5.6.0.v20200203-2009.jar,\
+               org.junit.jupiter.migrationsupport.source_5.6.0.v20200203-2009.jar,\
+               org.junit.jupiter.params_5.6.0.v20200203-2009.jar,\
+               org.junit.jupiter.params.source_5.6.0.v20200203-2009.jar,\
+               org.junit.platform.commons_1.6.0.v20200203-2009.jar,\
+               org.junit.platform.commons.source_1.6.0.v20200203-2009.jar,\
+               org.apiguardian_1.1.0.v20190826-0900.jar,\
+               org.apiguardian.source_1.1.0.v20190826-0900.jar
+jarProcessor.unsign=true
+signJars=false
+source.. = 
\ No newline at end of file
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.apiguardian.source_1.1.0.v20190826-0900.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.apiguardian.source_1.1.0.v20190826-0900.jar
new file mode 100644
index 0000000..11ca5dc
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.apiguardian.source_1.1.0.v20190826-0900.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.apiguardian_1.1.0.v20190826-0900.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.apiguardian_1.1.0.v20190826-0900.jar
new file mode 100644
index 0000000..ae322e4
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.apiguardian_1.1.0.v20190826-0900.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.hamcrest.core.source_1.3.0.v20180420-1519.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.hamcrest.core.source_1.3.0.v20180420-1519.jar
new file mode 100644
index 0000000..ffa537d
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.hamcrest.core.source_1.3.0.v20180420-1519.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.hamcrest.core_1.3.0.v20180420-1519.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.hamcrest.core_1.3.0.v20180420-1519.jar
new file mode 100644
index 0000000..659fc37
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.hamcrest.core_1.3.0.v20180420-1519.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.api.source_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.api.source_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..f9d5aa8
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.api.source_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.api_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.api_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..40c99ac
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.api_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.engine.source_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.engine.source_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..5a3d934
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.engine.source_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.engine_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.engine_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..0fafc49
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.engine_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.migrationsupport.source_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.migrationsupport.source_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..b5e3918
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.migrationsupport.source_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.migrationsupport_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.migrationsupport_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..5e21f6b
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.migrationsupport_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.params.source_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.params.source_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..f512a59
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.params.source_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.params_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.params_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..a416c3f
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.jupiter.params_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.commons.source_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.commons.source_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..a52f7c5
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.commons.source_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.commons_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.commons_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..e9a66c2
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.commons_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.engine.source_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.engine.source_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..6ed8ae2
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.engine.source_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.engine_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.engine_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..6b2bc44
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.engine_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.launcher.source_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.launcher.source_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..52c5280
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.launcher.source_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.launcher_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.launcher_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..3993031
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.launcher_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.runner.source_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.runner.source_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..e4544b0
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.runner.source_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.runner_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.runner_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..4f9f058
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.runner_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.suite.api.source_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.suite.api.source_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..831e091
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.suite.api.source_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.suite.api_1.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.suite.api_1.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..b60c26a
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.platform.suite.api_1.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.source_4.13.0.v20200204-1500.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.source_4.13.0.v20200204-1500.jar
new file mode 100644
index 0000000..1cfe91c
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.source_4.13.0.v20200204-1500.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.vintage.engine.source_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.vintage.engine.source_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..92f3349
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.vintage.engine.source_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.vintage.engine_5.6.0.v20200203-2009.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.vintage.engine_5.6.0.v20200203-2009.jar
new file mode 100644
index 0000000..291a03b
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.junit.vintage.engine_5.6.0.v20200203-2009.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.opentest4j.source_1.2.0.v20190826-0900.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.opentest4j.source_1.2.0.v20190826-0900.jar
new file mode 100644
index 0000000..7f9721d
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.opentest4j.source_1.2.0.v20190826-0900.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/org.opentest4j_1.2.0.v20190826-0900.jar b/plugins/codegen/org.eclipse.aas.basyx.lib/org.opentest4j_1.2.0.v20190826-0900.jar
new file mode 100644
index 0000000..d284ccf
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/org.opentest4j_1.2.0.v20190826-0900.jar
Binary files differ
diff --git a/plugins/codegen/org.eclipse.aas.basyx.lib/pom.xml b/plugins/codegen/org.eclipse.aas.basyx.lib/pom.xml
new file mode 100755
index 0000000..41dc19c
--- /dev/null
+++ b/plugins/codegen/org.eclipse.aas.basyx.lib/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-codegen</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.aas.basyx.lib</artifactId>
+	<version>1.0.0-SNAPSHOT</version>
+	<packaging>eclipse-plugin</packaging>
+
+</project>
\ No newline at end of file
diff --git a/plugins/codegen/pom.xml b/plugins/codegen/pom.xml
new file mode 100755
index 0000000..cea993c
--- /dev/null
+++ b/plugins/codegen/pom.xml
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-plugins</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas-codegen</artifactId>
+	<packaging>pom</packaging>
+
+	<modules>
+		<module>org.eclipse.aas.basyx.codegen</module>
+		<module>org.eclipse.aas.basyx.lib</module>
+	</modules>
+</project>
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.classpath b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.classpath
new file mode 100644
index 0000000..bbfe5b0
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.classpath
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<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-11">
+		<attributes>
+			<attribute name="module" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.project b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.project
new file mode 100644
index 0000000..296d2a8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.aas.aasx.import</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.settings/org.eclipse.jdt.core.prefs b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..3f559db
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,396 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=11
+org.eclipse.jdt.core.compiler.compliance=11
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=enabled
+org.eclipse.jdt.core.compiler.source=11
+org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns=false
+org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines=2147483647
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns=false
+org.eclipse.jdt.core.formatter.align_with_spaces=false
+org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_annotations_on_enum_constant=49
+org.eclipse.jdt.core.formatter.alignment_for_annotations_on_field=49
+org.eclipse.jdt.core.formatter.alignment_for_annotations_on_local_variable=49
+org.eclipse.jdt.core.formatter.alignment_for_annotations_on_method=49
+org.eclipse.jdt.core.formatter.alignment_for_annotations_on_package=49
+org.eclipse.jdt.core.formatter.alignment_for_annotations_on_parameter=0
+org.eclipse.jdt.core.formatter.alignment_for_annotations_on_type=49
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assertion_message=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_loops=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain=0
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header=0
+org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_module_statements=16
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references=0
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_record_components=16
+org.eclipse.jdt.core.formatter.alignment_for_relational_operator=0
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_shift_operator=0
+org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_type_annotations=0
+org.eclipse.jdt.core.formatter.alignment_for_type_arguments=0
+org.eclipse.jdt.core.formatter.alignment_for_type_parameters=0
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch=0
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_record_constructor=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_record_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped=true
+org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position=true
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=false
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=false
+org.eclipse.jdt.core.formatter.comment.indent_tag_description=false
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags=do not insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=do not insert
+org.eclipse.jdt.core.formatter.comment.line_length=80
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=false
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_not_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case=insert
+org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=true
+org.eclipse.jdt.core.formatter.join_wrapped_lines=true
+org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_code_block_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_method_body_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line=one_line_never
+org.eclipse.jdt.core.formatter.lineSplit=120
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block=0
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block=0
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block=0
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=1
+org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement=common_lines
+org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause=common_lines
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.text_block_indentation=0
+org.eclipse.jdt.core.formatter.use_on_off_tags=true
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_assertion_message_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_assignment_operator=false
+org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_conditional_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_before_relational_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_shift_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
+org.eclipse.jdt.core.javaFormatter=org.eclipse.jdt.core.defaultJavaFormatter
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.settings/org.eclipse.jdt.ui.prefs b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.settings/org.eclipse.jdt.ui.prefs
new file mode 100644
index 0000000..3836215
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,5 @@
+eclipse.preferences.version=1
+formatter_profile=org.eclipse.jdt.ui.default.eclipse_profile
+formatter_settings_version=20
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\r\n * @return the ${bare_field_name}\r\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\r\n * @param ${param} the ${bare_field_name} to set\r\n */</template><template autoinsert\="true" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment"/><template autoinsert\="false" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment"/><template autoinsert\="false" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment"/><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="modulecomment_context" deleted\="false" description\="Comment for modules" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.modulecomment" name\="modulecomment">/**\r\n * @author ${user}\r\n *\r\n * ${tags}\r\n */</template><template autoinsert\="true" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment"/><template autoinsert\="true" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\r\n * ${tags}\r\n * ${see_to_target}\r\n */</template><template autoinsert\="false" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${package_declaration}\r\n\r\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\r\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\r\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\r\n</template><template autoinsert\="true" context\="recordbody_context" deleted\="false" description\="Code in new record type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.recordbody" name\="recordbody">\r\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\r\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\r\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\r\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\r\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/META-INF/MANIFEST.MF b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..c992b95
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/META-INF/MANIFEST.MF
@@ -0,0 +1,57 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.aas.aasx.import;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Bundle-ClassPath: .
+Bundle-Vendor: %providerName
+Bundle-Localization: plugin
+Automatic-Module-Name: org.eclipse.papyrus.aas.aasx.import
+Bundle-RequiredExecutionEnvironment: JavaSE-11
+Require-Bundle: org.eclipse.ui.workbench;bundle-version="[3.122.0,4.0.0)",
+ org.eclipse.osgi;bundle-version="[3.16.0,4.0.0)",
+ org.eclipse.papyrus.infra.core.log;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.core.resources;bundle-version="[3.13.0,4.0.0)",
+ org.eclipse.core.commands;bundle-version="[3.9.0,4.0.0)",
+ org.eclipse.swt;bundle-version="[3.115.0,4.0.0)",
+ org.eclipse.papyrus.infra.core;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.wb.core.lib;bundle-version="[1.9.0,2.0.0)",
+ org.eclipse.papyrus.uml.m2m.qvto.common;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.uml2.uml;bundle-version="[5.5.0,6.0.0)",
+ org.eclipse.jface;bundle-version="[3.22.0,4.0.0)",
+ org.eclipse.gmf.runtime.notation.edit;bundle-version="[1.8.0,2.0.0)",
+ org.eclipse.papyrus.infra.emf;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.widgets;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.uml.diagram.wizards;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.ui.ide;bundle-version="[3.18.0,4.0.0)",
+ org.eclipse.ui;bundle-version="[3.118.0,4.0.0)",
+ org.eclipse.core.runtime;bundle-version="[3.20.0,4.0.0)",
+ org.eclipse.emf.ecore;bundle-version="[2.23.0,3.0.0)";visibility:=reexport,
+ org.eclipse.emf.ecore.xmi;bundle-version="[2.16.0,3.0.0)";visibility:=reexport,
+ org.eclipse.gmf.runtime.emf.core;bundle-version="[1.7.0,2.0.0)",
+ org.eclipse.papyrus.uml.tools.utils;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.uml.tools;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.gmf.runtime.emf.type.core;bundle-version="[1.9.0,2.0.0)",
+ org.eclipse.papyrus.uml.diagram.clazz;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.uml.service.types;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.papyrus.infra.services.edit;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.emf.gmf;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.infra.core.sashwindows.di;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.infra.architecture;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.emf.common.ui;bundle-version="[2.18.0,3.0.0)",
+ org.eclipse.papyrus.infra.ui;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.viewpoints.policy;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.architecture.representation;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.core.architecture;bundle-version="[3.0.0,4.0.0)"
+Export-Package: org.eclipse.papyrus.aas.import2papyrus.handler,
+ org.eclipse.papyrus.aas.import2papyrus.messages,
+ org.eclipse.papyrus.aas.import2papyrus.transformations,
+ org.eclipse.papyrus.aas.import2papyrus.wizards,
+ io.shell.admin.aas._1._0,
+ io.shell.admin.aas._1._0.impl,
+ io.shell.admin.aas._1._0.util,
+ io.shell.admin.iec61360._1._0,
+ io.shell.admin.iec61360._1._0.impl,
+ io.shell.admin.iec61360._1._0.util
+Bundle-ActivationPolicy: lazy
+Bundle-Activator: org.eclipse.papyrus.aas.import2papyrus.handler.Activator
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/build.properties b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/build.properties
new file mode 100644
index 0000000..d9187fc
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/build.properties
@@ -0,0 +1,8 @@
+source.. = src/,\
+		   src-gen/
+output.. = bin/
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml,\
+               icons/,\
+               plugin.properties
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/icons/import_wiz_16x16-papyrusColor.gif b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/icons/import_wiz_16x16-papyrusColor.gif
new file mode 100644
index 0000000..c7be463
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/icons/import_wiz_16x16-papyrusColor.gif
Binary files differ
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/plugin.properties b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/plugin.properties
new file mode 100644
index 0000000..7a8ac8c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/plugin.properties
@@ -0,0 +1,15 @@
+###############################################################################
+# Copyright (c) 2020 CEA LIST, and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#
+###############################################################################
+pluginName = c
+providerName = CEA LIST
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/plugin.xml b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/plugin.xml
new file mode 100644
index 0000000..39ec8a6
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/plugin.xml
@@ -0,0 +1,55 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+
+   
+   <extension
+         point="org.eclipse.ui.importWizards">
+      <wizard
+            category="org.eclipse.papyrus.infra.core.importcategory"
+            class="org.eclipse.papyrus.aas.import2papyrus.wizards.ImportAASXWizard"
+            icon="icons/import_wiz_16x16-papyrusColor.gif"
+            id="org.eclipse.papyrus.aasx.import.category"
+            name="Import Papyrus Project from AASX Project">
+         <description>
+            This wizard allows to import an AASX project into Papyrus
+         </description>
+      </wizard>
+   </extension>
+   
+
+
+
+
+
+   <extension point="org.eclipse.emf.ecore.generated_package">
+      <!-- @generated AAS -->
+      <package
+            uri="http://www.admin-shell.io/aas/1/0"
+            class="io.shell.admin.aas._1._0._0Package"
+            genModel="resources/AAS.genmodel"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.ecore.extension_parser">
+      <!-- @generated AAS -->
+      <parser
+            type="_0"
+            class="io.shell.admin.aas._1._0.util._0ResourceFactoryImpl"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.ecore.generated_package">
+      <!-- @generated AAS -->
+      <package
+            uri="http://www.admin-shell.io/IEC61360/1/0"
+            class="io.shell.admin.iec61360._1._0._0Package"
+            genModel="resources/AAS.genmodel"/>
+   </extension>
+
+   <extension point="org.eclipse.emf.ecore.extension_parser">
+      <!-- @generated AAS -->
+      <parser
+            type="_0"
+            class="io.shell.admin.iec61360._1._0.util._0ResourceFactoryImpl"/>
+   </extension>
+
+</plugin>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/pom.xml b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/pom.xml
new file mode 100644
index 0000000..dfd8b24
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-modeling</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.aasx.import</artifactId>
+	<version>0.7.0-SNAPSHOT</version>
+	<packaging>eclipse-plugin</packaging>
+
+</project>
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/AAS.genmodel b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/AAS.genmodel
new file mode 100644
index 0000000..dbeff17
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/AAS.genmodel
@@ -0,0 +1,319 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="****************************************************************************&#xA;  Copyright (c) 2020 CEA LIST.&#xA; &#xA; &#xA;  All rights reserved. This program and the accompanying materials&#xA;  are made available under the terms of the Eclipse Public License 2.0&#xA;  which accompanies this distribution, and is available at&#xA;  https://www.eclipse.org/legal/epl-2.0/&#xA; &#xA;  SPDX-License-Identifier: EPL-2.0&#xA; &#xA;  Contributors:&#xA;   Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation&#xA; &#xA; ****************************************************************************"
+    modelDirectory="/org.eclipse.papyrus.aas.aasx.import/src-gen" modelPluginID="org.eclipse.papyrus.aas.aasx.import"
+    modelName="AAS" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+    importerID="org.eclipse.xsd.ecore.importer" complianceLevel="5.0" copyrightFields="false"
+    operationReflection="true" importOrganizing="true">
+  <foreignModel>AAS.xsd</foreignModel>
+  <genPackages prefix="_0" basePackage="io.shell.admin.aas._1" resource="XML" disposableProviderFactory="true"
+      ecorePackage="_0.ecore#/">
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="_0.ecore#//IdTypeType">
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//IdTypeType/idShort"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//IdTypeType/IRDI"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//IdTypeType/URI"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//IdTypeType/Custom"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="_0.ecore#//IdTypeType1">
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//IdTypeType1/URI"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//IdTypeType1/IRDI"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//IdTypeType1/Custom"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="_0.ecore#//KindType">
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//KindType/Type"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//KindType/Instance"/>
+    </genEnums>
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="_0.ecore#//TypeType">
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/GlobalReference"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/ConceptDictionary"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/AccessPermissionRule"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/DataElement"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/View"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/Property"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/SubmodelElement"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/File"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/Blob"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/ReferenceElement"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/SubmodelElementCollection"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/RelationShipElement"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/Event"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/Operation"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/OperationVariable"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/AssetAdministrationShell"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/Submodel"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/ConceptDescription"/>
+      <genEnumLiterals ecoreEnumLiteral="_0.ecore#//TypeType/Asset"/>
+    </genEnums>
+    <genDataTypes ecoreDataType="_0.ecore#//IdTypeTypeObject"/>
+    <genDataTypes ecoreDataType="_0.ecore#//IdTypeTypeObject1"/>
+    <genDataTypes ecoreDataType="_0.ecore#//KindTypeObject"/>
+    <genDataTypes ecoreDataType="_0.ecore#//TypeTypeObject"/>
+    <genClasses ecoreClass="_0.ecore#//AasenvT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AasenvT/assetAdministrationShells"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AasenvT/assets"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AasenvT/submodels"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AasenvT/conceptDescriptions"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//AdministrationT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//AdministrationT/version"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//AdministrationT/revision"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//AssetAdministrationShellsT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellsT/assetAdministrationShell"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//AssetAdministrationShellT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/idShort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//AssetAdministrationShellT/category"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//AssetAdministrationShellT/parent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/identification"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/administration"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/embeddedDataSpecification"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/derivedFrom"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/assetRef"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/submodelRefs"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/views"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetAdministrationShellT/conceptDictionaries"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//AssetsT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetsT/asset"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//AssetT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetT/idShort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//AssetT/category"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetT/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//AssetT/parent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetT/identification"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetT/administration"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetT/embeddedDataSpecification"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//AssetT/kind"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//AssetT/assetIdentificationModelRef"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//BlobT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//BlobT/mimeType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//BlobT/value"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//BlobTypeT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//BlobTypeT/value"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ConceptDescriptionsRefT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDescriptionsRefT/conceptDescriptionRef"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ConceptDescriptionsT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDescriptionsT/conceptDescription"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ConceptDescriptionT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDescriptionT/idShort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//ConceptDescriptionT/category"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDescriptionT/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//ConceptDescriptionT/parent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDescriptionT/identification"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDescriptionT/administration"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDescriptionT/embeddedDataSpecification"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDescriptionT/isCaseOf"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ConceptDictionariesT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDictionariesT/conceptDictionary"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ConceptDictionaryT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDictionaryT/idShort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//ConceptDictionaryT/category"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDictionaryT/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//ConceptDictionaryT/parent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConceptDictionaryT/conceptDescriptionRefs"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ConstraintT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConstraintT/qualifier"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ConstraintT/formula"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ContainedElementsT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ContainedElementsT/containedElementRef"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//DataSpecificationContentT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//DataSpecificationContentT/dataSpecificationIEC61360"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//DocumentRoot">
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//DocumentRoot/mixed"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference _0.ecore#//DocumentRoot/xMLNSPrefixMap"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference _0.ecore#//DocumentRoot/xSISchemaLocation"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//DocumentRoot/aasenv"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//DocumentRoot/key"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//EmbeddedDataSpecificationT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//EmbeddedDataSpecificationT/hasDataSpecification"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//EmbeddedDataSpecificationT/dataSpecificationContent"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//EventT"/>
+    <genClasses ecoreClass="_0.ecore#//FileT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//FileT/mimeType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//FileT/value"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//FormulaT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//FormulaT/dependsOn"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//IdentificationT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//IdentificationT/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//IdentificationT/idType"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//IdPropertyDefinitionT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//IdPropertyDefinitionT/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//IdPropertyDefinitionT/idType"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//IdShortT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//IdShortT/value"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//KeysT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//KeysT/key"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//KeyT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//KeyT/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//KeyT/idType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//KeyT/local"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//KeyT/type"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//LangStringsT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//LangStringsT/langString"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//LangStringT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//LangStringT/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//LangStringT/lang"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//OperationT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//OperationT/in"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//OperationT/out"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//OperationVariableT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//OperationVariableT/value"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//PathTypeT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//PathTypeT/value"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//PropertyT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//PropertyT/valueType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//PropertyT/value"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//PropertyT/valueId"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//PropertyValueTypeT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//PropertyValueTypeT/value"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//PrvalueTypeT"/>
+    <genClasses ecoreClass="_0.ecore#//QualifiersT">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//QualifiersT/qualifier"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//QualifierT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//QualifierT/semanticId"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//QualifierT/qualifierType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//QualifierT/qualifierValue"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//QualifierT/qualifierValueId"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ReferenceElementT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ReferenceElementT/value"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ReferencesT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ReferencesT/reference"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ReferenceT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ReferenceT/keys"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//RelationshipElementT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//RelationshipElementT/first"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//RelationshipElementT/second"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//SemanticIdT"/>
+    <genClasses ecoreClass="_0.ecore#//SubmodelElementAbstractT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementAbstractT/idShort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//SubmodelElementAbstractT/category"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementAbstractT/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//SubmodelElementAbstractT/parent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementAbstractT/semanticId"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementAbstractT/embeddedDataSpecification"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//SubmodelElementAbstractT/kind"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementAbstractT/qualifier"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//SubmodelElementCollectionT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementCollectionT/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//SubmodelElementCollectionT/ordered"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//SubmodelElementCollectionT/allowDuplicates"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//SubmodelElementsT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementsT/submodelElement"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//SubmodelElementT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementT/property"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementT/file"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementT/blob"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementT/referenceElement"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementT/submodelElementCollection"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementT/relationshipElement"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementT/operation"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementT/operationVariable"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelElementT/event"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//SubmodelRefsT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelRefsT/submodelRef"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//SubmodelsT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelsT/submodel"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//SubmodelT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelT/idShort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//SubmodelT/category"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelT/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//SubmodelT/parent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelT/identification"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelT/administration"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelT/embeddedDataSpecification"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelT/semanticId"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//SubmodelT/kind"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelT/qualifier"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//SubmodelT/submodelElements"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ViewsT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ViewsT/view"/>
+    </genClasses>
+    <genClasses ecoreClass="_0.ecore#//ViewT">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ViewT/idShort"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//ViewT/category"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ViewT/description"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _0.ecore#//ViewT/parent"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ViewT/semanticId"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ViewT/embeddedDataSpecification"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _0.ecore#//ViewT/containedElements"/>
+    </genClasses>
+  </genPackages>
+  <genPackages prefix="_0" basePackage="io.shell.admin.iec61360._1" resource="XML"
+      disposableProviderFactory="true" ecorePackage="_01.ecore#/">
+    <genClasses ecoreClass="_01.ecore#//CodeT"/>
+    <genClasses ecoreClass="_01.ecore#//DataSpecificationIEC61630T">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DataSpecificationIEC61630T/preferredName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DataSpecificationIEC61630T/shortName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DataSpecificationIEC61630T/unit"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DataSpecificationIEC61630T/unitId"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DataSpecificationIEC61630T/valueFormat"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DataSpecificationIEC61630T/sourceOfDefinition"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DataSpecificationIEC61630T/symbol"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DataSpecificationIEC61630T/dataType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DataSpecificationIEC61630T/definition"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DataSpecificationIEC61630T/valueList"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DataSpecificationIEC61630T/code"/>
+    </genClasses>
+    <genClasses ecoreClass="_01.ecore#//ValueListT"/>
+    <genClasses ecoreClass="_01.ecore#//DocumentRoot">
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DocumentRoot/mixed"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference _01.ecore#//DocumentRoot/xMLNSPrefixMap"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference _01.ecore#//DocumentRoot/xSISchemaLocation"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DocumentRoot/code"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DocumentRoot/dataType"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DocumentRoot/definition"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DocumentRoot/preferredName"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DocumentRoot/shortName"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DocumentRoot/sourceOfDefinition"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DocumentRoot/symbol"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DocumentRoot/unit"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DocumentRoot/unitId"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute _01.ecore#//DocumentRoot/valueFormat"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DocumentRoot/valueList"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference _01.ecore#//DocumentRoot/valueType"/>
+    </genClasses>
+  </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/AAS.xsd b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/AAS.xsd
new file mode 100644
index 0000000..71c9968
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/AAS.xsd
@@ -0,0 +1,536 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<schema targetNamespace="http://www.admin-shell.io/aas/1/0"
+	elementFormDefault="qualified" xmlns="http://www.w3.org/2001/XMLSchema"
+	xmlns:aas="http://www.admin-shell.io/aas/1/0"  xmlns:IEC61360="http://www.admin-shell.io/IEC61360/1/0">
+    <import schemaLocation="IEC61360.xsd" namespace="http://www.admin-shell.io/IEC61360/1/0">
+	</import>
+	<element name="aasenv" type="aas:aasenv_t"></element>
+
+	<complexType name="aasenv_t">
+		<sequence>
+			<element name="assetAdministrationShells" type="aas:assetAdministrationShells_t" minOccurs="0" maxOccurs="1">
+			</element>
+			<element name="assets" type="aas:assets_t" minOccurs="0" maxOccurs="1"></element>
+			<element name="submodels" type="aas:submodels_t" minOccurs="0" maxOccurs="1"></element>
+			<element name="conceptDescriptions" type="aas:conceptDescriptions_t" minOccurs="0" maxOccurs="1"></element>
+		</sequence>
+	</complexType>
+
+	<complexType name="assetAdministrationShells_t">
+		<sequence>
+			<element name="assetAdministrationShell" type="aas:assetAdministrationShell_t"
+				minOccurs="0" maxOccurs="unbounded">
+			</element>
+		</sequence>
+	</complexType>
+
+	<complexType name="assets_t">
+		<sequence>
+			<element name="asset" type="aas:asset_t" minOccurs="0"
+				maxOccurs="unbounded">
+			</element>
+		</sequence>
+	</complexType>
+
+	<complexType name="asset_t">
+		<sequence>
+			<group ref="aas:identifiable"></group>
+			<group ref="aas:hasDataSpecifications"></group>
+			<group ref="aas:hasKind"></group>
+			<element name="assetIdentificationModelRef" type="aas:reference_t" minOccurs="0" maxOccurs="1"></element>
+		</sequence>
+	</complexType>
+
+	<complexType name="assetAdministrationShell_t">
+		<sequence>
+			<group ref="aas:identifiable"></group>
+			<group ref="aas:hasDataSpecifications"></group>
+			<element name="derivedFrom" type="aas:reference_t" minOccurs="0" maxOccurs="1"></element>
+			<element name="assetRef" type="aas:reference_t" minOccurs="1" maxOccurs="1"></element>
+			<element name="submodelRefs" type="aas:submodelRefs_t" minOccurs="0" maxOccurs="1"></element>
+			<element name="views" type="aas:views_t" minOccurs="0" maxOccurs="1"></element>
+			<element name="conceptDictionaries"
+				type="aas:conceptDictionaries_t" minOccurs="0" maxOccurs="1">
+			</element>
+		</sequence>
+	</complexType>
+
+	<complexType name="submodel_t">
+			<sequence>
+			<group ref="aas:identifiable"></group>
+			<group ref="aas:hasDataSpecifications"></group>
+			<group ref="aas:hasSemantics"></group>
+			<group ref="aas:hasKind"></group>
+			<group ref="aas:qualifiable"></group>
+			<element name="submodelElements" type="aas:submodelElements_t"></element>
+		</sequence>
+	</complexType>
+
+	<complexType name="conceptDescription_t">
+		<sequence>
+			<group ref="aas:identifiable"></group>
+			<group ref="aas:hasDataSpecifications"></group>
+			<element name="isCaseOf" type="aas:reference_t" maxOccurs="unbounded" minOccurs="0"></element>
+		</sequence>
+	</complexType>
+
+	<complexType name="view_t">
+		<sequence>
+			<group ref="aas:referable"></group>
+			<group ref="aas:hasSemantics"></group>
+			<group ref="aas:hasDataSpecifications"></group>
+			<element name="containedElements" type="aas:containedElements_t"></element>
+		</sequence>
+	</complexType>
+
+	<complexType name="submodelElements_t">
+		<sequence>
+			<element name="submodelElement" type="aas:submodelElement_t" minOccurs="0" maxOccurs="unbounded"></element>
+		</sequence>
+	</complexType>
+
+    <complexType name="submodelElementAbstract_t">
+    		<sequence>
+			<group ref="aas:referable"></group>
+			<group ref="aas:hasSemantics"></group>
+			<group ref="aas:hasDataSpecifications"></group>
+			<group ref="aas:hasKind"></group>
+			<group ref="aas:qualifiable"></group>
+		</sequence>
+    </complexType>
+
+    <complexType name="submodelRefs_t">
+    	<sequence>
+    		<element name="submodelRef" type="aas:reference_t" minOccurs="0" maxOccurs="unbounded"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="views_t">
+    	<sequence>
+    		<element name="view" type="aas:view_t" minOccurs="0" maxOccurs="unbounded"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="conceptDictionary_t">
+    	<sequence>
+			<group ref="aas:referable"></group>
+    		<element name="conceptDescriptionRefs" type="aas:conceptDescriptionsRef_t" minOccurs="0" maxOccurs="1"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="conceptDescriptions_t">
+    	<sequence>
+    		<element name="conceptDescription" type="aas:conceptDescription_t" minOccurs="0" maxOccurs="unbounded"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="conceptDictionaries_t">
+    	<sequence>
+    		<element name="conceptDictionary" type="aas:conceptDictionary_t" minOccurs="0" maxOccurs="unbounded"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="submodels_t">
+    	<sequence>
+    		<element name="submodel" type="aas:submodel_t" minOccurs="0" maxOccurs="unbounded"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="containedElements_t">
+    	<sequence>
+    		<element name="containedElementRef" minOccurs="0" maxOccurs="unbounded" type="aas:reference_t"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="submodelElement_t">
+    	<choice>
+    		<element name="property" type="aas:property_t"></element>
+    		<element name="file" type="aas:file_t"></element>
+    		<element name="blob" type="aas:blob_t"></element>
+    		<element name="referenceElement"
+    			type="aas:referenceElement_t">
+    		</element>
+    		<element name="submodelElementCollection"
+    			type="aas:submodelElementCollection_t">
+    		</element>
+    		<element name="relationshipElement"
+    			type="aas:relationshipElement_t">
+    		</element>
+    		<element name="operation" type="aas:operation_t"></element>
+    		<element name="operationVariable"
+    			type="aas:operationVariable_t">
+    		</element>
+    		<element name="event" type="aas:event_t"></element>
+    	</choice>
+    </complexType>
+
+    <complexType name="property_t">
+    	<complexContent>
+    		<extension base="aas:submodelElementAbstract_t">
+    			<sequence>
+    				<element name="valueType" type="string"></element>
+    				<element name="value" type="aas:propertyValueType_t" maxOccurs="1" minOccurs="0"></element>
+    				<element name="valueId" type="aas:reference_t" maxOccurs="1" minOccurs="0"></element>
+    			</sequence>
+    		</extension>
+    	</complexContent>
+    </complexType>
+    
+    <complexType name="file_t">
+    	<complexContent>
+    		<extension base="aas:submodelElementAbstract_t">
+    			<sequence>
+    			<element name="mimeType" type="string"></element>
+    			<element name="value" type="aas:pathType_t"></element>
+    			</sequence>
+    		</extension>
+       </complexContent>
+    </complexType>
+
+    <complexType name="blob_t">
+    	<complexContent>
+    		<extension base="aas:submodelElementAbstract_t">
+    			<sequence>
+    			<element name="mimeType" type="string"></element>
+    			<element name="value" type="aas:blobType_t"></element>
+    			</sequence>
+    		</extension>
+       </complexContent>
+    </complexType>
+    
+    <complexType name="referenceElement_t">
+    	<complexContent>
+    		<extension base="aas:submodelElementAbstract_t">
+    			<sequence>
+    			<element name="value" type="aas:reference_t"></element>
+    			</sequence>
+    		</extension>
+       </complexContent>
+    </complexType>        
+
+    <complexType name="submodelElementCollection_t">
+    	<complexContent>
+    		<extension base="aas:submodelElementAbstract_t">
+    			<sequence>
+    			<element name="value" type="aas:submodelElements_t"></element>
+    			<element name="ordered" type="boolean"></element>
+    			<element name="allowDuplicates" type="boolean"></element>
+    			</sequence>
+    		</extension>
+       </complexContent>
+    </complexType> 
+
+    <complexType name="relationshipElement_t">
+   	<complexContent>
+    		<extension base="aas:submodelElementAbstract_t">
+    			<sequence>
+    			<element name="first" type="aas:reference_t"></element>
+    			<element name="second" type="aas:reference_t"></element>
+    			</sequence>
+    		</extension>
+       </complexContent>    
+    </complexType>
+
+    <!-- 190318: MIHO added min/maxOccurs to reflect multiplicity of the spec -->
+    <complexType name="operation_t">
+   	<complexContent>
+    		<extension base="aas:submodelElementAbstract_t">
+    			<sequence>
+    			<element name="in" minOccurs="0" maxOccurs="unbounded" type="aas:operationVariable_t"></element>
+    			<element name="out" minOccurs="0" maxOccurs="unbounded" type="aas:operationVariable_t"></element>
+    			</sequence>
+    		</extension>
+       </complexContent>      
+    
+    </complexType>
+
+    <complexType name="operationVariable_t">
+    	<complexContent>
+    		<extension base="aas:submodelElementAbstract_t">
+    			<sequence>
+    			<element name="value" type="aas:submodelElement_t"></element>
+    			</sequence>
+    		</extension>
+       </complexContent>      
+    </complexType>
+
+    <complexType name="event_t">
+    	<complexContent>
+    		<extension base="aas:submodelElementAbstract_t">
+    			<sequence>
+    			</sequence>
+    		</extension>
+       </complexContent>      
+    </complexType>
+
+    <complexType name="dataSpecificationContent_t">
+    	<choice>
+	    		<element name="dataSpecificationIEC61360" type="IEC61360:dataSpecificationIEC61630_t"></element>
+    	</choice>
+    </complexType>
+
+    <complexType name="conceptDescriptionsRef_t">
+    	<sequence>
+    		<element name="conceptDescriptionRef" type="aas:reference_t" minOccurs="0" maxOccurs="unbounded"></element>
+    	</sequence>
+    </complexType>
+
+
+
+    <complexType name="pathType_t">
+    	<simpleContent>
+    		<extension base="string"></extension>
+    	</simpleContent>
+    </complexType>
+
+    <complexType name="blobType_t">
+    	<simpleContent>
+    		<extension base="base64Binary"></extension>
+    	</simpleContent>
+    </complexType>
+    
+    	<complexType name="idPropertyDefinition_t">
+		<simpleContent>
+			<extension base="string">
+				<attribute name="idType" type="string" />
+			</extension>
+		</simpleContent>
+	</complexType>
+
+	<complexType name="idShort_t">
+		<simpleContent>
+			<extension base="string">
+			</extension>
+		</simpleContent>
+	</complexType>
+
+	<complexType name="administration_t">
+		<sequence>
+			<element name="version" type="string" minOccurs="0"
+				maxOccurs="1" />
+			<element name="revision" type="string" minOccurs="0"
+				maxOccurs="1" />
+		</sequence>
+	</complexType>
+
+	<complexType name="identification_t">
+		<simpleContent>
+	 		<extension base="string">
+				<attribute name="idType" use="optional">
+					<simpleType>
+						<restriction base="string">
+							<enumeration value="URI"></enumeration>
+							<enumeration value="IRDI"></enumeration>
+							<enumeration value="Custom"></enumeration>
+						</restriction>
+					</simpleType>
+				</attribute>
+			</extension>
+		</simpleContent>
+	</complexType>
+
+	
+	<group name="identifiable">
+		<sequence>
+			<group ref="aas:referable"></group>
+            <element name="identification" type="aas:identification_t" minOccurs="0" maxOccurs="1"></element>
+            <element name="administration" type="aas:administration_t" minOccurs="0" maxOccurs="1"></element>
+		</sequence>
+	</group>
+
+	<group name="referable">
+		<sequence>
+			<element name="idShort" type="aas:idShort_t" minOccurs="0" maxOccurs="1"></element>
+			<element name="category" type="string" minOccurs="0" maxOccurs="1"></element>
+			<element name="description"
+				type="aas:langStrings_t" minOccurs="0" maxOccurs="1">
+			</element>
+			<element name="parent" type="string" minOccurs="0" maxOccurs="1"></element>
+		</sequence>
+	</group>
+
+	<complexType name="qualifiers_t">
+		<sequence>
+			<element name="qualifier" type="string" minOccurs="0" maxOccurs="unbounded"></element>
+		</sequence>
+	</complexType>
+
+    <group name="qualifiable">
+    	<sequence>
+    		<element name="qualifier" type="aas:constraint_t" minOccurs="0" maxOccurs="1"></element>
+    	</sequence>
+    </group>
+
+    <group name="hasDataSpecifications">
+    	<sequence>
+    		<element name="embeddedDataSpecification" type="aas:embeddedDataSpecification_t" maxOccurs="unbounded" minOccurs="0"></element>
+    	</sequence>
+    </group>
+
+    <group name="hasSemantics">
+    	<sequence>
+    		<element name="semanticId" type="aas:semanticId_t" minOccurs="0"></element>
+    	</sequence>
+    </group>
+
+    <complexType name="semanticId_t">
+    	<complexContent>
+    		<extension base="aas:reference_t"></extension>
+    	</complexContent>
+    </complexType>
+
+    <complexType name="reference_t">
+    	<sequence>
+    		<element name="keys" type="aas:keys_t"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="qualifier_t">
+    	<sequence>
+    		<group ref="aas:hasSemantics"></group>
+    		<element name="qualifierType" type="string"></element>
+    		<element name="qualifierValue" type="string" maxOccurs="1" minOccurs="0"></element>
+    		<element name="qualifierValueId" type="aas:reference_t" maxOccurs="1" minOccurs="0"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="formula_t">
+    	<sequence>
+    		<element name="dependsOn" type="aas:references_t"></element>
+    	</sequence>
+    </complexType>
+
+    <complexType name="constraint_t">
+    	<choice>
+    		<element name="qualifier" type="aas:qualifier_t"></element>
+            <element name="formula" type="aas:formula_t"></element>
+        </choice>
+    </complexType>
+
+    <complexType name="references_t">
+    	<sequence>
+    		<element name="reference" type="aas:reference_t" minOccurs="0" maxOccurs="unbounded"></element>
+    	</sequence>
+    </complexType>
+    
+    <group name="hasKind">
+    	<sequence>
+    		<element name="kind" minOccurs="0" maxOccurs="1">
+    			<simpleType>
+    				<restriction base="string">
+    					<enumeration value="Type"></enumeration>
+    					<enumeration value="Instance"></enumeration>
+    				</restriction>
+    			</simpleType>
+    		</element>
+    	</sequence>
+    </group>
+
+    <complexType name="keys_t">
+    	<sequence>
+    	 		<element ref="aas:key" minOccurs="0" maxOccurs="unbounded"></element>
+    	</sequence>
+    </complexType>
+
+    <element name="key" type="aas:key_t"></element>
+
+    <attributeGroup name="keyTypes">
+    	<attribute name="localKeyType" use="optional">
+    		<simpleType>
+    				<restriction base="string">
+    					<enumeration value="idShort"></enumeration>
+    				</restriction>
+    		</simpleType>
+    	</attribute>
+    	<attribute name="identifierType" use="optional">
+    		<simpleType>
+    				<restriction base="string">
+    					<enumeration value="IRDI"></enumeration>
+    					<enumeration value="URI"></enumeration>
+    					<enumeration value="Custom"></enumeration>
+    				</restriction>
+    		</simpleType>
+    	</attribute>
+    </attributeGroup>
+
+    <complexType name="key_t">
+    	<simpleContent>
+    		<extension base="string">
+        		<attribute name="type">
+        			<simpleType>
+		        		<restriction base="string">
+		        			<enumeration value="GlobalReference"></enumeration>
+		        			<enumeration value="ConceptDictionary"></enumeration>
+		    				<enumeration value="AccessPermissionRule"></enumeration>
+		    				<enumeration value="DataElement"></enumeration>
+		    				<enumeration value="View"></enumeration>
+		    				<enumeration value="Property"></enumeration>
+		    				<enumeration value="SubmodelElement"></enumeration>
+		    				<enumeration value="File"></enumeration>
+		    				<enumeration value="Blob"></enumeration>
+		    				<enumeration value="ReferenceElement"></enumeration>
+		    				<enumeration value="SubmodelElementCollection"></enumeration>
+		    				<enumeration value="RelationShipElement"></enumeration>
+		    				<enumeration value="Event"></enumeration>
+		    				<enumeration value="Operation"></enumeration>
+		    				<enumeration value="OperationVariable"></enumeration>
+		    				<enumeration value="AssetAdministrationShell"></enumeration>
+		    				<enumeration value="Submodel"></enumeration>
+		    				<enumeration value="ConceptDescription"></enumeration>
+		    				<enumeration value="Asset"></enumeration>    				
+		        		</restriction>
+		        	</simpleType>
+		        </attribute>
+        
+		        <attribute name="idType">
+		        	<simpleType>
+		        		<restriction base="string">
+		    				<enumeration value="idShort"></enumeration>
+		    				<enumeration value="IRDI"></enumeration>
+		    				<enumeration value="URI"></enumeration>
+		    				<enumeration value="Custom"></enumeration>
+		    	   		</restriction>
+		        	</simpleType>
+		        </attribute>
+		        <attribute name="local" type="boolean"></attribute>
+		    </extension>
+        </simpleContent>
+    </complexType>
+    
+    	<complexType name="langString_t">
+		<simpleContent>
+			<extension base="string">
+				<attribute name="lang" type="string" />
+			</extension>
+		</simpleContent>
+	</complexType>
+
+	<complexType name="langStrings_t">
+		<sequence>
+			<element name="langString" type="aas:langString_t" minOccurs="0" maxOccurs="unbounded"></element>
+		</sequence>
+	</complexType>
+
+
+	<complexType name="embeddedDataSpecification_t">
+		<sequence>
+			<element name="hasDataSpecification"
+				type="aas:reference_t" maxOccurs="1" minOccurs="0">
+			</element>
+			<element name="dataSpecificationContent"
+				type="aas:dataSpecificationContent_t" maxOccurs="1"
+				minOccurs="0">
+			</element>
+		</sequence>
+	</complexType>
+
+    
+
+    <complexType name="prvalueType_t"></complexType>
+
+    <complexType name="propertyValueType_t">
+    	<simpleContent>
+    		<extension base="string"></extension>
+    	</simpleContent>
+    </complexType>
+</schema>
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/IEC61360.xsd b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/IEC61360.xsd
new file mode 100644
index 0000000..005b7de
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/IEC61360.xsd
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+	targetNamespace="http://www.admin-shell.io/IEC61360/1/0"
+	xmlns:IEC61360="http://www.admin-shell.io/IEC61360/1/0"
+	xmlns:aas_common="http://www.admin-shell.io/aas_common/1/0" xmlns:aas="http://www.admin-shell.io/aas/1/0" xmlns:Q1="aas">
+	<xsd:import schemaLocation="AAS.xsd"
+		namespace="http://www.admin-shell.io/aas/1/0">
+	</xsd:import>
+
+	<xsd:complexType name="dataSpecificationIEC61630_t">
+		<xsd:sequence>
+			<xsd:element ref="IEC61360:preferredName" maxOccurs="1"
+				minOccurs="1">
+			</xsd:element>
+			<xsd:element ref="IEC61360:shortName" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+			<xsd:element ref="IEC61360:unit" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+			<xsd:element ref="IEC61360:unitId" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+			<xsd:element ref="IEC61360:valueFormat" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+			<xsd:element ref="IEC61360:sourceOfDefinition" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+			<xsd:element ref="IEC61360:symbol" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+			<xsd:element ref="IEC61360:dataType" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+			<xsd:element ref="IEC61360:definition" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+			<xsd:element ref="IEC61360:valueList" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+			<xsd:element ref="IEC61360:code" maxOccurs="1"
+				minOccurs="0">
+			</xsd:element>
+		</xsd:sequence>
+	</xsd:complexType>
+
+
+
+
+	<xsd:complexType name="valueList_t"></xsd:complexType>
+
+	<xsd:complexType name="code_t"></xsd:complexType>
+
+	<xsd:element name="preferredName" type="aas:langStrings_t"></xsd:element>
+
+	<xsd:element name="shortName" type="xsd:string"></xsd:element>
+
+	<xsd:element name="unit" type="xsd:string"></xsd:element>
+
+	<xsd:element name="unitId" type="aas:reference_t"></xsd:element>
+
+	<xsd:element name="valueFormat" type="xsd:string"></xsd:element>
+
+	<xsd:element name="sourceOfDefinition"
+		type="aas:langStrings_t">
+	</xsd:element>
+
+	<xsd:element name="symbol" type="xsd:string"></xsd:element>
+
+	<xsd:element name="dataType" type="xsd:string"></xsd:element>
+
+	<xsd:element name="definition" type="aas:langStrings_t"></xsd:element>
+
+	<xsd:element name="valueType" type="IEC61360:valueList_t"></xsd:element>
+
+	<xsd:element name="code" type="IEC61360:code_t"></xsd:element>
+
+	<xsd:element name="valueList" type="IEC61360:valueList_t"></xsd:element>
+</xsd:schema>
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/_0.ecore b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/_0.ecore
new file mode 100644
index 0000000..0ca17e2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/_0.ecore
@@ -0,0 +1,1418 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="_0" nsURI="http://www.admin-shell.io/aas/1/0" nsPrefix="aas">
+  <eClassifiers xsi:type="ecore:EClass" name="AasenvT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="aasenv_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="assetAdministrationShells"
+        eType="#//AssetAdministrationShellsT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="assetAdministrationShells"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="assets" eType="#//AssetsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="assets"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="submodels" eType="#//SubmodelsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="submodels"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="conceptDescriptions" eType="#//ConceptDescriptionsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="conceptDescriptions"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="AdministrationT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="administration_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="version"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="revision"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="AssetAdministrationShellsT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="assetAdministrationShells_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="assetAdministrationShell"
+        upperBound="-1" eType="#//AssetAdministrationShellT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="assetAdministrationShell"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="AssetAdministrationShellT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="assetAdministrationShell_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="idShort" eType="#//IdShortT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="idShort"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="category"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//LangStringsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="description"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="parent" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="parent"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="identification" eType="#//IdentificationT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="identification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="administration" eType="#//AdministrationT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="administration"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="embeddedDataSpecification"
+        upperBound="-1" eType="#//EmbeddedDataSpecificationT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="embeddedDataSpecification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="derivedFrom" eType="#//ReferenceT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="derivedFrom"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="assetRef" lowerBound="1"
+        eType="#//ReferenceT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="assetRef"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="submodelRefs" eType="#//SubmodelRefsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="submodelRefs"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="views" eType="#//ViewsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="views"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="conceptDictionaries" eType="#//ConceptDictionariesT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="conceptDictionaries"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="AssetsT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="assets_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="asset" upperBound="-1"
+        eType="#//AssetT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="asset"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="AssetT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="asset_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="idShort" eType="#//IdShortT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="idShort"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="category"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//LangStringsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="description"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="parent" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="parent"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="identification" eType="#//IdentificationT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="identification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="administration" eType="#//AdministrationT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="administration"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="embeddedDataSpecification"
+        upperBound="-1" eType="#//EmbeddedDataSpecificationT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="embeddedDataSpecification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//KindType"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="kind"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="assetIdentificationModelRef"
+        eType="#//ReferenceT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="assetIdentificationModelRef"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="BlobT" eSuperTypes="#//SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="blob_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mimeType" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="mimeType"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//BlobTypeT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="value"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="BlobTypeT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="blobType_t"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Base64Binary">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ConceptDescriptionsRefT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="conceptDescriptionsRef_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="conceptDescriptionRef"
+        upperBound="-1" eType="#//ReferenceT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="conceptDescriptionRef"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ConceptDescriptionsT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="conceptDescriptions_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="conceptDescription" upperBound="-1"
+        eType="#//ConceptDescriptionT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="conceptDescription"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ConceptDescriptionT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="conceptDescription_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="idShort" eType="#//IdShortT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="idShort"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="category"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//LangStringsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="description"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="parent" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="parent"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="identification" eType="#//IdentificationT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="identification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="administration" eType="#//AdministrationT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="administration"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="embeddedDataSpecification"
+        upperBound="-1" eType="#//EmbeddedDataSpecificationT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="embeddedDataSpecification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="isCaseOf" upperBound="-1"
+        eType="#//ReferenceT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="isCaseOf"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ConceptDictionariesT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="conceptDictionaries_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="conceptDictionary" upperBound="-1"
+        eType="#//ConceptDictionaryT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="conceptDictionary"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ConceptDictionaryT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="conceptDictionary_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="idShort" eType="#//IdShortT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="idShort"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="category"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//LangStringsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="description"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="parent" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="parent"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="conceptDescriptionRefs"
+        eType="#//ConceptDescriptionsRefT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="conceptDescriptionRefs"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ConstraintT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="constraint_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="qualifier" eType="#//QualifierT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="qualifier"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="formula" eType="#//FormulaT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="formula"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ContainedElementsT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="containedElements_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="containedElementRef" upperBound="-1"
+        eType="#//ReferenceT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="containedElementRef"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DataSpecificationContentT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="dataSpecificationContent_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dataSpecificationIEC61360"
+        eType="ecore:EClass _01.ecore#//DataSpecificationIEC61630T" containment="true"
+        resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="dataSpecificationIEC61360"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DocumentRoot">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value=""/>
+      <details key="kind" value="mixed"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="elementWildcard"/>
+        <details key="name" value=":mixed"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xMLNSPrefixMap" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xmlns:prefix"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xSISchemaLocation" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xsi:schemaLocation"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="aasenv" upperBound="-2"
+        eType="#//AasenvT" volatile="true" transient="true" derived="true" containment="true"
+        resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="aasenv"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="key" upperBound="-2" eType="#//KeyT"
+        volatile="true" transient="true" derived="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="key"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="EmbeddedDataSpecificationT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="embeddedDataSpecification_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="hasDataSpecification" eType="#//ReferenceT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="hasDataSpecification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dataSpecificationContent"
+        eType="#//DataSpecificationContentT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="dataSpecificationContent"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="EventT" eSuperTypes="#//SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="event_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="FileT" eSuperTypes="#//SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="file_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mimeType" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="mimeType"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//PathTypeT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="value"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="FormulaT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="formula_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="dependsOn" lowerBound="1"
+        eType="#//ReferencesT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="dependsOn"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IdentificationT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="identification_t"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="idType" eType="#//IdTypeType1"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="idType"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IdPropertyDefinitionT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="idPropertyDefinition_t"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="idType" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="idType"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="IdShortT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="idShort_t"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="IdTypeType">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="idType_._type"/>
+    </eAnnotations>
+    <eLiterals name="idShort"/>
+    <eLiterals name="IRDI" value="1"/>
+    <eLiterals name="URI" value="2"/>
+    <eLiterals name="Custom" value="3"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="IdTypeType1">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="idType_._1_._type"/>
+    </eAnnotations>
+    <eLiterals name="URI"/>
+    <eLiterals name="IRDI" value="1"/>
+    <eLiterals name="Custom" value="2"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="IdTypeTypeObject" instanceClassName="org.eclipse.emf.common.util.Enumerator">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="idType_._type:Object"/>
+      <details key="baseType" value="idType_._type"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="IdTypeTypeObject1" instanceClassName="org.eclipse.emf.common.util.Enumerator">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="idType_._1_._type:Object"/>
+      <details key="baseType" value="idType_._1_._type"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="KeysT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="keys_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="key" upperBound="-1" eType="#//KeyT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="key"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="KeyT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="key_t"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="idType" eType="#//IdTypeType"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="idType"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="local" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="local"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" eType="#//TypeType"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="type"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="KindType">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="kind_._type"/>
+    </eAnnotations>
+    <eLiterals name="Type"/>
+    <eLiterals name="Instance" value="1"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="KindTypeObject" instanceClassName="org.eclipse.emf.common.util.Enumerator">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="kind_._type:Object"/>
+      <details key="baseType" value="kind_._type"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="LangStringsT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="langStrings_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="langString" upperBound="-1"
+        eType="#//LangStringT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="langString"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="LangStringT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="langString_t"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="lang" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="lang"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="OperationT" eSuperTypes="#//SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="operation_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="in" upperBound="-1" eType="#//OperationVariableT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="in"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="out" upperBound="-1" eType="#//OperationVariableT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="out"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="OperationVariableT" eSuperTypes="#//SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="operationVariable_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//SubmodelElementT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="value"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="PathTypeT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="pathType_t"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="PropertyT" eSuperTypes="#//SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="property_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="valueType" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="valueType"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" eType="#//PropertyValueTypeT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="value"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="valueId" eType="#//ReferenceT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="valueId"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="PropertyValueTypeT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="propertyValueType_t"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="PrvalueTypeT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="prvalueType_t"/>
+      <details key="kind" value="empty"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="QualifiersT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="qualifiers_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="qualifier" unique="false"
+        upperBound="-1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="qualifier"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="QualifierT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="qualifier_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="semanticId" eType="#//SemanticIdT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="semanticId"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="qualifierType" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="qualifierType"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="qualifierValue" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="qualifierValue"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="qualifierValueId" eType="#//ReferenceT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="qualifierValueId"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ReferenceElementT" eSuperTypes="#//SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="referenceElement_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//ReferenceT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="value"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ReferencesT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="references_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="reference" upperBound="-1"
+        eType="#//ReferenceT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="reference"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ReferenceT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="reference_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="keys" lowerBound="1" eType="#//KeysT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="keys"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="RelationshipElementT" eSuperTypes="#//SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="relationshipElement_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="first" lowerBound="1" eType="#//ReferenceT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="first"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="second" lowerBound="1"
+        eType="#//ReferenceT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="second"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SemanticIdT" eSuperTypes="#//ReferenceT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="semanticId_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="submodelElementAbstract_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="idShort" eType="#//IdShortT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="idShort"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="category"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//LangStringsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="description"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="parent" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="parent"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="semanticId" eType="#//SemanticIdT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="semanticId"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="embeddedDataSpecification"
+        upperBound="-1" eType="#//EmbeddedDataSpecificationT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="embeddedDataSpecification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//KindType"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="kind"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="qualifier" eType="#//ConstraintT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="qualifier"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SubmodelElementCollectionT" eSuperTypes="#//SubmodelElementAbstractT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="submodelElementCollection_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" lowerBound="1" eType="#//SubmodelElementsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="value"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="ordered" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="ordered"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="allowDuplicates" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//Boolean"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="allowDuplicates"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SubmodelElementsT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="submodelElements_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="submodelElement" upperBound="-1"
+        eType="#//SubmodelElementT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="submodelElement"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SubmodelElementT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="submodelElement_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="property" eType="#//PropertyT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="property"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="file" eType="#//FileT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="file"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="blob" eType="#//BlobT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="blob"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="referenceElement" eType="#//ReferenceElementT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="referenceElement"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="submodelElementCollection"
+        eType="#//SubmodelElementCollectionT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="submodelElementCollection"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="relationshipElement" eType="#//RelationshipElementT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="relationshipElement"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="operation" eType="#//OperationT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="operation"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="operationVariable" eType="#//OperationVariableT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="operationVariable"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="event" eType="#//EventT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="event"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SubmodelRefsT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="submodelRefs_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="submodelRef" upperBound="-1"
+        eType="#//ReferenceT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="submodelRef"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SubmodelsT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="submodels_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="submodel" upperBound="-1"
+        eType="#//SubmodelT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="submodel"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SubmodelT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="submodel_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="idShort" eType="#//IdShortT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="idShort"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="category"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//LangStringsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="description"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="parent" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="parent"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="identification" eType="#//IdentificationT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="identification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="administration" eType="#//AdministrationT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="administration"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="embeddedDataSpecification"
+        upperBound="-1" eType="#//EmbeddedDataSpecificationT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="embeddedDataSpecification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="semanticId" eType="#//SemanticIdT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="semanticId"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//KindType"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="kind"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="qualifier" eType="#//ConstraintT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="qualifier"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="submodelElements" lowerBound="1"
+        eType="#//SubmodelElementsT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="submodelElements"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="TypeType">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="type_._type"/>
+    </eAnnotations>
+    <eLiterals name="GlobalReference"/>
+    <eLiterals name="ConceptDictionary" value="1"/>
+    <eLiterals name="AccessPermissionRule" value="2"/>
+    <eLiterals name="DataElement" value="3"/>
+    <eLiterals name="View" value="4"/>
+    <eLiterals name="Property" value="5"/>
+    <eLiterals name="SubmodelElement" value="6"/>
+    <eLiterals name="File" value="7"/>
+    <eLiterals name="Blob" value="8"/>
+    <eLiterals name="ReferenceElement" value="9"/>
+    <eLiterals name="SubmodelElementCollection" value="10"/>
+    <eLiterals name="RelationShipElement" value="11"/>
+    <eLiterals name="Event" value="12"/>
+    <eLiterals name="Operation" value="13"/>
+    <eLiterals name="OperationVariable" value="14"/>
+    <eLiterals name="AssetAdministrationShell" value="15"/>
+    <eLiterals name="Submodel" value="16"/>
+    <eLiterals name="ConceptDescription" value="17"/>
+    <eLiterals name="Asset" value="18"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="TypeTypeObject" instanceClassName="org.eclipse.emf.common.util.Enumerator">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="type_._type:Object"/>
+      <details key="baseType" value="type_._type"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ViewsT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="views_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="view" upperBound="-1" eType="#//ViewT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="view"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ViewT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="view_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="idShort" eType="#//IdShortT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="idShort"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="category"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="description" eType="#//LangStringsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="description"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="parent" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="parent"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="semanticId" eType="#//SemanticIdT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="semanticId"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="embeddedDataSpecification"
+        upperBound="-1" eType="#//EmbeddedDataSpecificationT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="embeddedDataSpecification"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="containedElements" lowerBound="1"
+        eType="#//ContainedElementsT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="containedElements"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/_01.ecore b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/_01.ecore
new file mode 100644
index 0000000..39894ca
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/_01.ecore
@@ -0,0 +1,241 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="_01" nsURI="http://www.admin-shell.io/IEC61360/1/0" nsPrefix="_01">
+  <eClassifiers xsi:type="ecore:EClass" name="CodeT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="code_t"/>
+      <details key="kind" value="empty"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DataSpecificationIEC61630T">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="dataSpecificationIEC61630_t"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="preferredName" lowerBound="1"
+        eType="ecore:EClass _0.ecore#//LangStringsT" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="preferredName"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="shortName" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="shortName"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unit" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="unit"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="unitId" eType="ecore:EClass _0.ecore#//ReferenceT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="unitId"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="valueFormat" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="valueFormat"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="sourceOfDefinition" eType="ecore:EClass _0.ecore#//LangStringsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="sourceOfDefinition"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="symbol" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="symbol"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dataType" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="dataType"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="definition" eType="ecore:EClass _0.ecore#//LangStringsT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="definition"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="valueList" eType="#//ValueListT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="valueList"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="code" eType="#//CodeT"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="code"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="ValueListT">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="valueList_t"/>
+      <details key="kind" value="empty"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DocumentRoot">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value=""/>
+      <details key="kind" value="mixed"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="elementWildcard"/>
+        <details key="name" value=":mixed"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xMLNSPrefixMap" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xmlns:prefix"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xSISchemaLocation" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xsi:schemaLocation"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="code" upperBound="-2" eType="#//CodeT"
+        volatile="true" transient="true" derived="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="code"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="dataType" unique="false"
+        upperBound="-2" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"
+        volatile="true" transient="true" derived="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="dataType"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="definition" upperBound="-2"
+        eType="ecore:EClass _0.ecore#//LangStringsT" volatile="true" transient="true"
+        derived="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="definition"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="preferredName" upperBound="-2"
+        eType="ecore:EClass _0.ecore#//LangStringsT" volatile="true" transient="true"
+        derived="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="preferredName"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="shortName" unique="false"
+        upperBound="-2" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"
+        volatile="true" transient="true" derived="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="shortName"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="sourceOfDefinition" upperBound="-2"
+        eType="ecore:EClass _0.ecore#//LangStringsT" volatile="true" transient="true"
+        derived="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="sourceOfDefinition"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="symbol" unique="false"
+        upperBound="-2" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"
+        volatile="true" transient="true" derived="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="symbol"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="unit" unique="false" upperBound="-2"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String" volatile="true"
+        transient="true" derived="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="unit"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="unitId" upperBound="-2"
+        eType="ecore:EClass _0.ecore#//ReferenceT" volatile="true" transient="true"
+        derived="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="unitId"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="valueFormat" unique="false"
+        upperBound="-2" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String"
+        volatile="true" transient="true" derived="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="valueFormat"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="valueList" upperBound="-2"
+        eType="#//ValueListT" volatile="true" transient="true" derived="true" containment="true"
+        resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="valueList"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="valueType" upperBound="-2"
+        eType="#//ValueListT" volatile="true" transient="true" derived="true" containment="true"
+        resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="valueType"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-contentTypes.genmodel b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-contentTypes.genmodel
new file mode 100644
index 0000000..c61e875
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-contentTypes.genmodel
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.papyrus.aas.import2papyrus/src" modelPluginID="org.eclipse.papyrus.aas.import2papyrus"
+    modelName="Opc-contentTypes" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+    importerID="org.eclipse.xsd.ecore.importer" complianceLevel="5.0" copyrightFields="false"
+    operationReflection="true" importOrganizing="true">
+  <foreignModel>opc-contentTypes.xsd</foreignModel>
+  <genPackages prefix="Types" basePackage="org.openxmlformats.schemas.package_._2006.content"
+      resource="XML" disposableProviderFactory="true" ecorePackage="types.ecore#/">
+    <genDataTypes ecoreDataType="types.ecore#//STContentType"/>
+    <genDataTypes ecoreDataType="types.ecore#//STExtension"/>
+    <genClasses ecoreClass="types.ecore#//CTDefault">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute types.ecore#//CTDefault/contentType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute types.ecore#//CTDefault/extension"/>
+    </genClasses>
+    <genClasses ecoreClass="types.ecore#//CTOverride">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute types.ecore#//CTOverride/contentType"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute types.ecore#//CTOverride/partName"/>
+    </genClasses>
+    <genClasses ecoreClass="types.ecore#//CTTypes">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EAttribute types.ecore#//CTTypes/group"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference types.ecore#//CTTypes/default"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference types.ecore#//CTTypes/override"/>
+    </genClasses>
+    <genClasses ecoreClass="types.ecore#//DocumentRoot">
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute types.ecore#//DocumentRoot/mixed"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference types.ecore#//DocumentRoot/xMLNSPrefixMap"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference types.ecore#//DocumentRoot/xSISchemaLocation"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference types.ecore#//DocumentRoot/default"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference types.ecore#//DocumentRoot/override"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference types.ecore#//DocumentRoot/types"/>
+    </genClasses>
+  </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-contentTypes.xsd b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-contentTypes.xsd
new file mode 100644
index 0000000..a6de9d2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-contentTypes.xsd
@@ -0,0 +1,42 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<xs:schema xmlns="http://schemas.openxmlformats.org/package/2006/content-types"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema"
+  targetNamespace="http://schemas.openxmlformats.org/package/2006/content-types"
+  elementFormDefault="qualified" attributeFormDefault="unqualified" blockDefault="#all">
+
+  <xs:element name="Types" type="CT_Types"/>
+  <xs:element name="Default" type="CT_Default"/>
+  <xs:element name="Override" type="CT_Override"/>
+
+  <xs:complexType name="CT_Types">
+    <xs:choice minOccurs="0" maxOccurs="unbounded">
+      <xs:element ref="Default"/>
+      <xs:element ref="Override"/>
+    </xs:choice>
+  </xs:complexType>
+
+  <xs:complexType name="CT_Default">
+    <xs:attribute name="Extension" type="ST_Extension" use="required"/>
+    <xs:attribute name="ContentType" type="ST_ContentType" use="required"/>
+  </xs:complexType>
+
+  <xs:complexType name="CT_Override">
+    <xs:attribute name="ContentType" type="ST_ContentType" use="required"/>
+    <xs:attribute name="PartName" type="xs:anyURI" use="required"/>
+  </xs:complexType>
+
+  <xs:simpleType name="ST_ContentType">
+    <xs:restriction base="xs:string">
+      <xs:pattern
+        value="(((([\p{IsBasicLatin}-[\p{Cc}&#127;\(\)&lt;&gt;@,;:\\&quot;/\[\]\?=\{\}\s\t]])+))/((([\p{IsBasicLatin}-[\p{Cc}&#127;\(\)&lt;&gt;@,;:\\&quot;/\[\]\?=\{\}\s\t]])+))((\s+)*;(\s+)*(((([\p{IsBasicLatin}-[\p{Cc}&#127;\(\)&lt;&gt;@,;:\\&quot;/\[\]\?=\{\}\s\t]])+))=((([\p{IsBasicLatin}-[\p{Cc}&#127;\(\)&lt;&gt;@,;:\\&quot;/\[\]\?=\{\}\s\t]])+)|(&quot;(([\p{IsLatin-1Supplement}\p{IsBasicLatin}-[\p{Cc}&#127;&quot;\n\r]]|(\s+))|(\\[\p{IsBasicLatin}]))*&quot;))))*)"
+      />
+    </xs:restriction>
+  </xs:simpleType>
+
+  <xs:simpleType name="ST_Extension">
+    <xs:restriction base="xs:string">
+      <xs:pattern
+        value="([!$&amp;'\(\)\*\+,:=]|(%[0-9a-fA-F][0-9a-fA-F])|[:@]|[a-zA-Z0-9\-_~])+"/>
+    </xs:restriction>
+  </xs:simpleType>
+</xs:schema>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-coreProperties.xsd b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-coreProperties.xsd
new file mode 100644
index 0000000..10e978b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-coreProperties.xsd
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema targetNamespace="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"
+  xmlns="http://schemas.openxmlformats.org/package/2006/metadata/core-properties"
+  xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:dc="http://purl.org/dc/elements/1.1/"
+  xmlns:dcterms="http://purl.org/dc/terms/" elementFormDefault="qualified" blockDefault="#all">
+
+  <xs:import namespace="http://purl.org/dc/elements/1.1/"
+    schemaLocation="http://dublincore.org/schemas/xmls/qdc/2003/04/02/dc.xsd"/>
+  <xs:import namespace="http://purl.org/dc/terms/"
+    schemaLocation="http://dublincore.org/schemas/xmls/qdc/2003/04/02/dcterms.xsd"/>
+  <xs:import id="xml" namespace="http://www.w3.org/XML/1998/namespace"/>
+
+  <xs:element name="coreProperties" type="CT_CoreProperties"/>
+
+  <xs:complexType name="CT_CoreProperties">
+    <xs:all>
+      <xs:element name="category" minOccurs="0" maxOccurs="1" type="xs:string"/>
+      <xs:element name="contentStatus" minOccurs="0" maxOccurs="1" type="xs:string"/>
+      <xs:element ref="dcterms:created" minOccurs="0" maxOccurs="1"/>
+      <xs:element ref="dc:creator" minOccurs="0" maxOccurs="1"/>
+      <xs:element ref="dc:description" minOccurs="0" maxOccurs="1"/>
+      <xs:element ref="dc:identifier" minOccurs="0" maxOccurs="1"/>
+      <xs:element name="keywords" minOccurs="0" maxOccurs="1" type="CT_Keywords"/>
+      <xs:element ref="dc:language" minOccurs="0" maxOccurs="1"/>
+      <xs:element name="lastModifiedBy" minOccurs="0" maxOccurs="1" type="xs:string"/>
+      <xs:element name="lastPrinted" minOccurs="0" maxOccurs="1" type="xs:dateTime"/>
+      <xs:element ref="dcterms:modified" minOccurs="0" maxOccurs="1"/>
+      <xs:element name="revision" minOccurs="0" maxOccurs="1" type="xs:string"/>
+      <xs:element ref="dc:subject" minOccurs="0" maxOccurs="1"/>
+      <xs:element ref="dc:title" minOccurs="0" maxOccurs="1"/>
+      <xs:element name="version" minOccurs="0" maxOccurs="1" type="xs:string"/>
+    </xs:all>
+  </xs:complexType>
+
+  <xs:complexType name="CT_Keywords" mixed="true">
+    <xs:sequence>
+      <xs:element name="value" minOccurs="0" maxOccurs="unbounded" type="CT_Keyword"/>
+    </xs:sequence>
+    <xs:attribute ref="xml:lang" use="optional"/>
+  </xs:complexType>
+
+  <xs:complexType name="CT_Keyword">
+    <xs:simpleContent>
+      <xs:extension base="xs:string">
+        <xs:attribute ref="xml:lang" use="optional"/>
+      </xs:extension>
+    </xs:simpleContent>
+  </xs:complexType>
+
+</xs:schema>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-digSig.genmodel b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-digSig.genmodel
new file mode 100644
index 0000000..833b067
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-digSig.genmodel
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.papyrus.aas.import2papyrus/src" modelPluginID="org.eclipse.papyrus.aas.import2papyrus"
+    modelName="Opc-digSig" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+    importerID="org.eclipse.xsd.ecore.importer" complianceLevel="5.0" copyrightFields="false"
+    operationReflection="true" importOrganizing="true">
+  <foreignModel>opc-digSig.xsd</foreignModel>
+  <genPackages prefix="Signature" basePackage="org.openxmlformats.schemas.package_._2006.digital"
+      resource="XML" disposableProviderFactory="true" ecorePackage="signature.ecore#/">
+    <genDataTypes ecoreDataType="signature.ecore#//STFormat"/>
+    <genDataTypes ecoreDataType="signature.ecore#//STValue"/>
+    <genClasses ecoreClass="signature.ecore#//CTRelationshipReference">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute signature.ecore#//CTRelationshipReference/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute signature.ecore#//CTRelationshipReference/sourceId"/>
+    </genClasses>
+    <genClasses ecoreClass="signature.ecore#//CTRelationshipsGroupReference">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute signature.ecore#//CTRelationshipsGroupReference/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute signature.ecore#//CTRelationshipsGroupReference/sourceType"/>
+    </genClasses>
+    <genClasses ecoreClass="signature.ecore#//CTSignatureTime">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute signature.ecore#//CTSignatureTime/format"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute signature.ecore#//CTSignatureTime/value"/>
+    </genClasses>
+    <genClasses ecoreClass="signature.ecore#//DocumentRoot">
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute signature.ecore#//DocumentRoot/mixed"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference signature.ecore#//DocumentRoot/xMLNSPrefixMap"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference signature.ecore#//DocumentRoot/xSISchemaLocation"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference signature.ecore#//DocumentRoot/relationshipReference"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference signature.ecore#//DocumentRoot/relationshipsGroupReference"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference signature.ecore#//DocumentRoot/signatureTime"/>
+    </genClasses>
+  </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-digSig.xsd b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-digSig.xsd
new file mode 100644
index 0000000..4248bf7
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-digSig.xsd
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns="http://schemas.openxmlformats.org/package/2006/digital-signature"
+  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+  targetNamespace="http://schemas.openxmlformats.org/package/2006/digital-signature"
+  elementFormDefault="qualified" attributeFormDefault="unqualified" blockDefault="#all">
+
+  <xsd:element name="SignatureTime" type="CT_SignatureTime"/>
+  <xsd:element name="RelationshipReference" type="CT_RelationshipReference"/>
+  <xsd:element name="RelationshipsGroupReference" type="CT_RelationshipsGroupReference"/>
+
+  <xsd:complexType name="CT_SignatureTime">
+    <xsd:sequence>
+      <xsd:element name="Format" type="ST_Format"/>
+      <xsd:element name="Value" type="ST_Value"/>
+    </xsd:sequence>
+  </xsd:complexType>
+
+  <xsd:complexType name="CT_RelationshipReference">
+    <xsd:simpleContent>
+      <xsd:extension base="xsd:string">
+        <xsd:attribute name="SourceId" type="xsd:string" use="required"/>
+      </xsd:extension>
+    </xsd:simpleContent>
+  </xsd:complexType>
+
+  <xsd:complexType name="CT_RelationshipsGroupReference">
+    <xsd:simpleContent>
+      <xsd:extension base="xsd:string">
+        <xsd:attribute name="SourceType" type="xsd:anyURI" use="required"/>
+      </xsd:extension>
+    </xsd:simpleContent>
+  </xsd:complexType>
+
+  <xsd:simpleType name="ST_Format">
+    <xsd:restriction base="xsd:string">
+      <xsd:pattern
+        value="(YYYY)|(YYYY-MM)|(YYYY-MM-DD)|(YYYY-MM-DDThh:mmTZD)|(YYYY-MM-DDThh:mm:ssTZD)|(YYYY-MM-DDThh:mm:ss.sTZD)"
+      />
+    </xsd:restriction>
+  </xsd:simpleType>
+
+  <xsd:simpleType name="ST_Value">
+    <xsd:restriction base="xsd:string">
+      <xsd:pattern
+        value="(([0-9][0-9][0-9][0-9]))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2))))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2)))-((0[1-9])|(1[0-9])|(2[0-9])|(3(0|1))))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2)))-((0[1-9])|(1[0-9])|(2[0-9])|(3(0|1)))T((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9]))(((\+|-)((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])))|Z))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2)))-((0[1-9])|(1[0-9])|(2[0-9])|(3(0|1)))T((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9]))(((\+|-)((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])))|Z))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2)))-((0[1-9])|(1[0-9])|(2[0-9])|(3(0|1)))T((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])):(((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9]))\.[0-9])(((\+|-)((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])))|Z))"
+      />
+    </xsd:restriction>
+  </xsd:simpleType>
+</xsd:schema>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-relationships.genmodel b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-relationships.genmodel
new file mode 100644
index 0000000..9b13119
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-relationships.genmodel
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
+    xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/org.eclipse.papyrus.aas.import2papyrus/src" modelPluginID="org.eclipse.papyrus.aas.import2papyrus"
+    modelName="Opc-relationships" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+    importerID="org.eclipse.xsd.ecore.importer" complianceLevel="5.0" copyrightFields="false"
+    operationReflection="true" importOrganizing="true">
+  <foreignModel>opc-relationships.xsd</foreignModel>
+  <genPackages prefix="Relationships" basePackage="org.openxmlformats.schemas.package_._2006"
+      resource="XML" disposableProviderFactory="true" ecorePackage="relationships.ecore#/">
+    <genEnums typeSafeEnumCompatible="false" ecoreEnum="relationships.ecore#//STTargetMode">
+      <genEnumLiterals ecoreEnumLiteral="relationships.ecore#//STTargetMode/External"/>
+      <genEnumLiterals ecoreEnumLiteral="relationships.ecore#//STTargetMode/Internal"/>
+    </genEnums>
+    <genDataTypes ecoreDataType="relationships.ecore#//STTargetModeObject"/>
+    <genClasses ecoreClass="relationships.ecore#//CTRelationship">
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute relationships.ecore#//CTRelationship/value"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute relationships.ecore#//CTRelationship/id"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute relationships.ecore#//CTRelationship/target"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute relationships.ecore#//CTRelationship/targetMode"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute relationships.ecore#//CTRelationship/type"/>
+    </genClasses>
+    <genClasses ecoreClass="relationships.ecore#//CTRelationships">
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference relationships.ecore#//CTRelationships/relationship"/>
+    </genClasses>
+    <genClasses ecoreClass="relationships.ecore#//DocumentRoot">
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EAttribute relationships.ecore#//DocumentRoot/mixed"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference relationships.ecore#//DocumentRoot/xMLNSPrefixMap"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference relationships.ecore#//DocumentRoot/xSISchemaLocation"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference relationships.ecore#//DocumentRoot/relationship"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference relationships.ecore#//DocumentRoot/relationships"/>
+    </genClasses>
+  </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-relationships.xsd b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-relationships.xsd
new file mode 100644
index 0000000..5649746
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/opc-relationships.xsd
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<xsd:schema xmlns="http://schemas.openxmlformats.org/package/2006/relationships"
+  xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+  targetNamespace="http://schemas.openxmlformats.org/package/2006/relationships"
+  elementFormDefault="qualified" attributeFormDefault="unqualified" blockDefault="#all">
+
+  <xsd:element name="Relationships" type="CT_Relationships"/>
+  <xsd:element name="Relationship" type="CT_Relationship"/>
+
+  <xsd:complexType name="CT_Relationships">
+    <xsd:sequence>
+      <xsd:element ref="Relationship" minOccurs="0" maxOccurs="unbounded"/>
+    </xsd:sequence>
+  </xsd:complexType>
+
+  <xsd:complexType name="CT_Relationship">
+    <xsd:simpleContent>
+      <xsd:extension base="xsd:string">
+        <xsd:attribute name="TargetMode" type="ST_TargetMode" use="optional"/>
+        <xsd:attribute name="Target" type="xsd:anyURI" use="required"/>
+        <xsd:attribute name="Type" type="xsd:anyURI" use="required"/>
+        <xsd:attribute name="Id" type="xsd:ID" use="required"/>
+      </xsd:extension>
+    </xsd:simpleContent>
+  </xsd:complexType>
+
+  <xsd:simpleType name="ST_TargetMode">
+    <xsd:restriction base="xsd:string">
+      <xsd:enumeration value="External"/>
+      <xsd:enumeration value="Internal"/>
+    </xsd:restriction>
+  </xsd:simpleType>
+</xsd:schema>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/relationships.ecore b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/relationships.ecore
new file mode 100644
index 0000000..1c30acb
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/relationships.ecore
@@ -0,0 +1,118 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="relationships" nsURI="http://schemas.openxmlformats.org/package/2006/relationships"
+    nsPrefix="relationships">
+  <eClassifiers xsi:type="ecore:EClass" name="CTRelationship">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="CT_Relationship"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//ID"
+        iD="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="Id"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="target" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//AnyURI">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="Target"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="targetMode" eType="#//STTargetMode"
+        unsettable="true">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="TargetMode"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//AnyURI">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="Type"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CTRelationships">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="CT_Relationships"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="relationship" upperBound="-1"
+        eType="#//CTRelationship" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Relationship"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DocumentRoot">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value=""/>
+      <details key="kind" value="mixed"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="elementWildcard"/>
+        <details key="name" value=":mixed"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xMLNSPrefixMap" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xmlns:prefix"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xSISchemaLocation" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xsi:schemaLocation"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="relationship" upperBound="-2"
+        eType="#//CTRelationship" volatile="true" transient="true" derived="true"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Relationship"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="relationships" upperBound="-2"
+        eType="#//CTRelationships" volatile="true" transient="true" derived="true"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Relationships"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="STTargetMode">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="ST_TargetMode"/>
+    </eAnnotations>
+    <eLiterals name="External"/>
+    <eLiterals name="Internal" value="1"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="STTargetModeObject" instanceClassName="org.eclipse.emf.common.util.Enumerator">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="ST_TargetMode:Object"/>
+      <details key="baseType" value="ST_TargetMode"/>
+    </eAnnotations>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/signature.ecore b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/signature.ecore
new file mode 100644
index 0000000..a01f840
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/signature.ecore
@@ -0,0 +1,134 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="signature" nsURI="http://schemas.openxmlformats.org/package/2006/digital-signature"
+    nsPrefix="signature">
+  <eClassifiers xsi:type="ecore:EClass" name="CTRelationshipReference">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="CT_RelationshipReference"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sourceId" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="SourceId"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CTRelationshipsGroupReference">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="CT_RelationshipsGroupReference"/>
+      <details key="kind" value="simple"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//String">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="name" value=":0"/>
+        <details key="kind" value="simple"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="sourceType" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//AnyURI">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="SourceType"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CTSignatureTime">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="CT_SignatureTime"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="format" lowerBound="1"
+        eType="#//STFormat">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Format"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" lowerBound="1" eType="#//STValue">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Value"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DocumentRoot">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value=""/>
+      <details key="kind" value="mixed"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="elementWildcard"/>
+        <details key="name" value=":mixed"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xMLNSPrefixMap" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xmlns:prefix"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xSISchemaLocation" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xsi:schemaLocation"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="relationshipReference"
+        upperBound="-2" eType="#//CTRelationshipReference" volatile="true" transient="true"
+        derived="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="RelationshipReference"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="relationshipsGroupReference"
+        upperBound="-2" eType="#//CTRelationshipsGroupReference" volatile="true" transient="true"
+        derived="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="RelationshipsGroupReference"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="signatureTime" upperBound="-2"
+        eType="#//CTSignatureTime" volatile="true" transient="true" derived="true"
+        containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="SignatureTime"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="STFormat" instanceClassName="java.lang.String">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="ST_Format"/>
+      <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#string"/>
+      <details key="pattern" value="(YYYY)|(YYYY-MM)|(YYYY-MM-DD)|(YYYY-MM-DDThh:mmTZD)|(YYYY-MM-DDThh:mm:ssTZD)|(YYYY-MM-DDThh:mm:ss.sTZD)"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="STValue" instanceClassName="java.lang.String">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="ST_Value"/>
+      <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#string"/>
+      <details key="pattern" value="(([0-9][0-9][0-9][0-9]))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2))))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2)))-((0[1-9])|(1[0-9])|(2[0-9])|(3(0|1))))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2)))-((0[1-9])|(1[0-9])|(2[0-9])|(3(0|1)))T((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9]))(((\+|-)((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])))|Z))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2)))-((0[1-9])|(1[0-9])|(2[0-9])|(3(0|1)))T((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9]))(((\+|-)((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])))|Z))|(([0-9][0-9][0-9][0-9])-((0[1-9])|(1(0|1|2)))-((0[1-9])|(1[0-9])|(2[0-9])|(3(0|1)))T((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])):(((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9]))\.[0-9])(((\+|-)((0[0-9])|(1[0-9])|(2(0|1|2|3))):((0[0-9])|(1[0-9])|(2[0-9])|(3[0-9])|(4[0-9])|(5[0-9])))|Z))"/>
+    </eAnnotations>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/types.ecore b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/types.ecore
new file mode 100644
index 0000000..720f72e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/resources/types.ecore
@@ -0,0 +1,148 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="types" nsURI="http://schemas.openxmlformats.org/package/2006/content-types"
+    nsPrefix="types">
+  <eClassifiers xsi:type="ecore:EClass" name="CTDefault">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="CT_Default"/>
+      <details key="kind" value="empty"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="contentType" lowerBound="1"
+        eType="#//STContentType">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="ContentType"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="extension" lowerBound="1"
+        eType="#//STExtension">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="Extension"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CTOverride">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="CT_Override"/>
+      <details key="kind" value="empty"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="contentType" lowerBound="1"
+        eType="#//STContentType">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="ContentType"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="partName" lowerBound="1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2003/XMLType#//AnyURI">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="PartName"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="CTTypes">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="CT_Types"/>
+      <details key="kind" value="elementOnly"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="group" unique="false" upperBound="-1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="group"/>
+        <details key="name" value="group:0"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="default" upperBound="-1"
+        eType="#//CTDefault" volatile="true" transient="true" derived="true" containment="true"
+        resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Default"/>
+        <details key="namespace" value="##targetNamespace"/>
+        <details key="group" value="#group:0"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="override" upperBound="-1"
+        eType="#//CTOverride" volatile="true" transient="true" derived="true" containment="true"
+        resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Override"/>
+        <details key="namespace" value="##targetNamespace"/>
+        <details key="group" value="#group:0"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DocumentRoot">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value=""/>
+      <details key="kind" value="mixed"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mixed" unique="false" upperBound="-1"
+        eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFeatureMapEntry">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="elementWildcard"/>
+        <details key="name" value=":mixed"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xMLNSPrefixMap" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xmlns:prefix"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="xSISchemaLocation" upperBound="-1"
+        eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EStringToStringMapEntry"
+        transient="true" containment="true" resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="attribute"/>
+        <details key="name" value="xsi:schemaLocation"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="default" upperBound="-2"
+        eType="#//CTDefault" volatile="true" transient="true" derived="true" containment="true"
+        resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Default"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="override" upperBound="-2"
+        eType="#//CTOverride" volatile="true" transient="true" derived="true" containment="true"
+        resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Override"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="types" upperBound="-2"
+        eType="#//CTTypes" volatile="true" transient="true" derived="true" containment="true"
+        resolveProxies="false">
+      <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+        <details key="kind" value="element"/>
+        <details key="name" value="Types"/>
+        <details key="namespace" value="##targetNamespace"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="STContentType" instanceClassName="java.lang.String">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="ST_ContentType"/>
+      <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#string"/>
+      <details key="pattern" value="(((([\p{IsBasicLatin}-[\p{Cc}\(\)&lt;>@,;:\\&quot;/\[\]\?=\{\}\s\t]])+))/((([\p{IsBasicLatin}-[\p{Cc}\(\)&lt;>@,;:\\&quot;/\[\]\?=\{\}\s\t]])+))((\s+)*;(\s+)*(((([\p{IsBasicLatin}-[\p{Cc}\(\)&lt;>@,;:\\&quot;/\[\]\?=\{\}\s\t]])+))=((([\p{IsBasicLatin}-[\p{Cc}\(\)&lt;>@,;:\\&quot;/\[\]\?=\{\}\s\t]])+)|(&quot;(([\p{IsLatin-1Supplement}\p{IsBasicLatin}-[\p{Cc}&quot;\n\r]]|(\s+))|(\\[\p{IsBasicLatin}]))*&quot;))))*)"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EDataType" name="STExtension" instanceClassName="java.lang.String">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="name" value="ST_Extension"/>
+      <details key="baseType" value="http://www.eclipse.org/emf/2003/XMLType#string"/>
+      <details key="pattern" value="([!$&amp;'\(\)\*\+,:=]|(%25[0-9a-fA-F][0-9a-fA-F])|[:@]|[a-zA-Z0-9\-_~])+"/>
+    </eAnnotations>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AasenvT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AasenvT.java
new file mode 100644
index 0000000..81a8610
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AasenvT.java
@@ -0,0 +1,134 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Aasenv T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.AasenvT#getAssetAdministrationShells <em>Asset Administration Shells</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AasenvT#getAssets <em>Assets</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AasenvT#getSubmodels <em>Submodels</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AasenvT#getConceptDescriptions <em>Concept Descriptions</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getAasenvT()
+ * @model extendedMetaData="name='aasenv_t' kind='elementOnly'"
+ * @generated
+ */
+public interface AasenvT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Asset Administration Shells</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Asset Administration Shells</em>' containment reference.
+	 * @see #setAssetAdministrationShells(AssetAdministrationShellsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAasenvT_AssetAdministrationShells()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='assetAdministrationShells' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	AssetAdministrationShellsT getAssetAdministrationShells();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AasenvT#getAssetAdministrationShells <em>Asset Administration Shells</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Asset Administration Shells</em>' containment reference.
+	 * @see #getAssetAdministrationShells()
+	 * @generated
+	 */
+	void setAssetAdministrationShells(AssetAdministrationShellsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Assets</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Assets</em>' containment reference.
+	 * @see #setAssets(AssetsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAasenvT_Assets()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='assets' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	AssetsT getAssets();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AasenvT#getAssets <em>Assets</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Assets</em>' containment reference.
+	 * @see #getAssets()
+	 * @generated
+	 */
+	void setAssets(AssetsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Submodels</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Submodels</em>' containment reference.
+	 * @see #setSubmodels(SubmodelsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAasenvT_Submodels()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='submodels' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SubmodelsT getSubmodels();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AasenvT#getSubmodels <em>Submodels</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Submodels</em>' containment reference.
+	 * @see #getSubmodels()
+	 * @generated
+	 */
+	void setSubmodels(SubmodelsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Concept Descriptions</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concept Descriptions</em>' containment reference.
+	 * @see #setConceptDescriptions(ConceptDescriptionsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAasenvT_ConceptDescriptions()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='conceptDescriptions' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ConceptDescriptionsT getConceptDescriptions();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AasenvT#getConceptDescriptions <em>Concept Descriptions</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Concept Descriptions</em>' containment reference.
+	 * @see #getConceptDescriptions()
+	 * @generated
+	 */
+	void setConceptDescriptions(ConceptDescriptionsT value);
+
+} // AasenvT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AdministrationT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AdministrationT.java
new file mode 100644
index 0000000..6d71a13
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AdministrationT.java
@@ -0,0 +1,86 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Administration T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.AdministrationT#getVersion <em>Version</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AdministrationT#getRevision <em>Revision</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getAdministrationT()
+ * @model extendedMetaData="name='administration_t' kind='elementOnly'"
+ * @generated
+ */
+public interface AdministrationT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Version</em>' attribute.
+	 * @see #setVersion(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getAdministrationT_Version()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='version' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getVersion();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AdministrationT#getVersion <em>Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Version</em>' attribute.
+	 * @see #getVersion()
+	 * @generated
+	 */
+	void setVersion(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Revision</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Revision</em>' attribute.
+	 * @see #setRevision(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getAdministrationT_Revision()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='revision' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getRevision();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AdministrationT#getRevision <em>Revision</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Revision</em>' attribute.
+	 * @see #getRevision()
+	 * @generated
+	 */
+	void setRevision(String value);
+
+} // AdministrationT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetAdministrationShellT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetAdministrationShellT.java
new file mode 100644
index 0000000..2200f60
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetAdministrationShellT.java
@@ -0,0 +1,318 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Asset Administration Shell T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getIdentification <em>Identification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getAdministration <em>Administration</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getDerivedFrom <em>Derived From</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getAssetRef <em>Asset Ref</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getSubmodelRefs <em>Submodel Refs</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getViews <em>Views</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getConceptDictionaries <em>Concept Dictionaries</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT()
+ * @model extendedMetaData="name='assetAdministrationShell_t' kind='elementOnly'"
+ * @generated
+ */
+public interface AssetAdministrationShellT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Short</em>' containment reference.
+	 * @see #setIdShort(IdShortT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_IdShort()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='idShort' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdShortT getIdShort();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getIdShort <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Short</em>' containment reference.
+	 * @see #getIdShort()
+	 * @generated
+	 */
+	void setIdShort(IdShortT value);
+
+	/**
+	 * Returns the value of the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Category</em>' attribute.
+	 * @see #setCategory(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_Category()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='category' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getCategory();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getCategory <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Category</em>' attribute.
+	 * @see #getCategory()
+	 * @generated
+	 */
+	void setCategory(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(LangStringsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_Description()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='description' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getDescription();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' attribute.
+	 * @see #setParent(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_Parent()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='parent' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getParent();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getParent <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' attribute.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Identification</em>' containment reference.
+	 * @see #setIdentification(IdentificationT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_Identification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='identification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdentificationT getIdentification();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getIdentification <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Identification</em>' containment reference.
+	 * @see #getIdentification()
+	 * @generated
+	 */
+	void setIdentification(IdentificationT value);
+
+	/**
+	 * Returns the value of the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Administration</em>' containment reference.
+	 * @see #setAdministration(AdministrationT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_Administration()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='administration' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	AdministrationT getAdministration();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getAdministration <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Administration</em>' containment reference.
+	 * @see #getAdministration()
+	 * @generated
+	 */
+	void setAdministration(AdministrationT value);
+
+	/**
+	 * Returns the value of the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embedded Data Specification</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_EmbeddedDataSpecification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='embeddedDataSpecification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification();
+
+	/**
+	 * Returns the value of the '<em><b>Derived From</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Derived From</em>' containment reference.
+	 * @see #setDerivedFrom(ReferenceT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_DerivedFrom()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='derivedFrom' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getDerivedFrom();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getDerivedFrom <em>Derived From</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Derived From</em>' containment reference.
+	 * @see #getDerivedFrom()
+	 * @generated
+	 */
+	void setDerivedFrom(ReferenceT value);
+
+	/**
+	 * Returns the value of the '<em><b>Asset Ref</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Asset Ref</em>' containment reference.
+	 * @see #setAssetRef(ReferenceT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_AssetRef()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='assetRef' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getAssetRef();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getAssetRef <em>Asset Ref</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Asset Ref</em>' containment reference.
+	 * @see #getAssetRef()
+	 * @generated
+	 */
+	void setAssetRef(ReferenceT value);
+
+	/**
+	 * Returns the value of the '<em><b>Submodel Refs</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Submodel Refs</em>' containment reference.
+	 * @see #setSubmodelRefs(SubmodelRefsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_SubmodelRefs()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='submodelRefs' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SubmodelRefsT getSubmodelRefs();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getSubmodelRefs <em>Submodel Refs</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Submodel Refs</em>' containment reference.
+	 * @see #getSubmodelRefs()
+	 * @generated
+	 */
+	void setSubmodelRefs(SubmodelRefsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Views</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Views</em>' containment reference.
+	 * @see #setViews(ViewsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_Views()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='views' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ViewsT getViews();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getViews <em>Views</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Views</em>' containment reference.
+	 * @see #getViews()
+	 * @generated
+	 */
+	void setViews(ViewsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Concept Dictionaries</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concept Dictionaries</em>' containment reference.
+	 * @see #setConceptDictionaries(ConceptDictionariesT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellT_ConceptDictionaries()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='conceptDictionaries' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ConceptDictionariesT getConceptDictionaries();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getConceptDictionaries <em>Concept Dictionaries</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Concept Dictionaries</em>' containment reference.
+	 * @see #getConceptDictionaries()
+	 * @generated
+	 */
+	void setConceptDictionaries(ConceptDictionariesT value);
+
+} // AssetAdministrationShellT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetAdministrationShellsT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetAdministrationShellsT.java
new file mode 100644
index 0000000..3c320a6
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetAdministrationShellsT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Asset Administration Shells T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetAdministrationShellsT#getAssetAdministrationShell <em>Asset Administration Shell</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellsT()
+ * @model extendedMetaData="name='assetAdministrationShells_t' kind='elementOnly'"
+ * @generated
+ */
+public interface AssetAdministrationShellsT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Asset Administration Shell</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.AssetAdministrationShellT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Asset Administration Shell</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetAdministrationShellsT_AssetAdministrationShell()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='assetAdministrationShell' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<AssetAdministrationShellT> getAssetAdministrationShell();
+
+} // AssetAdministrationShellsT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetT.java
new file mode 100644
index 0000000..c87504b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetT.java
@@ -0,0 +1,276 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Asset T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetT#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetT#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetT#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetT#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetT#getIdentification <em>Identification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetT#getAdministration <em>Administration</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetT#getKind <em>Kind</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetT#getAssetIdentificationModelRef <em>Asset Identification Model Ref</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getAssetT()
+ * @model extendedMetaData="name='asset_t' kind='elementOnly'"
+ * @generated
+ */
+public interface AssetT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Short</em>' containment reference.
+	 * @see #setIdShort(IdShortT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetT_IdShort()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='idShort' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdShortT getIdShort();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetT#getIdShort <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Short</em>' containment reference.
+	 * @see #getIdShort()
+	 * @generated
+	 */
+	void setIdShort(IdShortT value);
+
+	/**
+	 * Returns the value of the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Category</em>' attribute.
+	 * @see #setCategory(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetT_Category()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='category' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getCategory();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetT#getCategory <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Category</em>' attribute.
+	 * @see #getCategory()
+	 * @generated
+	 */
+	void setCategory(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(LangStringsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetT_Description()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='description' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getDescription();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetT#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' attribute.
+	 * @see #setParent(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetT_Parent()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='parent' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getParent();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetT#getParent <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' attribute.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Identification</em>' containment reference.
+	 * @see #setIdentification(IdentificationT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetT_Identification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='identification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdentificationT getIdentification();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetT#getIdentification <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Identification</em>' containment reference.
+	 * @see #getIdentification()
+	 * @generated
+	 */
+	void setIdentification(IdentificationT value);
+
+	/**
+	 * Returns the value of the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Administration</em>' containment reference.
+	 * @see #setAdministration(AdministrationT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetT_Administration()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='administration' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	AdministrationT getAdministration();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetT#getAdministration <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Administration</em>' containment reference.
+	 * @see #getAdministration()
+	 * @generated
+	 */
+	void setAdministration(AdministrationT value);
+
+	/**
+	 * Returns the value of the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embedded Data Specification</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetT_EmbeddedDataSpecification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='embeddedDataSpecification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification();
+
+	/**
+	 * Returns the value of the '<em><b>Kind</b></em>' attribute.
+	 * The literals are from the enumeration {@link io.shell.admin.aas._1._0.KindType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Kind</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @see #isSetKind()
+	 * @see #unsetKind()
+	 * @see #setKind(KindType)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetT_Kind()
+	 * @model unsettable="true"
+	 *        extendedMetaData="kind='element' name='kind' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	KindType getKind();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetT#getKind <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Kind</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @see #isSetKind()
+	 * @see #unsetKind()
+	 * @see #getKind()
+	 * @generated
+	 */
+	void setKind(KindType value);
+
+	/**
+	 * Unsets the value of the '{@link io.shell.admin.aas._1._0.AssetT#getKind <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isSetKind()
+	 * @see #getKind()
+	 * @see #setKind(KindType)
+	 * @generated
+	 */
+	void unsetKind();
+
+	/**
+	 * Returns whether the value of the '{@link io.shell.admin.aas._1._0.AssetT#getKind <em>Kind</em>}' attribute is set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return whether the value of the '<em>Kind</em>' attribute is set.
+	 * @see #unsetKind()
+	 * @see #getKind()
+	 * @see #setKind(KindType)
+	 * @generated
+	 */
+	boolean isSetKind();
+
+	/**
+	 * Returns the value of the '<em><b>Asset Identification Model Ref</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Asset Identification Model Ref</em>' containment reference.
+	 * @see #setAssetIdentificationModelRef(ReferenceT)
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetT_AssetIdentificationModelRef()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='assetIdentificationModelRef' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getAssetIdentificationModelRef();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.AssetT#getAssetIdentificationModelRef <em>Asset Identification Model Ref</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Asset Identification Model Ref</em>' containment reference.
+	 * @see #getAssetIdentificationModelRef()
+	 * @generated
+	 */
+	void setAssetIdentificationModelRef(ReferenceT value);
+
+} // AssetT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetsT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetsT.java
new file mode 100644
index 0000000..71b07ff
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/AssetsT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Assets T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.AssetsT#getAsset <em>Asset</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getAssetsT()
+ * @model extendedMetaData="name='assets_t' kind='elementOnly'"
+ * @generated
+ */
+public interface AssetsT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Asset</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.AssetT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Asset</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getAssetsT_Asset()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='asset' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<AssetT> getAsset();
+
+} // AssetsT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/BlobT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/BlobT.java
new file mode 100644
index 0000000..edba690
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/BlobT.java
@@ -0,0 +1,85 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Blob T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.BlobT#getMimeType <em>Mime Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.BlobT#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getBlobT()
+ * @model extendedMetaData="name='blob_t' kind='elementOnly'"
+ * @generated
+ */
+public interface BlobT extends SubmodelElementAbstractT {
+	/**
+	 * Returns the value of the '<em><b>Mime Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mime Type</em>' attribute.
+	 * @see #setMimeType(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getBlobT_MimeType()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+	 *        extendedMetaData="kind='element' name='mimeType' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getMimeType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.BlobT#getMimeType <em>Mime Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mime Type</em>' attribute.
+	 * @see #getMimeType()
+	 * @generated
+	 */
+	void setMimeType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' containment reference.
+	 * @see #setValue(BlobTypeT)
+	 * @see io.shell.admin.aas._1._0._0Package#getBlobT_Value()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='value' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	BlobTypeT getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.BlobT#getValue <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' containment reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(BlobTypeT value);
+
+} // BlobT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/BlobTypeT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/BlobTypeT.java
new file mode 100644
index 0000000..02a1abc
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/BlobTypeT.java
@@ -0,0 +1,62 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Blob Type T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.BlobTypeT#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getBlobTypeT()
+ * @model extendedMetaData="name='blobType_t' kind='simple'"
+ * @generated
+ */
+public interface BlobTypeT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(byte[])
+	 * @see io.shell.admin.aas._1._0._0Package#getBlobTypeT_Value()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.Base64Binary"
+	 *        extendedMetaData="name=':0' kind='simple'"
+	 * @generated
+	 */
+	byte[] getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.BlobTypeT#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(byte[] value);
+
+} // BlobTypeT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDescriptionT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDescriptionT.java
new file mode 100644
index 0000000..b83a0e7
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDescriptionT.java
@@ -0,0 +1,212 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Concept Description T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getIdentification <em>Identification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getAdministration <em>Administration</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getIsCaseOf <em>Is Case Of</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionT()
+ * @model extendedMetaData="name='conceptDescription_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ConceptDescriptionT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Short</em>' containment reference.
+	 * @see #setIdShort(IdShortT)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionT_IdShort()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='idShort' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdShortT getIdShort();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getIdShort <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Short</em>' containment reference.
+	 * @see #getIdShort()
+	 * @generated
+	 */
+	void setIdShort(IdShortT value);
+
+	/**
+	 * Returns the value of the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Category</em>' attribute.
+	 * @see #setCategory(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionT_Category()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='category' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getCategory();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getCategory <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Category</em>' attribute.
+	 * @see #getCategory()
+	 * @generated
+	 */
+	void setCategory(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(LangStringsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionT_Description()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='description' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getDescription();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' attribute.
+	 * @see #setParent(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionT_Parent()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='parent' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getParent();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getParent <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' attribute.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Identification</em>' containment reference.
+	 * @see #setIdentification(IdentificationT)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionT_Identification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='identification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdentificationT getIdentification();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getIdentification <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Identification</em>' containment reference.
+	 * @see #getIdentification()
+	 * @generated
+	 */
+	void setIdentification(IdentificationT value);
+
+	/**
+	 * Returns the value of the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Administration</em>' containment reference.
+	 * @see #setAdministration(AdministrationT)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionT_Administration()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='administration' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	AdministrationT getAdministration();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getAdministration <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Administration</em>' containment reference.
+	 * @see #getAdministration()
+	 * @generated
+	 */
+	void setAdministration(AdministrationT value);
+
+	/**
+	 * Returns the value of the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embedded Data Specification</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionT_EmbeddedDataSpecification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='embeddedDataSpecification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification();
+
+	/**
+	 * Returns the value of the '<em><b>Is Case Of</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.ReferenceT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Is Case Of</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionT_IsCaseOf()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='isCaseOf' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<ReferenceT> getIsCaseOf();
+
+} // ConceptDescriptionT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDescriptionsRefT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDescriptionsRefT.java
new file mode 100644
index 0000000..afbe2b1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDescriptionsRefT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Concept Descriptions Ref T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionsRefT#getConceptDescriptionRef <em>Concept Description Ref</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionsRefT()
+ * @model extendedMetaData="name='conceptDescriptionsRef_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ConceptDescriptionsRefT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Concept Description Ref</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.ReferenceT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concept Description Ref</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionsRefT_ConceptDescriptionRef()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='conceptDescriptionRef' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<ReferenceT> getConceptDescriptionRef();
+
+} // ConceptDescriptionsRefT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDescriptionsT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDescriptionsT.java
new file mode 100644
index 0000000..74e37ae
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDescriptionsT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Concept Descriptions T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDescriptionsT#getConceptDescription <em>Concept Description</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionsT()
+ * @model extendedMetaData="name='conceptDescriptions_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ConceptDescriptionsT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Concept Description</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.ConceptDescriptionT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concept Description</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDescriptionsT_ConceptDescription()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='conceptDescription' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<ConceptDescriptionT> getConceptDescription();
+
+} // ConceptDescriptionsT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDictionariesT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDictionariesT.java
new file mode 100644
index 0000000..149d9d1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDictionariesT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Concept Dictionaries T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDictionariesT#getConceptDictionary <em>Concept Dictionary</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getConceptDictionariesT()
+ * @model extendedMetaData="name='conceptDictionaries_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ConceptDictionariesT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Concept Dictionary</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.ConceptDictionaryT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concept Dictionary</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDictionariesT_ConceptDictionary()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='conceptDictionary' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<ConceptDictionaryT> getConceptDictionary();
+
+} // ConceptDictionariesT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDictionaryT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDictionaryT.java
new file mode 100644
index 0000000..084f0f2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConceptDictionaryT.java
@@ -0,0 +1,158 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Concept Dictionary T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getConceptDescriptionRefs <em>Concept Description Refs</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getConceptDictionaryT()
+ * @model extendedMetaData="name='conceptDictionary_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ConceptDictionaryT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Short</em>' containment reference.
+	 * @see #setIdShort(IdShortT)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDictionaryT_IdShort()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='idShort' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdShortT getIdShort();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getIdShort <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Short</em>' containment reference.
+	 * @see #getIdShort()
+	 * @generated
+	 */
+	void setIdShort(IdShortT value);
+
+	/**
+	 * Returns the value of the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Category</em>' attribute.
+	 * @see #setCategory(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDictionaryT_Category()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='category' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getCategory();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getCategory <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Category</em>' attribute.
+	 * @see #getCategory()
+	 * @generated
+	 */
+	void setCategory(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(LangStringsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDictionaryT_Description()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='description' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getDescription();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' attribute.
+	 * @see #setParent(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDictionaryT_Parent()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='parent' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getParent();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getParent <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' attribute.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Concept Description Refs</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Concept Description Refs</em>' containment reference.
+	 * @see #setConceptDescriptionRefs(ConceptDescriptionsRefT)
+	 * @see io.shell.admin.aas._1._0._0Package#getConceptDictionaryT_ConceptDescriptionRefs()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='conceptDescriptionRefs' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ConceptDescriptionsRefT getConceptDescriptionRefs();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getConceptDescriptionRefs <em>Concept Description Refs</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Concept Description Refs</em>' containment reference.
+	 * @see #getConceptDescriptionRefs()
+	 * @generated
+	 */
+	void setConceptDescriptionRefs(ConceptDescriptionsRefT value);
+
+} // ConceptDictionaryT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConstraintT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConstraintT.java
new file mode 100644
index 0000000..2d4d71a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ConstraintT.java
@@ -0,0 +1,86 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Constraint T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ConstraintT#getQualifier <em>Qualifier</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ConstraintT#getFormula <em>Formula</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getConstraintT()
+ * @model extendedMetaData="name='constraint_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ConstraintT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Qualifier</em>' containment reference.
+	 * @see #setQualifier(QualifierT)
+	 * @see io.shell.admin.aas._1._0._0Package#getConstraintT_Qualifier()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='qualifier' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	QualifierT getQualifier();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConstraintT#getQualifier <em>Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Qualifier</em>' containment reference.
+	 * @see #getQualifier()
+	 * @generated
+	 */
+	void setQualifier(QualifierT value);
+
+	/**
+	 * Returns the value of the '<em><b>Formula</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Formula</em>' containment reference.
+	 * @see #setFormula(FormulaT)
+	 * @see io.shell.admin.aas._1._0._0Package#getConstraintT_Formula()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='formula' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	FormulaT getFormula();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ConstraintT#getFormula <em>Formula</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Formula</em>' containment reference.
+	 * @see #getFormula()
+	 * @generated
+	 */
+	void setFormula(FormulaT value);
+
+} // ConstraintT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ContainedElementsT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ContainedElementsT.java
new file mode 100644
index 0000000..945ecc8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ContainedElementsT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Contained Elements T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ContainedElementsT#getContainedElementRef <em>Contained Element Ref</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getContainedElementsT()
+ * @model extendedMetaData="name='containedElements_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ContainedElementsT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Contained Element Ref</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.ReferenceT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Contained Element Ref</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getContainedElementsT_ContainedElementRef()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='containedElementRef' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<ReferenceT> getContainedElementRef();
+
+} // ContainedElementsT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/DataSpecificationContentT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/DataSpecificationContentT.java
new file mode 100644
index 0000000..f5e2178
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/DataSpecificationContentT.java
@@ -0,0 +1,64 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Data Specification Content T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.DataSpecificationContentT#getDataSpecificationIEC61360 <em>Data Specification IEC61360</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getDataSpecificationContentT()
+ * @model extendedMetaData="name='dataSpecificationContent_t' kind='elementOnly'"
+ * @generated
+ */
+public interface DataSpecificationContentT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Data Specification IEC61360</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Data Specification IEC61360</em>' containment reference.
+	 * @see #setDataSpecificationIEC61360(DataSpecificationIEC61630T)
+	 * @see io.shell.admin.aas._1._0._0Package#getDataSpecificationContentT_DataSpecificationIEC61360()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='dataSpecificationIEC61360' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	DataSpecificationIEC61630T getDataSpecificationIEC61360();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.DataSpecificationContentT#getDataSpecificationIEC61360 <em>Data Specification IEC61360</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Data Specification IEC61360</em>' containment reference.
+	 * @see #getDataSpecificationIEC61360()
+	 * @generated
+	 */
+	void setDataSpecificationIEC61360(DataSpecificationIEC61630T value);
+
+} // DataSpecificationContentT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/DocumentRoot.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/DocumentRoot.java
new file mode 100644
index 0000000..bf66285
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/DocumentRoot.java
@@ -0,0 +1,134 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EMap;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.util.FeatureMap;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Document Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.DocumentRoot#getMixed <em>Mixed</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.DocumentRoot#getAasenv <em>Aasenv</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.DocumentRoot#getKey <em>Key</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getDocumentRoot()
+ * @model extendedMetaData="name='' kind='mixed'"
+ * @generated
+ */
+public interface DocumentRoot extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Mixed</b></em>' attribute list.
+	 * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mixed</em>' attribute list.
+	 * @see io.shell.admin.aas._1._0._0Package#getDocumentRoot_Mixed()
+	 * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
+	 *        extendedMetaData="kind='elementWildcard' name=':mixed'"
+	 * @generated
+	 */
+	FeatureMap getMixed();
+
+	/**
+	 * Returns the value of the '<em><b>XMLNS Prefix Map</b></em>' map.
+	 * The key is of type {@link java.lang.String},
+	 * and the value is of type {@link java.lang.String},
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>XMLNS Prefix Map</em>' map.
+	 * @see io.shell.admin.aas._1._0._0Package#getDocumentRoot_XMLNSPrefixMap()
+	 * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry&lt;org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString&gt;" transient="true"
+	 *        extendedMetaData="kind='attribute' name='xmlns:prefix'"
+	 * @generated
+	 */
+	EMap<String, String> getXMLNSPrefixMap();
+
+	/**
+	 * Returns the value of the '<em><b>XSI Schema Location</b></em>' map.
+	 * The key is of type {@link java.lang.String},
+	 * and the value is of type {@link java.lang.String},
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>XSI Schema Location</em>' map.
+	 * @see io.shell.admin.aas._1._0._0Package#getDocumentRoot_XSISchemaLocation()
+	 * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry&lt;org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString&gt;" transient="true"
+	 *        extendedMetaData="kind='attribute' name='xsi:schemaLocation'"
+	 * @generated
+	 */
+	EMap<String, String> getXSISchemaLocation();
+
+	/**
+	 * Returns the value of the '<em><b>Aasenv</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Aasenv</em>' containment reference.
+	 * @see #setAasenv(AasenvT)
+	 * @see io.shell.admin.aas._1._0._0Package#getDocumentRoot_Aasenv()
+	 * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='aasenv' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	AasenvT getAasenv();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.DocumentRoot#getAasenv <em>Aasenv</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Aasenv</em>' containment reference.
+	 * @see #getAasenv()
+	 * @generated
+	 */
+	void setAasenv(AasenvT value);
+
+	/**
+	 * Returns the value of the '<em><b>Key</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Key</em>' containment reference.
+	 * @see #setKey(KeyT)
+	 * @see io.shell.admin.aas._1._0._0Package#getDocumentRoot_Key()
+	 * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='key' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	KeyT getKey();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.DocumentRoot#getKey <em>Key</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Key</em>' containment reference.
+	 * @see #getKey()
+	 * @generated
+	 */
+	void setKey(KeyT value);
+
+} // DocumentRoot
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/EmbeddedDataSpecificationT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/EmbeddedDataSpecificationT.java
new file mode 100644
index 0000000..89db785
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/EmbeddedDataSpecificationT.java
@@ -0,0 +1,86 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Embedded Data Specification T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT#getHasDataSpecification <em>Has Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT#getDataSpecificationContent <em>Data Specification Content</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getEmbeddedDataSpecificationT()
+ * @model extendedMetaData="name='embeddedDataSpecification_t' kind='elementOnly'"
+ * @generated
+ */
+public interface EmbeddedDataSpecificationT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Has Data Specification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Has Data Specification</em>' containment reference.
+	 * @see #setHasDataSpecification(ReferenceT)
+	 * @see io.shell.admin.aas._1._0._0Package#getEmbeddedDataSpecificationT_HasDataSpecification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='hasDataSpecification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getHasDataSpecification();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT#getHasDataSpecification <em>Has Data Specification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Has Data Specification</em>' containment reference.
+	 * @see #getHasDataSpecification()
+	 * @generated
+	 */
+	void setHasDataSpecification(ReferenceT value);
+
+	/**
+	 * Returns the value of the '<em><b>Data Specification Content</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Data Specification Content</em>' containment reference.
+	 * @see #setDataSpecificationContent(DataSpecificationContentT)
+	 * @see io.shell.admin.aas._1._0._0Package#getEmbeddedDataSpecificationT_DataSpecificationContent()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='dataSpecificationContent' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	DataSpecificationContentT getDataSpecificationContent();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT#getDataSpecificationContent <em>Data Specification Content</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Data Specification Content</em>' containment reference.
+	 * @see #getDataSpecificationContent()
+	 * @generated
+	 */
+	void setDataSpecificationContent(DataSpecificationContentT value);
+
+} // EmbeddedDataSpecificationT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/EventT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/EventT.java
new file mode 100644
index 0000000..a9189eb
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/EventT.java
@@ -0,0 +1,32 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Event T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getEventT()
+ * @model extendedMetaData="name='event_t' kind='elementOnly'"
+ * @generated
+ */
+public interface EventT extends SubmodelElementAbstractT {
+} // EventT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/FileT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/FileT.java
new file mode 100644
index 0000000..38f809e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/FileT.java
@@ -0,0 +1,85 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>File T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.FileT#getMimeType <em>Mime Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.FileT#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getFileT()
+ * @model extendedMetaData="name='file_t' kind='elementOnly'"
+ * @generated
+ */
+public interface FileT extends SubmodelElementAbstractT {
+	/**
+	 * Returns the value of the '<em><b>Mime Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mime Type</em>' attribute.
+	 * @see #setMimeType(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getFileT_MimeType()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+	 *        extendedMetaData="kind='element' name='mimeType' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getMimeType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.FileT#getMimeType <em>Mime Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Mime Type</em>' attribute.
+	 * @see #getMimeType()
+	 * @generated
+	 */
+	void setMimeType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' containment reference.
+	 * @see #setValue(PathTypeT)
+	 * @see io.shell.admin.aas._1._0._0Package#getFileT_Value()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='value' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	PathTypeT getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.FileT#getValue <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' containment reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(PathTypeT value);
+
+} // FileT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/FormulaT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/FormulaT.java
new file mode 100644
index 0000000..48b0ecd
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/FormulaT.java
@@ -0,0 +1,62 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Formula T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.FormulaT#getDependsOn <em>Depends On</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getFormulaT()
+ * @model extendedMetaData="name='formula_t' kind='elementOnly'"
+ * @generated
+ */
+public interface FormulaT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Depends On</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Depends On</em>' containment reference.
+	 * @see #setDependsOn(ReferencesT)
+	 * @see io.shell.admin.aas._1._0._0Package#getFormulaT_DependsOn()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='dependsOn' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferencesT getDependsOn();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.FormulaT#getDependsOn <em>Depends On</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Depends On</em>' containment reference.
+	 * @see #getDependsOn()
+	 * @generated
+	 */
+	void setDependsOn(ReferencesT value);
+
+} // FormulaT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdPropertyDefinitionT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdPropertyDefinitionT.java
new file mode 100644
index 0000000..1d4ed3e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdPropertyDefinitionT.java
@@ -0,0 +1,86 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Id Property Definition T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.IdPropertyDefinitionT#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.IdPropertyDefinitionT#getIdType <em>Id Type</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getIdPropertyDefinitionT()
+ * @model extendedMetaData="name='idPropertyDefinition_t' kind='simple'"
+ * @generated
+ */
+public interface IdPropertyDefinitionT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getIdPropertyDefinitionT_Value()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="name=':0' kind='simple'"
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.IdPropertyDefinitionT#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 Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Type</em>' attribute.
+	 * @see #setIdType(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getIdPropertyDefinitionT_IdType()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='attribute' name='idType'"
+	 * @generated
+	 */
+	String getIdType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.IdPropertyDefinitionT#getIdType <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Type</em>' attribute.
+	 * @see #getIdType()
+	 * @generated
+	 */
+	void setIdType(String value);
+
+} // IdPropertyDefinitionT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdShortT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdShortT.java
new file mode 100644
index 0000000..96cb449
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdShortT.java
@@ -0,0 +1,62 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Id Short T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.IdShortT#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getIdShortT()
+ * @model extendedMetaData="name='idShort_t' kind='simple'"
+ * @generated
+ */
+public interface IdShortT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getIdShortT_Value()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="name=':0' kind='simple'"
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.IdShortT#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);
+
+} // IdShortT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdTypeType.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdTypeType.java
new file mode 100644
index 0000000..9d35b2d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdTypeType.java
@@ -0,0 +1,267 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Id Type Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0._0Package#getIdTypeType()
+ * @model extendedMetaData="name='idType_._type'"
+ * @generated
+ */
+public enum IdTypeType implements Enumerator {
+	/**
+	 * The '<em><b>Id Short</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #ID_SHORT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ID_SHORT(0, "idShort", "idShort"),
+
+	/**
+	 * The '<em><b>IRDI</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #IRDI_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	IRDI(1, "IRDI", "IRDI"),
+
+	/**
+	 * The '<em><b>URI</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #URI_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	URI(2, "URI", "URI"),
+
+	/**
+	 * The '<em><b>Custom</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #CUSTOM_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CUSTOM(3, "Custom", "Custom");
+
+	/**
+	 * The '<em><b>Id Short</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #ID_SHORT
+	 * @model name="idShort"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ID_SHORT_VALUE = 0;
+
+	/**
+	 * The '<em><b>IRDI</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #IRDI
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int IRDI_VALUE = 1;
+
+	/**
+	 * The '<em><b>URI</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #URI
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int URI_VALUE = 2;
+
+	/**
+	 * The '<em><b>Custom</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #CUSTOM
+	 * @model name="Custom"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CUSTOM_VALUE = 3;
+
+	/**
+	 * An array of all the '<em><b>Id Type Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static final IdTypeType[] VALUES_ARRAY =
+		new IdTypeType[] {
+			ID_SHORT,
+			IRDI,
+			URI,
+			CUSTOM,
+		};
+
+	/**
+	 * A public read-only list of all the '<em><b>Id Type Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final List<IdTypeType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Id Type Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param literal the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdTypeType get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			IdTypeType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Id Type Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param name the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdTypeType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			IdTypeType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Id Type Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdTypeType get(int value) {
+		switch (value) {
+			case ID_SHORT_VALUE: return ID_SHORT;
+			case IRDI_VALUE: return IRDI;
+			case URI_VALUE: return URI;
+			case CUSTOM_VALUE: return CUSTOM;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private IdTypeType(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public int getValue() {
+	  return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+	  return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLiteral() {
+	  return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+	
+} //IdTypeType
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdTypeType1.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdTypeType1.java
new file mode 100644
index 0000000..1a7f10f
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdTypeType1.java
@@ -0,0 +1,244 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Id Type Type1</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0._0Package#getIdTypeType1()
+ * @model extendedMetaData="name='idType_._1_._type'"
+ * @generated
+ */
+public enum IdTypeType1 implements Enumerator {
+	/**
+	 * The '<em><b>URI</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #URI_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	URI(0, "URI", "URI"),
+
+	/**
+	 * The '<em><b>IRDI</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #IRDI_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	IRDI(1, "IRDI", "IRDI"),
+
+	/**
+	 * The '<em><b>Custom</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #CUSTOM_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CUSTOM(2, "Custom", "Custom");
+
+	/**
+	 * The '<em><b>URI</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #URI
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int URI_VALUE = 0;
+
+	/**
+	 * The '<em><b>IRDI</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #IRDI
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int IRDI_VALUE = 1;
+
+	/**
+	 * The '<em><b>Custom</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #CUSTOM
+	 * @model name="Custom"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CUSTOM_VALUE = 2;
+
+	/**
+	 * An array of all the '<em><b>Id Type Type1</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static final IdTypeType1[] VALUES_ARRAY =
+		new IdTypeType1[] {
+			URI,
+			IRDI,
+			CUSTOM,
+		};
+
+	/**
+	 * A public read-only list of all the '<em><b>Id Type Type1</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final List<IdTypeType1> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Id Type Type1</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param literal the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdTypeType1 get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			IdTypeType1 result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Id Type Type1</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param name the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdTypeType1 getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			IdTypeType1 result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Id Type Type1</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdTypeType1 get(int value) {
+		switch (value) {
+			case URI_VALUE: return URI;
+			case IRDI_VALUE: return IRDI;
+			case CUSTOM_VALUE: return CUSTOM;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private IdTypeType1(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public int getValue() {
+	  return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+	  return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLiteral() {
+	  return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+	
+} //IdTypeType1
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdentificationT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdentificationT.java
new file mode 100644
index 0000000..992fcad
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/IdentificationT.java
@@ -0,0 +1,116 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Identification T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.IdentificationT#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.IdentificationT#getIdType <em>Id Type</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getIdentificationT()
+ * @model extendedMetaData="name='identification_t' kind='simple'"
+ * @generated
+ */
+public interface IdentificationT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getIdentificationT_Value()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="name=':0' kind='simple'"
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.IdentificationT#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 Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link io.shell.admin.aas._1._0.IdTypeType1}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Type</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.IdTypeType1
+	 * @see #isSetIdType()
+	 * @see #unsetIdType()
+	 * @see #setIdType(IdTypeType1)
+	 * @see io.shell.admin.aas._1._0._0Package#getIdentificationT_IdType()
+	 * @model unsettable="true"
+	 *        extendedMetaData="kind='attribute' name='idType'"
+	 * @generated
+	 */
+	IdTypeType1 getIdType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.IdentificationT#getIdType <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Type</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.IdTypeType1
+	 * @see #isSetIdType()
+	 * @see #unsetIdType()
+	 * @see #getIdType()
+	 * @generated
+	 */
+	void setIdType(IdTypeType1 value);
+
+	/**
+	 * Unsets the value of the '{@link io.shell.admin.aas._1._0.IdentificationT#getIdType <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isSetIdType()
+	 * @see #getIdType()
+	 * @see #setIdType(IdTypeType1)
+	 * @generated
+	 */
+	void unsetIdType();
+
+	/**
+	 * Returns whether the value of the '{@link io.shell.admin.aas._1._0.IdentificationT#getIdType <em>Id Type</em>}' attribute is set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return whether the value of the '<em>Id Type</em>' attribute is set.
+	 * @see #unsetIdType()
+	 * @see #getIdType()
+	 * @see #setIdType(IdTypeType1)
+	 * @generated
+	 */
+	boolean isSetIdType();
+
+} // IdentificationT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/KeyT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/KeyT.java
new file mode 100644
index 0000000..d1675bd
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/KeyT.java
@@ -0,0 +1,221 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Key T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.KeyT#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.KeyT#getIdType <em>Id Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.KeyT#isLocal <em>Local</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.KeyT#getType <em>Type</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getKeyT()
+ * @model extendedMetaData="name='key_t' kind='simple'"
+ * @generated
+ */
+public interface KeyT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getKeyT_Value()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="name=':0' kind='simple'"
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.KeyT#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 Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link io.shell.admin.aas._1._0.IdTypeType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Type</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.IdTypeType
+	 * @see #isSetIdType()
+	 * @see #unsetIdType()
+	 * @see #setIdType(IdTypeType)
+	 * @see io.shell.admin.aas._1._0._0Package#getKeyT_IdType()
+	 * @model unsettable="true"
+	 *        extendedMetaData="kind='attribute' name='idType'"
+	 * @generated
+	 */
+	IdTypeType getIdType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.KeyT#getIdType <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Type</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.IdTypeType
+	 * @see #isSetIdType()
+	 * @see #unsetIdType()
+	 * @see #getIdType()
+	 * @generated
+	 */
+	void setIdType(IdTypeType value);
+
+	/**
+	 * Unsets the value of the '{@link io.shell.admin.aas._1._0.KeyT#getIdType <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isSetIdType()
+	 * @see #getIdType()
+	 * @see #setIdType(IdTypeType)
+	 * @generated
+	 */
+	void unsetIdType();
+
+	/**
+	 * Returns whether the value of the '{@link io.shell.admin.aas._1._0.KeyT#getIdType <em>Id Type</em>}' attribute is set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return whether the value of the '<em>Id Type</em>' attribute is set.
+	 * @see #unsetIdType()
+	 * @see #getIdType()
+	 * @see #setIdType(IdTypeType)
+	 * @generated
+	 */
+	boolean isSetIdType();
+
+	/**
+	 * Returns the value of the '<em><b>Local</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Local</em>' attribute.
+	 * @see #isSetLocal()
+	 * @see #unsetLocal()
+	 * @see #setLocal(boolean)
+	 * @see io.shell.admin.aas._1._0._0Package#getKeyT_Local()
+	 * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean"
+	 *        extendedMetaData="kind='attribute' name='local'"
+	 * @generated
+	 */
+	boolean isLocal();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.KeyT#isLocal <em>Local</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Local</em>' attribute.
+	 * @see #isSetLocal()
+	 * @see #unsetLocal()
+	 * @see #isLocal()
+	 * @generated
+	 */
+	void setLocal(boolean value);
+
+	/**
+	 * Unsets the value of the '{@link io.shell.admin.aas._1._0.KeyT#isLocal <em>Local</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isSetLocal()
+	 * @see #isLocal()
+	 * @see #setLocal(boolean)
+	 * @generated
+	 */
+	void unsetLocal();
+
+	/**
+	 * Returns whether the value of the '{@link io.shell.admin.aas._1._0.KeyT#isLocal <em>Local</em>}' attribute is set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return whether the value of the '<em>Local</em>' attribute is set.
+	 * @see #unsetLocal()
+	 * @see #isLocal()
+	 * @see #setLocal(boolean)
+	 * @generated
+	 */
+	boolean isSetLocal();
+
+	/**
+	 * Returns the value of the '<em><b>Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link io.shell.admin.aas._1._0.TypeType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Type</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.TypeType
+	 * @see #isSetType()
+	 * @see #unsetType()
+	 * @see #setType(TypeType)
+	 * @see io.shell.admin.aas._1._0._0Package#getKeyT_Type()
+	 * @model unsettable="true"
+	 *        extendedMetaData="kind='attribute' name='type'"
+	 * @generated
+	 */
+	TypeType getType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.KeyT#getType <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Type</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.TypeType
+	 * @see #isSetType()
+	 * @see #unsetType()
+	 * @see #getType()
+	 * @generated
+	 */
+	void setType(TypeType value);
+
+	/**
+	 * Unsets the value of the '{@link io.shell.admin.aas._1._0.KeyT#getType <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isSetType()
+	 * @see #getType()
+	 * @see #setType(TypeType)
+	 * @generated
+	 */
+	void unsetType();
+
+	/**
+	 * Returns whether the value of the '{@link io.shell.admin.aas._1._0.KeyT#getType <em>Type</em>}' attribute is set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return whether the value of the '<em>Type</em>' attribute is set.
+	 * @see #unsetType()
+	 * @see #getType()
+	 * @see #setType(TypeType)
+	 * @generated
+	 */
+	boolean isSetType();
+
+} // KeyT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/KeysT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/KeysT.java
new file mode 100644
index 0000000..ee497d7
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/KeysT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Keys T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.KeysT#getKey <em>Key</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getKeysT()
+ * @model extendedMetaData="name='keys_t' kind='elementOnly'"
+ * @generated
+ */
+public interface KeysT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Key</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.KeyT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Key</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getKeysT_Key()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='key' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<KeyT> getKey();
+
+} // KeysT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/KindType.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/KindType.java
new file mode 100644
index 0000000..6be57b9
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/KindType.java
@@ -0,0 +1,221 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Kind Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0._0Package#getKindType()
+ * @model extendedMetaData="name='kind_._type'"
+ * @generated
+ */
+public enum KindType implements Enumerator {
+	/**
+	 * The '<em><b>Type</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #TYPE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	TYPE(0, "Type", "Type"),
+
+	/**
+	 * The '<em><b>Instance</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #INSTANCE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	INSTANCE(1, "Instance", "Instance");
+
+	/**
+	 * The '<em><b>Type</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #TYPE
+	 * @model name="Type"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int TYPE_VALUE = 0;
+
+	/**
+	 * The '<em><b>Instance</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #INSTANCE
+	 * @model name="Instance"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int INSTANCE_VALUE = 1;
+
+	/**
+	 * An array of all the '<em><b>Kind Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static final KindType[] VALUES_ARRAY =
+		new KindType[] {
+			TYPE,
+			INSTANCE,
+		};
+
+	/**
+	 * A public read-only list of all the '<em><b>Kind Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final List<KindType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Kind Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param literal the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static KindType get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			KindType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Kind Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param name the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static KindType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			KindType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Kind Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static KindType get(int value) {
+		switch (value) {
+			case TYPE_VALUE: return TYPE;
+			case INSTANCE_VALUE: return INSTANCE;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private KindType(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public int getValue() {
+	  return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+	  return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLiteral() {
+	  return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+	
+} //KindType
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/LangStringT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/LangStringT.java
new file mode 100644
index 0000000..d3b01e2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/LangStringT.java
@@ -0,0 +1,86 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Lang String T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.LangStringT#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.LangStringT#getLang <em>Lang</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getLangStringT()
+ * @model extendedMetaData="name='langString_t' kind='simple'"
+ * @generated
+ */
+public interface LangStringT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getLangStringT_Value()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="name=':0' kind='simple'"
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.LangStringT#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>Lang</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Lang</em>' attribute.
+	 * @see #setLang(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getLangStringT_Lang()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='attribute' name='lang'"
+	 * @generated
+	 */
+	String getLang();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.LangStringT#getLang <em>Lang</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Lang</em>' attribute.
+	 * @see #getLang()
+	 * @generated
+	 */
+	void setLang(String value);
+
+} // LangStringT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/LangStringsT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/LangStringsT.java
new file mode 100644
index 0000000..e7b6e62
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/LangStringsT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Lang Strings T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.LangStringsT#getLangString <em>Lang String</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getLangStringsT()
+ * @model extendedMetaData="name='langStrings_t' kind='elementOnly'"
+ * @generated
+ */
+public interface LangStringsT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Lang String</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.LangStringT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Lang String</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getLangStringsT_LangString()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='langString' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<LangStringT> getLangString();
+
+} // LangStringsT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/OperationT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/OperationT.java
new file mode 100644
index 0000000..7fff90e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/OperationT.java
@@ -0,0 +1,66 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Operation T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.OperationT#getIn <em>In</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.OperationT#getOut <em>Out</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getOperationT()
+ * @model extendedMetaData="name='operation_t' kind='elementOnly'"
+ * @generated
+ */
+public interface OperationT extends SubmodelElementAbstractT {
+	/**
+	 * Returns the value of the '<em><b>In</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.OperationVariableT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>In</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getOperationT_In()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='in' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<OperationVariableT> getIn();
+
+	/**
+	 * Returns the value of the '<em><b>Out</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.OperationVariableT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Out</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getOperationT_Out()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='out' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<OperationVariableT> getOut();
+
+} // OperationT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/OperationVariableT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/OperationVariableT.java
new file mode 100644
index 0000000..bc6d702
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/OperationVariableT.java
@@ -0,0 +1,61 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Operation Variable T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.OperationVariableT#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getOperationVariableT()
+ * @model extendedMetaData="name='operationVariable_t' kind='elementOnly'"
+ * @generated
+ */
+public interface OperationVariableT extends SubmodelElementAbstractT {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' containment reference.
+	 * @see #setValue(SubmodelElementT)
+	 * @see io.shell.admin.aas._1._0._0Package#getOperationVariableT_Value()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='value' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SubmodelElementT getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.OperationVariableT#getValue <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' containment reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(SubmodelElementT value);
+
+} // OperationVariableT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PathTypeT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PathTypeT.java
new file mode 100644
index 0000000..73d5561
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PathTypeT.java
@@ -0,0 +1,62 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Path Type T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.PathTypeT#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getPathTypeT()
+ * @model extendedMetaData="name='pathType_t' kind='simple'"
+ * @generated
+ */
+public interface PathTypeT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getPathTypeT_Value()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="name=':0' kind='simple'"
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.PathTypeT#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);
+
+} // PathTypeT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PropertyT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PropertyT.java
new file mode 100644
index 0000000..8a7fc8f
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PropertyT.java
@@ -0,0 +1,109 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Property T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.PropertyT#getValueType <em>Value Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.PropertyT#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.PropertyT#getValueId <em>Value Id</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getPropertyT()
+ * @model extendedMetaData="name='property_t' kind='elementOnly'"
+ * @generated
+ */
+public interface PropertyT extends SubmodelElementAbstractT {
+	/**
+	 * Returns the value of the '<em><b>Value Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value Type</em>' attribute.
+	 * @see #setValueType(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getPropertyT_ValueType()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+	 *        extendedMetaData="kind='element' name='valueType' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getValueType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.PropertyT#getValueType <em>Value Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value Type</em>' attribute.
+	 * @see #getValueType()
+	 * @generated
+	 */
+	void setValueType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' containment reference.
+	 * @see #setValue(PropertyValueTypeT)
+	 * @see io.shell.admin.aas._1._0._0Package#getPropertyT_Value()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='value' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	PropertyValueTypeT getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.PropertyT#getValue <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' containment reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(PropertyValueTypeT value);
+
+	/**
+	 * Returns the value of the '<em><b>Value Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value Id</em>' containment reference.
+	 * @see #setValueId(ReferenceT)
+	 * @see io.shell.admin.aas._1._0._0Package#getPropertyT_ValueId()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='valueId' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getValueId();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.PropertyT#getValueId <em>Value Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value Id</em>' containment reference.
+	 * @see #getValueId()
+	 * @generated
+	 */
+	void setValueId(ReferenceT value);
+
+} // PropertyT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PropertyValueTypeT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PropertyValueTypeT.java
new file mode 100644
index 0000000..faeec27
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PropertyValueTypeT.java
@@ -0,0 +1,62 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Property Value Type T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.PropertyValueTypeT#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getPropertyValueTypeT()
+ * @model extendedMetaData="name='propertyValueType_t' kind='simple'"
+ * @generated
+ */
+public interface PropertyValueTypeT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getPropertyValueTypeT_Value()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="name=':0' kind='simple'"
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.PropertyValueTypeT#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);
+
+} // PropertyValueTypeT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PrvalueTypeT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PrvalueTypeT.java
new file mode 100644
index 0000000..828dd6e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/PrvalueTypeT.java
@@ -0,0 +1,33 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Prvalue Type T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getPrvalueTypeT()
+ * @model extendedMetaData="name='prvalueType_t' kind='empty'"
+ * @generated
+ */
+public interface PrvalueTypeT extends EObject {
+} // PrvalueTypeT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/QualifierT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/QualifierT.java
new file mode 100644
index 0000000..b92c0c8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/QualifierT.java
@@ -0,0 +1,134 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Qualifier T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.QualifierT#getSemanticId <em>Semantic Id</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.QualifierT#getQualifierType <em>Qualifier Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.QualifierT#getQualifierValue <em>Qualifier Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.QualifierT#getQualifierValueId <em>Qualifier Value Id</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getQualifierT()
+ * @model extendedMetaData="name='qualifier_t' kind='elementOnly'"
+ * @generated
+ */
+public interface QualifierT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Semantic Id</em>' containment reference.
+	 * @see #setSemanticId(SemanticIdT)
+	 * @see io.shell.admin.aas._1._0._0Package#getQualifierT_SemanticId()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='semanticId' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SemanticIdT getSemanticId();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.QualifierT#getSemanticId <em>Semantic Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Semantic Id</em>' containment reference.
+	 * @see #getSemanticId()
+	 * @generated
+	 */
+	void setSemanticId(SemanticIdT value);
+
+	/**
+	 * Returns the value of the '<em><b>Qualifier Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Qualifier Type</em>' attribute.
+	 * @see #setQualifierType(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getQualifierT_QualifierType()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String" required="true"
+	 *        extendedMetaData="kind='element' name='qualifierType' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getQualifierType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.QualifierT#getQualifierType <em>Qualifier Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Qualifier Type</em>' attribute.
+	 * @see #getQualifierType()
+	 * @generated
+	 */
+	void setQualifierType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Qualifier Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Qualifier Value</em>' attribute.
+	 * @see #setQualifierValue(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getQualifierT_QualifierValue()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='qualifierValue' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getQualifierValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.QualifierT#getQualifierValue <em>Qualifier Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Qualifier Value</em>' attribute.
+	 * @see #getQualifierValue()
+	 * @generated
+	 */
+	void setQualifierValue(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Qualifier Value Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Qualifier Value Id</em>' containment reference.
+	 * @see #setQualifierValueId(ReferenceT)
+	 * @see io.shell.admin.aas._1._0._0Package#getQualifierT_QualifierValueId()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='qualifierValueId' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getQualifierValueId();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.QualifierT#getQualifierValueId <em>Qualifier Value Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Qualifier Value Id</em>' containment reference.
+	 * @see #getQualifierValueId()
+	 * @generated
+	 */
+	void setQualifierValueId(ReferenceT value);
+
+} // QualifierT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/QualifiersT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/QualifiersT.java
new file mode 100644
index 0000000..753c9ce
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/QualifiersT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Qualifiers T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.QualifiersT#getQualifier <em>Qualifier</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getQualifiersT()
+ * @model extendedMetaData="name='qualifiers_t' kind='elementOnly'"
+ * @generated
+ */
+public interface QualifiersT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Qualifier</b></em>' attribute list.
+	 * The list contents are of type {@link java.lang.String}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Qualifier</em>' attribute list.
+	 * @see io.shell.admin.aas._1._0._0Package#getQualifiersT_Qualifier()
+	 * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='qualifier' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<String> getQualifier();
+
+} // QualifiersT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ReferenceElementT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ReferenceElementT.java
new file mode 100644
index 0000000..d5f615a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ReferenceElementT.java
@@ -0,0 +1,61 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reference Element T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ReferenceElementT#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getReferenceElementT()
+ * @model extendedMetaData="name='referenceElement_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ReferenceElementT extends SubmodelElementAbstractT {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' containment reference.
+	 * @see #setValue(ReferenceT)
+	 * @see io.shell.admin.aas._1._0._0Package#getReferenceElementT_Value()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='value' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ReferenceElementT#getValue <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' containment reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(ReferenceT value);
+
+} // ReferenceElementT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ReferenceT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ReferenceT.java
new file mode 100644
index 0000000..4f7cac2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ReferenceT.java
@@ -0,0 +1,62 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reference T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ReferenceT#getKeys <em>Keys</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getReferenceT()
+ * @model extendedMetaData="name='reference_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ReferenceT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Keys</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Keys</em>' containment reference.
+	 * @see #setKeys(KeysT)
+	 * @see io.shell.admin.aas._1._0._0Package#getReferenceT_Keys()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='keys' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	KeysT getKeys();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ReferenceT#getKeys <em>Keys</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Keys</em>' containment reference.
+	 * @see #getKeys()
+	 * @generated
+	 */
+	void setKeys(KeysT value);
+
+} // ReferenceT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ReferencesT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ReferencesT.java
new file mode 100644
index 0000000..717004a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ReferencesT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>References T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ReferencesT#getReference <em>Reference</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getReferencesT()
+ * @model extendedMetaData="name='references_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ReferencesT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Reference</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.ReferenceT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Reference</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getReferencesT_Reference()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='reference' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<ReferenceT> getReference();
+
+} // ReferencesT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/RelationshipElementT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/RelationshipElementT.java
new file mode 100644
index 0000000..cff9cf8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/RelationshipElementT.java
@@ -0,0 +1,85 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Relationship Element T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.RelationshipElementT#getFirst <em>First</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.RelationshipElementT#getSecond <em>Second</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getRelationshipElementT()
+ * @model extendedMetaData="name='relationshipElement_t' kind='elementOnly'"
+ * @generated
+ */
+public interface RelationshipElementT extends SubmodelElementAbstractT {
+	/**
+	 * Returns the value of the '<em><b>First</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>First</em>' containment reference.
+	 * @see #setFirst(ReferenceT)
+	 * @see io.shell.admin.aas._1._0._0Package#getRelationshipElementT_First()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='first' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getFirst();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.RelationshipElementT#getFirst <em>First</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>First</em>' containment reference.
+	 * @see #getFirst()
+	 * @generated
+	 */
+	void setFirst(ReferenceT value);
+
+	/**
+	 * Returns the value of the '<em><b>Second</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Second</em>' containment reference.
+	 * @see #setSecond(ReferenceT)
+	 * @see io.shell.admin.aas._1._0._0Package#getRelationshipElementT_Second()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='second' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getSecond();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.RelationshipElementT#getSecond <em>Second</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Second</em>' containment reference.
+	 * @see #getSecond()
+	 * @generated
+	 */
+	void setSecond(ReferenceT value);
+
+} // RelationshipElementT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SemanticIdT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SemanticIdT.java
new file mode 100644
index 0000000..750da10
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SemanticIdT.java
@@ -0,0 +1,32 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Semantic Id T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getSemanticIdT()
+ * @model extendedMetaData="name='semanticId_t' kind='elementOnly'"
+ * @generated
+ */
+public interface SemanticIdT extends ReferenceT {
+} // SemanticIdT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementAbstractT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementAbstractT.java
new file mode 100644
index 0000000..62cc14e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementAbstractT.java
@@ -0,0 +1,252 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodel Element Abstract T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getSemanticId <em>Semantic Id</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getKind <em>Kind</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getQualifier <em>Qualifier</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementAbstractT()
+ * @model extendedMetaData="name='submodelElementAbstract_t' kind='elementOnly'"
+ * @generated
+ */
+public interface SubmodelElementAbstractT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Short</em>' containment reference.
+	 * @see #setIdShort(IdShortT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementAbstractT_IdShort()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='idShort' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdShortT getIdShort();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getIdShort <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Short</em>' containment reference.
+	 * @see #getIdShort()
+	 * @generated
+	 */
+	void setIdShort(IdShortT value);
+
+	/**
+	 * Returns the value of the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Category</em>' attribute.
+	 * @see #setCategory(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementAbstractT_Category()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='category' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getCategory();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getCategory <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Category</em>' attribute.
+	 * @see #getCategory()
+	 * @generated
+	 */
+	void setCategory(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(LangStringsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementAbstractT_Description()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='description' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getDescription();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' attribute.
+	 * @see #setParent(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementAbstractT_Parent()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='parent' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getParent();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getParent <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' attribute.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Semantic Id</em>' containment reference.
+	 * @see #setSemanticId(SemanticIdT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementAbstractT_SemanticId()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='semanticId' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SemanticIdT getSemanticId();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getSemanticId <em>Semantic Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Semantic Id</em>' containment reference.
+	 * @see #getSemanticId()
+	 * @generated
+	 */
+	void setSemanticId(SemanticIdT value);
+
+	/**
+	 * Returns the value of the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embedded Data Specification</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementAbstractT_EmbeddedDataSpecification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='embeddedDataSpecification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification();
+
+	/**
+	 * Returns the value of the '<em><b>Kind</b></em>' attribute.
+	 * The literals are from the enumeration {@link io.shell.admin.aas._1._0.KindType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Kind</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @see #isSetKind()
+	 * @see #unsetKind()
+	 * @see #setKind(KindType)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementAbstractT_Kind()
+	 * @model unsettable="true"
+	 *        extendedMetaData="kind='element' name='kind' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	KindType getKind();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getKind <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Kind</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @see #isSetKind()
+	 * @see #unsetKind()
+	 * @see #getKind()
+	 * @generated
+	 */
+	void setKind(KindType value);
+
+	/**
+	 * Unsets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getKind <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isSetKind()
+	 * @see #getKind()
+	 * @see #setKind(KindType)
+	 * @generated
+	 */
+	void unsetKind();
+
+	/**
+	 * Returns whether the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getKind <em>Kind</em>}' attribute is set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return whether the value of the '<em>Kind</em>' attribute is set.
+	 * @see #unsetKind()
+	 * @see #getKind()
+	 * @see #setKind(KindType)
+	 * @generated
+	 */
+	boolean isSetKind();
+
+	/**
+	 * Returns the value of the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Qualifier</em>' containment reference.
+	 * @see #setQualifier(ConstraintT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementAbstractT_Qualifier()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='qualifier' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ConstraintT getQualifier();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getQualifier <em>Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Qualifier</em>' containment reference.
+	 * @see #getQualifier()
+	 * @generated
+	 */
+	void setQualifier(ConstraintT value);
+
+} // SubmodelElementAbstractT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementCollectionT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementCollectionT.java
new file mode 100644
index 0000000..00619b5
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementCollectionT.java
@@ -0,0 +1,163 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodel Element Collection T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isOrdered <em>Ordered</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isAllowDuplicates <em>Allow Duplicates</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementCollectionT()
+ * @model extendedMetaData="name='submodelElementCollection_t' kind='elementOnly'"
+ * @generated
+ */
+public interface SubmodelElementCollectionT extends SubmodelElementAbstractT {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value</em>' containment reference.
+	 * @see #setValue(SubmodelElementsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementCollectionT_Value()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='value' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SubmodelElementsT getValue();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#getValue <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value</em>' containment reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(SubmodelElementsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Ordered</em>' attribute.
+	 * @see #isSetOrdered()
+	 * @see #unsetOrdered()
+	 * @see #setOrdered(boolean)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementCollectionT_Ordered()
+	 * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" required="true"
+	 *        extendedMetaData="kind='element' name='ordered' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	boolean isOrdered();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isOrdered <em>Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Ordered</em>' attribute.
+	 * @see #isSetOrdered()
+	 * @see #unsetOrdered()
+	 * @see #isOrdered()
+	 * @generated
+	 */
+	void setOrdered(boolean value);
+
+	/**
+	 * Unsets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isOrdered <em>Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isSetOrdered()
+	 * @see #isOrdered()
+	 * @see #setOrdered(boolean)
+	 * @generated
+	 */
+	void unsetOrdered();
+
+	/**
+	 * Returns whether the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isOrdered <em>Ordered</em>}' attribute is set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return whether the value of the '<em>Ordered</em>' attribute is set.
+	 * @see #unsetOrdered()
+	 * @see #isOrdered()
+	 * @see #setOrdered(boolean)
+	 * @generated
+	 */
+	boolean isSetOrdered();
+
+	/**
+	 * Returns the value of the '<em><b>Allow Duplicates</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Allow Duplicates</em>' attribute.
+	 * @see #isSetAllowDuplicates()
+	 * @see #unsetAllowDuplicates()
+	 * @see #setAllowDuplicates(boolean)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementCollectionT_AllowDuplicates()
+	 * @model unsettable="true" dataType="org.eclipse.emf.ecore.xml.type.Boolean" required="true"
+	 *        extendedMetaData="kind='element' name='allowDuplicates' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	boolean isAllowDuplicates();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isAllowDuplicates <em>Allow Duplicates</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Allow Duplicates</em>' attribute.
+	 * @see #isSetAllowDuplicates()
+	 * @see #unsetAllowDuplicates()
+	 * @see #isAllowDuplicates()
+	 * @generated
+	 */
+	void setAllowDuplicates(boolean value);
+
+	/**
+	 * Unsets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isAllowDuplicates <em>Allow Duplicates</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isSetAllowDuplicates()
+	 * @see #isAllowDuplicates()
+	 * @see #setAllowDuplicates(boolean)
+	 * @generated
+	 */
+	void unsetAllowDuplicates();
+
+	/**
+	 * Returns whether the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isAllowDuplicates <em>Allow Duplicates</em>}' attribute is set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return whether the value of the '<em>Allow Duplicates</em>' attribute is set.
+	 * @see #unsetAllowDuplicates()
+	 * @see #isAllowDuplicates()
+	 * @see #setAllowDuplicates(boolean)
+	 * @generated
+	 */
+	boolean isSetAllowDuplicates();
+
+} // SubmodelElementCollectionT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementT.java
new file mode 100644
index 0000000..9a771ca
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementT.java
@@ -0,0 +1,254 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodel Element T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementT#getProperty <em>Property</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementT#getFile <em>File</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementT#getBlob <em>Blob</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementT#getReferenceElement <em>Reference Element</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementT#getSubmodelElementCollection <em>Submodel Element Collection</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementT#getRelationshipElement <em>Relationship Element</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementT#getOperation <em>Operation</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementT#getOperationVariable <em>Operation Variable</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementT#getEvent <em>Event</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT()
+ * @model extendedMetaData="name='submodelElement_t' kind='elementOnly'"
+ * @generated
+ */
+public interface SubmodelElementT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Property</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Property</em>' containment reference.
+	 * @see #setProperty(PropertyT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT_Property()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='property' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	PropertyT getProperty();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementT#getProperty <em>Property</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Property</em>' containment reference.
+	 * @see #getProperty()
+	 * @generated
+	 */
+	void setProperty(PropertyT value);
+
+	/**
+	 * Returns the value of the '<em><b>File</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>File</em>' containment reference.
+	 * @see #setFile(FileT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT_File()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='file' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	FileT getFile();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementT#getFile <em>File</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>File</em>' containment reference.
+	 * @see #getFile()
+	 * @generated
+	 */
+	void setFile(FileT value);
+
+	/**
+	 * Returns the value of the '<em><b>Blob</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Blob</em>' containment reference.
+	 * @see #setBlob(BlobT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT_Blob()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='blob' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	BlobT getBlob();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementT#getBlob <em>Blob</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Blob</em>' containment reference.
+	 * @see #getBlob()
+	 * @generated
+	 */
+	void setBlob(BlobT value);
+
+	/**
+	 * Returns the value of the '<em><b>Reference Element</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Reference Element</em>' containment reference.
+	 * @see #setReferenceElement(ReferenceElementT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT_ReferenceElement()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='referenceElement' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceElementT getReferenceElement();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementT#getReferenceElement <em>Reference Element</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Reference Element</em>' containment reference.
+	 * @see #getReferenceElement()
+	 * @generated
+	 */
+	void setReferenceElement(ReferenceElementT value);
+
+	/**
+	 * Returns the value of the '<em><b>Submodel Element Collection</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Submodel Element Collection</em>' containment reference.
+	 * @see #setSubmodelElementCollection(SubmodelElementCollectionT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT_SubmodelElementCollection()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='submodelElementCollection' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SubmodelElementCollectionT getSubmodelElementCollection();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementT#getSubmodelElementCollection <em>Submodel Element Collection</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Submodel Element Collection</em>' containment reference.
+	 * @see #getSubmodelElementCollection()
+	 * @generated
+	 */
+	void setSubmodelElementCollection(SubmodelElementCollectionT value);
+
+	/**
+	 * Returns the value of the '<em><b>Relationship Element</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Relationship Element</em>' containment reference.
+	 * @see #setRelationshipElement(RelationshipElementT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT_RelationshipElement()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='relationshipElement' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	RelationshipElementT getRelationshipElement();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementT#getRelationshipElement <em>Relationship Element</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Relationship Element</em>' containment reference.
+	 * @see #getRelationshipElement()
+	 * @generated
+	 */
+	void setRelationshipElement(RelationshipElementT value);
+
+	/**
+	 * Returns the value of the '<em><b>Operation</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Operation</em>' containment reference.
+	 * @see #setOperation(OperationT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT_Operation()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='operation' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	OperationT getOperation();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementT#getOperation <em>Operation</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Operation</em>' containment reference.
+	 * @see #getOperation()
+	 * @generated
+	 */
+	void setOperation(OperationT value);
+
+	/**
+	 * Returns the value of the '<em><b>Operation Variable</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Operation Variable</em>' containment reference.
+	 * @see #setOperationVariable(OperationVariableT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT_OperationVariable()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='operationVariable' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	OperationVariableT getOperationVariable();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementT#getOperationVariable <em>Operation Variable</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Operation Variable</em>' containment reference.
+	 * @see #getOperationVariable()
+	 * @generated
+	 */
+	void setOperationVariable(OperationVariableT value);
+
+	/**
+	 * Returns the value of the '<em><b>Event</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Event</em>' containment reference.
+	 * @see #setEvent(EventT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementT_Event()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='event' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EventT getEvent();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelElementT#getEvent <em>Event</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Event</em>' containment reference.
+	 * @see #getEvent()
+	 * @generated
+	 */
+	void setEvent(EventT value);
+
+} // SubmodelElementT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementsT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementsT.java
new file mode 100644
index 0000000..afe61bf
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelElementsT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodel Elements T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelElementsT#getSubmodelElement <em>Submodel Element</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementsT()
+ * @model extendedMetaData="name='submodelElements_t' kind='elementOnly'"
+ * @generated
+ */
+public interface SubmodelElementsT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Submodel Element</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.SubmodelElementT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Submodel Element</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelElementsT_SubmodelElement()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='submodelElement' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<SubmodelElementT> getSubmodelElement();
+
+} // SubmodelElementsT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelRefsT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelRefsT.java
new file mode 100644
index 0000000..60ee41e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelRefsT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodel Refs T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelRefsT#getSubmodelRef <em>Submodel Ref</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getSubmodelRefsT()
+ * @model extendedMetaData="name='submodelRefs_t' kind='elementOnly'"
+ * @generated
+ */
+public interface SubmodelRefsT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Submodel Ref</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.ReferenceT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Submodel Ref</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelRefsT_SubmodelRef()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='submodelRef' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<ReferenceT> getSubmodelRef();
+
+} // SubmodelRefsT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelT.java
new file mode 100644
index 0000000..bce79ee
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelT.java
@@ -0,0 +1,324 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodel T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getIdentification <em>Identification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getAdministration <em>Administration</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getSemanticId <em>Semantic Id</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getKind <em>Kind</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getQualifier <em>Qualifier</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelT#getSubmodelElements <em>Submodel Elements</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getSubmodelT()
+ * @model extendedMetaData="name='submodel_t' kind='elementOnly'"
+ * @generated
+ */
+public interface SubmodelT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Short</em>' containment reference.
+	 * @see #setIdShort(IdShortT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_IdShort()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='idShort' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdShortT getIdShort();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getIdShort <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Short</em>' containment reference.
+	 * @see #getIdShort()
+	 * @generated
+	 */
+	void setIdShort(IdShortT value);
+
+	/**
+	 * Returns the value of the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Category</em>' attribute.
+	 * @see #setCategory(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_Category()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='category' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getCategory();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getCategory <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Category</em>' attribute.
+	 * @see #getCategory()
+	 * @generated
+	 */
+	void setCategory(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(LangStringsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_Description()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='description' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getDescription();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' attribute.
+	 * @see #setParent(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_Parent()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='parent' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getParent();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getParent <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' attribute.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Identification</em>' containment reference.
+	 * @see #setIdentification(IdentificationT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_Identification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='identification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdentificationT getIdentification();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getIdentification <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Identification</em>' containment reference.
+	 * @see #getIdentification()
+	 * @generated
+	 */
+	void setIdentification(IdentificationT value);
+
+	/**
+	 * Returns the value of the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Administration</em>' containment reference.
+	 * @see #setAdministration(AdministrationT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_Administration()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='administration' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	AdministrationT getAdministration();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getAdministration <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Administration</em>' containment reference.
+	 * @see #getAdministration()
+	 * @generated
+	 */
+	void setAdministration(AdministrationT value);
+
+	/**
+	 * Returns the value of the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embedded Data Specification</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_EmbeddedDataSpecification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='embeddedDataSpecification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification();
+
+	/**
+	 * Returns the value of the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Semantic Id</em>' containment reference.
+	 * @see #setSemanticId(SemanticIdT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_SemanticId()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='semanticId' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SemanticIdT getSemanticId();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getSemanticId <em>Semantic Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Semantic Id</em>' containment reference.
+	 * @see #getSemanticId()
+	 * @generated
+	 */
+	void setSemanticId(SemanticIdT value);
+
+	/**
+	 * Returns the value of the '<em><b>Kind</b></em>' attribute.
+	 * The literals are from the enumeration {@link io.shell.admin.aas._1._0.KindType}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Kind</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @see #isSetKind()
+	 * @see #unsetKind()
+	 * @see #setKind(KindType)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_Kind()
+	 * @model unsettable="true"
+	 *        extendedMetaData="kind='element' name='kind' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	KindType getKind();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getKind <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Kind</em>' attribute.
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @see #isSetKind()
+	 * @see #unsetKind()
+	 * @see #getKind()
+	 * @generated
+	 */
+	void setKind(KindType value);
+
+	/**
+	 * Unsets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getKind <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isSetKind()
+	 * @see #getKind()
+	 * @see #setKind(KindType)
+	 * @generated
+	 */
+	void unsetKind();
+
+	/**
+	 * Returns whether the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getKind <em>Kind</em>}' attribute is set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return whether the value of the '<em>Kind</em>' attribute is set.
+	 * @see #unsetKind()
+	 * @see #getKind()
+	 * @see #setKind(KindType)
+	 * @generated
+	 */
+	boolean isSetKind();
+
+	/**
+	 * Returns the value of the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Qualifier</em>' containment reference.
+	 * @see #setQualifier(ConstraintT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_Qualifier()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='qualifier' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ConstraintT getQualifier();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getQualifier <em>Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Qualifier</em>' containment reference.
+	 * @see #getQualifier()
+	 * @generated
+	 */
+	void setQualifier(ConstraintT value);
+
+	/**
+	 * Returns the value of the '<em><b>Submodel Elements</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Submodel Elements</em>' containment reference.
+	 * @see #setSubmodelElements(SubmodelElementsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelT_SubmodelElements()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='submodelElements' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SubmodelElementsT getSubmodelElements();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.SubmodelT#getSubmodelElements <em>Submodel Elements</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Submodel Elements</em>' containment reference.
+	 * @see #getSubmodelElements()
+	 * @generated
+	 */
+	void setSubmodelElements(SubmodelElementsT value);
+
+} // SubmodelT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelsT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelsT.java
new file mode 100644
index 0000000..4a7d11a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/SubmodelsT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodels T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.SubmodelsT#getSubmodel <em>Submodel</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getSubmodelsT()
+ * @model extendedMetaData="name='submodels_t' kind='elementOnly'"
+ * @generated
+ */
+public interface SubmodelsT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Submodel</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.SubmodelT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Submodel</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getSubmodelsT_Submodel()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='submodel' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<SubmodelT> getSubmodel();
+
+} // SubmodelsT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/TypeType.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/TypeType.java
new file mode 100644
index 0000000..6f470ed
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/TypeType.java
@@ -0,0 +1,612 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Type Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0._0Package#getTypeType()
+ * @model extendedMetaData="name='type_._type'"
+ * @generated
+ */
+public enum TypeType implements Enumerator {
+	/**
+	 * The '<em><b>Global Reference</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #GLOBAL_REFERENCE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	GLOBAL_REFERENCE(0, "GlobalReference", "GlobalReference"),
+
+	/**
+	 * The '<em><b>Concept Dictionary</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #CONCEPT_DICTIONARY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CONCEPT_DICTIONARY(1, "ConceptDictionary", "ConceptDictionary"),
+
+	/**
+	 * The '<em><b>Access Permission Rule</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #ACCESS_PERMISSION_RULE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ACCESS_PERMISSION_RULE(2, "AccessPermissionRule", "AccessPermissionRule"),
+
+	/**
+	 * The '<em><b>Data Element</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #DATA_ELEMENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	DATA_ELEMENT(3, "DataElement", "DataElement"),
+
+	/**
+	 * The '<em><b>View</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #VIEW_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	VIEW(4, "View", "View"),
+
+	/**
+	 * The '<em><b>Property</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #PROPERTY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	PROPERTY(5, "Property", "Property"),
+
+	/**
+	 * The '<em><b>Submodel Element</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #SUBMODEL_ELEMENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SUBMODEL_ELEMENT(6, "SubmodelElement", "SubmodelElement"),
+
+	/**
+	 * The '<em><b>File</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #FILE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	FILE(7, "File", "File"),
+
+	/**
+	 * The '<em><b>Blob</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #BLOB_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	BLOB(8, "Blob", "Blob"),
+
+	/**
+	 * The '<em><b>Reference Element</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #REFERENCE_ELEMENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	REFERENCE_ELEMENT(9, "ReferenceElement", "ReferenceElement"),
+
+	/**
+	 * The '<em><b>Submodel Element Collection</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #SUBMODEL_ELEMENT_COLLECTION_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SUBMODEL_ELEMENT_COLLECTION(10, "SubmodelElementCollection", "SubmodelElementCollection"),
+
+	/**
+	 * The '<em><b>Relation Ship Element</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #RELATION_SHIP_ELEMENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	RELATION_SHIP_ELEMENT(11, "RelationShipElement", "RelationShipElement"),
+
+	/**
+	 * The '<em><b>Event</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #EVENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	EVENT(12, "Event", "Event"),
+
+	/**
+	 * The '<em><b>Operation</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #OPERATION_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	OPERATION(13, "Operation", "Operation"),
+
+	/**
+	 * The '<em><b>Operation Variable</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #OPERATION_VARIABLE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	OPERATION_VARIABLE(14, "OperationVariable", "OperationVariable"),
+
+	/**
+	 * The '<em><b>Asset Administration Shell</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #ASSET_ADMINISTRATION_SHELL_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ASSET_ADMINISTRATION_SHELL(15, "AssetAdministrationShell", "AssetAdministrationShell"),
+
+	/**
+	 * The '<em><b>Submodel</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #SUBMODEL_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SUBMODEL(16, "Submodel", "Submodel"),
+
+	/**
+	 * The '<em><b>Concept Description</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #CONCEPT_DESCRIPTION_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CONCEPT_DESCRIPTION(17, "ConceptDescription", "ConceptDescription"),
+
+	/**
+	 * The '<em><b>Asset</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #ASSET_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ASSET(18, "Asset", "Asset");
+
+	/**
+	 * The '<em><b>Global Reference</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #GLOBAL_REFERENCE
+	 * @model name="GlobalReference"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int GLOBAL_REFERENCE_VALUE = 0;
+
+	/**
+	 * The '<em><b>Concept Dictionary</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #CONCEPT_DICTIONARY
+	 * @model name="ConceptDictionary"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CONCEPT_DICTIONARY_VALUE = 1;
+
+	/**
+	 * The '<em><b>Access Permission Rule</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #ACCESS_PERMISSION_RULE
+	 * @model name="AccessPermissionRule"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ACCESS_PERMISSION_RULE_VALUE = 2;
+
+	/**
+	 * The '<em><b>Data Element</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #DATA_ELEMENT
+	 * @model name="DataElement"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int DATA_ELEMENT_VALUE = 3;
+
+	/**
+	 * The '<em><b>View</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #VIEW
+	 * @model name="View"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int VIEW_VALUE = 4;
+
+	/**
+	 * The '<em><b>Property</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #PROPERTY
+	 * @model name="Property"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int PROPERTY_VALUE = 5;
+
+	/**
+	 * The '<em><b>Submodel Element</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #SUBMODEL_ELEMENT
+	 * @model name="SubmodelElement"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SUBMODEL_ELEMENT_VALUE = 6;
+
+	/**
+	 * The '<em><b>File</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #FILE
+	 * @model name="File"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int FILE_VALUE = 7;
+
+	/**
+	 * The '<em><b>Blob</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #BLOB
+	 * @model name="Blob"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int BLOB_VALUE = 8;
+
+	/**
+	 * The '<em><b>Reference Element</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #REFERENCE_ELEMENT
+	 * @model name="ReferenceElement"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int REFERENCE_ELEMENT_VALUE = 9;
+
+	/**
+	 * The '<em><b>Submodel Element Collection</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #SUBMODEL_ELEMENT_COLLECTION
+	 * @model name="SubmodelElementCollection"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SUBMODEL_ELEMENT_COLLECTION_VALUE = 10;
+
+	/**
+	 * The '<em><b>Relation Ship Element</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #RELATION_SHIP_ELEMENT
+	 * @model name="RelationShipElement"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int RELATION_SHIP_ELEMENT_VALUE = 11;
+
+	/**
+	 * The '<em><b>Event</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #EVENT
+	 * @model name="Event"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int EVENT_VALUE = 12;
+
+	/**
+	 * The '<em><b>Operation</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #OPERATION
+	 * @model name="Operation"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int OPERATION_VALUE = 13;
+
+	/**
+	 * The '<em><b>Operation Variable</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #OPERATION_VARIABLE
+	 * @model name="OperationVariable"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int OPERATION_VARIABLE_VALUE = 14;
+
+	/**
+	 * The '<em><b>Asset Administration Shell</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #ASSET_ADMINISTRATION_SHELL
+	 * @model name="AssetAdministrationShell"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ASSET_ADMINISTRATION_SHELL_VALUE = 15;
+
+	/**
+	 * The '<em><b>Submodel</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #SUBMODEL
+	 * @model name="Submodel"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SUBMODEL_VALUE = 16;
+
+	/**
+	 * The '<em><b>Concept Description</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #CONCEPT_DESCRIPTION
+	 * @model name="ConceptDescription"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CONCEPT_DESCRIPTION_VALUE = 17;
+
+	/**
+	 * The '<em><b>Asset</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #ASSET
+	 * @model name="Asset"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ASSET_VALUE = 18;
+
+	/**
+	 * An array of all the '<em><b>Type Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static final TypeType[] VALUES_ARRAY =
+		new TypeType[] {
+			GLOBAL_REFERENCE,
+			CONCEPT_DICTIONARY,
+			ACCESS_PERMISSION_RULE,
+			DATA_ELEMENT,
+			VIEW,
+			PROPERTY,
+			SUBMODEL_ELEMENT,
+			FILE,
+			BLOB,
+			REFERENCE_ELEMENT,
+			SUBMODEL_ELEMENT_COLLECTION,
+			RELATION_SHIP_ELEMENT,
+			EVENT,
+			OPERATION,
+			OPERATION_VARIABLE,
+			ASSET_ADMINISTRATION_SHELL,
+			SUBMODEL,
+			CONCEPT_DESCRIPTION,
+			ASSET,
+		};
+
+	/**
+	 * A public read-only list of all the '<em><b>Type Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static final List<TypeType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Type Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param literal the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static TypeType get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			TypeType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Type Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param name the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static TypeType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			TypeType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Type Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static TypeType get(int value) {
+		switch (value) {
+			case GLOBAL_REFERENCE_VALUE: return GLOBAL_REFERENCE;
+			case CONCEPT_DICTIONARY_VALUE: return CONCEPT_DICTIONARY;
+			case ACCESS_PERMISSION_RULE_VALUE: return ACCESS_PERMISSION_RULE;
+			case DATA_ELEMENT_VALUE: return DATA_ELEMENT;
+			case VIEW_VALUE: return VIEW;
+			case PROPERTY_VALUE: return PROPERTY;
+			case SUBMODEL_ELEMENT_VALUE: return SUBMODEL_ELEMENT;
+			case FILE_VALUE: return FILE;
+			case BLOB_VALUE: return BLOB;
+			case REFERENCE_ELEMENT_VALUE: return REFERENCE_ELEMENT;
+			case SUBMODEL_ELEMENT_COLLECTION_VALUE: return SUBMODEL_ELEMENT_COLLECTION;
+			case RELATION_SHIP_ELEMENT_VALUE: return RELATION_SHIP_ELEMENT;
+			case EVENT_VALUE: return EVENT;
+			case OPERATION_VALUE: return OPERATION;
+			case OPERATION_VARIABLE_VALUE: return OPERATION_VARIABLE;
+			case ASSET_ADMINISTRATION_SHELL_VALUE: return ASSET_ADMINISTRATION_SHELL;
+			case SUBMODEL_VALUE: return SUBMODEL;
+			case CONCEPT_DESCRIPTION_VALUE: return CONCEPT_DESCRIPTION;
+			case ASSET_VALUE: return ASSET;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private TypeType(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public int getValue() {
+	  return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+	  return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLiteral() {
+	  return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+	
+} //TypeType
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ViewT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ViewT.java
new file mode 100644
index 0000000..67b0cda
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ViewT.java
@@ -0,0 +1,198 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>View T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ViewT#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ViewT#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ViewT#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ViewT#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ViewT#getSemanticId <em>Semantic Id</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ViewT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.ViewT#getContainedElements <em>Contained Elements</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getViewT()
+ * @model extendedMetaData="name='view_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ViewT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Id Short</em>' containment reference.
+	 * @see #setIdShort(IdShortT)
+	 * @see io.shell.admin.aas._1._0._0Package#getViewT_IdShort()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='idShort' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	IdShortT getIdShort();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ViewT#getIdShort <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Id Short</em>' containment reference.
+	 * @see #getIdShort()
+	 * @generated
+	 */
+	void setIdShort(IdShortT value);
+
+	/**
+	 * Returns the value of the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Category</em>' attribute.
+	 * @see #setCategory(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getViewT_Category()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='category' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getCategory();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ViewT#getCategory <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Category</em>' attribute.
+	 * @see #getCategory()
+	 * @generated
+	 */
+	void setCategory(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Description</em>' containment reference.
+	 * @see #setDescription(LangStringsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getViewT_Description()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='description' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getDescription();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ViewT#getDescription <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Description</em>' containment reference.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Parent</em>' attribute.
+	 * @see #setParent(String)
+	 * @see io.shell.admin.aas._1._0._0Package#getViewT_Parent()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='parent' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getParent();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ViewT#getParent <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Parent</em>' attribute.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Semantic Id</em>' containment reference.
+	 * @see #setSemanticId(SemanticIdT)
+	 * @see io.shell.admin.aas._1._0._0Package#getViewT_SemanticId()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='semanticId' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	SemanticIdT getSemanticId();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ViewT#getSemanticId <em>Semantic Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Semantic Id</em>' containment reference.
+	 * @see #getSemanticId()
+	 * @generated
+	 */
+	void setSemanticId(SemanticIdT value);
+
+	/**
+	 * Returns the value of the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Embedded Data Specification</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getViewT_EmbeddedDataSpecification()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='embeddedDataSpecification' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification();
+
+	/**
+	 * Returns the value of the '<em><b>Contained Elements</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Contained Elements</em>' containment reference.
+	 * @see #setContainedElements(ContainedElementsT)
+	 * @see io.shell.admin.aas._1._0._0Package#getViewT_ContainedElements()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='containedElements' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ContainedElementsT getContainedElements();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.aas._1._0.ViewT#getContainedElements <em>Contained Elements</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Contained Elements</em>' containment reference.
+	 * @see #getContainedElements()
+	 * @generated
+	 */
+	void setContainedElements(ContainedElementsT value);
+
+} // ViewT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ViewsT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ViewsT.java
new file mode 100644
index 0000000..75a1a83
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/ViewsT.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Views T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.ViewsT#getView <em>View</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.aas._1._0._0Package#getViewsT()
+ * @model extendedMetaData="name='views_t' kind='elementOnly'"
+ * @generated
+ */
+public interface ViewsT extends EObject {
+	/**
+	 * Returns the value of the '<em><b>View</b></em>' containment reference list.
+	 * The list contents are of type {@link io.shell.admin.aas._1._0.ViewT}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>View</em>' containment reference list.
+	 * @see io.shell.admin.aas._1._0._0Package#getViewsT_View()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='view' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	EList<ViewT> getView();
+
+} // ViewsT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/_0Factory.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/_0Factory.java
new file mode 100644
index 0000000..82a16eb
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/_0Factory.java
@@ -0,0 +1,498 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0._0Package
+ * @generated
+ */
+public interface _0Factory extends EFactory {
+	/**
+	 * The singleton instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	_0Factory eINSTANCE = io.shell.admin.aas._1._0.impl._0FactoryImpl.init();
+
+	/**
+	 * Returns a new object of class '<em>Aasenv T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Aasenv T</em>'.
+	 * @generated
+	 */
+	AasenvT createAasenvT();
+
+	/**
+	 * Returns a new object of class '<em>Administration T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Administration T</em>'.
+	 * @generated
+	 */
+	AdministrationT createAdministrationT();
+
+	/**
+	 * Returns a new object of class '<em>Asset Administration Shells T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Asset Administration Shells T</em>'.
+	 * @generated
+	 */
+	AssetAdministrationShellsT createAssetAdministrationShellsT();
+
+	/**
+	 * Returns a new object of class '<em>Asset Administration Shell T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Asset Administration Shell T</em>'.
+	 * @generated
+	 */
+	AssetAdministrationShellT createAssetAdministrationShellT();
+
+	/**
+	 * Returns a new object of class '<em>Assets T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Assets T</em>'.
+	 * @generated
+	 */
+	AssetsT createAssetsT();
+
+	/**
+	 * Returns a new object of class '<em>Asset T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Asset T</em>'.
+	 * @generated
+	 */
+	AssetT createAssetT();
+
+	/**
+	 * Returns a new object of class '<em>Blob T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Blob T</em>'.
+	 * @generated
+	 */
+	BlobT createBlobT();
+
+	/**
+	 * Returns a new object of class '<em>Blob Type T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Blob Type T</em>'.
+	 * @generated
+	 */
+	BlobTypeT createBlobTypeT();
+
+	/**
+	 * Returns a new object of class '<em>Concept Descriptions Ref T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Concept Descriptions Ref T</em>'.
+	 * @generated
+	 */
+	ConceptDescriptionsRefT createConceptDescriptionsRefT();
+
+	/**
+	 * Returns a new object of class '<em>Concept Descriptions T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Concept Descriptions T</em>'.
+	 * @generated
+	 */
+	ConceptDescriptionsT createConceptDescriptionsT();
+
+	/**
+	 * Returns a new object of class '<em>Concept Description T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Concept Description T</em>'.
+	 * @generated
+	 */
+	ConceptDescriptionT createConceptDescriptionT();
+
+	/**
+	 * Returns a new object of class '<em>Concept Dictionaries T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Concept Dictionaries T</em>'.
+	 * @generated
+	 */
+	ConceptDictionariesT createConceptDictionariesT();
+
+	/**
+	 * Returns a new object of class '<em>Concept Dictionary T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Concept Dictionary T</em>'.
+	 * @generated
+	 */
+	ConceptDictionaryT createConceptDictionaryT();
+
+	/**
+	 * Returns a new object of class '<em>Constraint T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Constraint T</em>'.
+	 * @generated
+	 */
+	ConstraintT createConstraintT();
+
+	/**
+	 * Returns a new object of class '<em>Contained Elements T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Contained Elements T</em>'.
+	 * @generated
+	 */
+	ContainedElementsT createContainedElementsT();
+
+	/**
+	 * Returns a new object of class '<em>Data Specification Content T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Data Specification Content T</em>'.
+	 * @generated
+	 */
+	DataSpecificationContentT createDataSpecificationContentT();
+
+	/**
+	 * Returns a new object of class '<em>Document Root</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Document Root</em>'.
+	 * @generated
+	 */
+	DocumentRoot createDocumentRoot();
+
+	/**
+	 * Returns a new object of class '<em>Embedded Data Specification T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Embedded Data Specification T</em>'.
+	 * @generated
+	 */
+	EmbeddedDataSpecificationT createEmbeddedDataSpecificationT();
+
+	/**
+	 * Returns a new object of class '<em>Event T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Event T</em>'.
+	 * @generated
+	 */
+	EventT createEventT();
+
+	/**
+	 * Returns a new object of class '<em>File T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>File T</em>'.
+	 * @generated
+	 */
+	FileT createFileT();
+
+	/**
+	 * Returns a new object of class '<em>Formula T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Formula T</em>'.
+	 * @generated
+	 */
+	FormulaT createFormulaT();
+
+	/**
+	 * Returns a new object of class '<em>Identification T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Identification T</em>'.
+	 * @generated
+	 */
+	IdentificationT createIdentificationT();
+
+	/**
+	 * Returns a new object of class '<em>Id Property Definition T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Id Property Definition T</em>'.
+	 * @generated
+	 */
+	IdPropertyDefinitionT createIdPropertyDefinitionT();
+
+	/**
+	 * Returns a new object of class '<em>Id Short T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Id Short T</em>'.
+	 * @generated
+	 */
+	IdShortT createIdShortT();
+
+	/**
+	 * Returns a new object of class '<em>Keys T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Keys T</em>'.
+	 * @generated
+	 */
+	KeysT createKeysT();
+
+	/**
+	 * Returns a new object of class '<em>Key T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Key T</em>'.
+	 * @generated
+	 */
+	KeyT createKeyT();
+
+	/**
+	 * Returns a new object of class '<em>Lang Strings T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Lang Strings T</em>'.
+	 * @generated
+	 */
+	LangStringsT createLangStringsT();
+
+	/**
+	 * Returns a new object of class '<em>Lang String T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Lang String T</em>'.
+	 * @generated
+	 */
+	LangStringT createLangStringT();
+
+	/**
+	 * Returns a new object of class '<em>Operation T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Operation T</em>'.
+	 * @generated
+	 */
+	OperationT createOperationT();
+
+	/**
+	 * Returns a new object of class '<em>Operation Variable T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Operation Variable T</em>'.
+	 * @generated
+	 */
+	OperationVariableT createOperationVariableT();
+
+	/**
+	 * Returns a new object of class '<em>Path Type T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Path Type T</em>'.
+	 * @generated
+	 */
+	PathTypeT createPathTypeT();
+
+	/**
+	 * Returns a new object of class '<em>Property T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Property T</em>'.
+	 * @generated
+	 */
+	PropertyT createPropertyT();
+
+	/**
+	 * Returns a new object of class '<em>Property Value Type T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Property Value Type T</em>'.
+	 * @generated
+	 */
+	PropertyValueTypeT createPropertyValueTypeT();
+
+	/**
+	 * Returns a new object of class '<em>Prvalue Type T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Prvalue Type T</em>'.
+	 * @generated
+	 */
+	PrvalueTypeT createPrvalueTypeT();
+
+	/**
+	 * Returns a new object of class '<em>Qualifiers T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Qualifiers T</em>'.
+	 * @generated
+	 */
+	QualifiersT createQualifiersT();
+
+	/**
+	 * Returns a new object of class '<em>Qualifier T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Qualifier T</em>'.
+	 * @generated
+	 */
+	QualifierT createQualifierT();
+
+	/**
+	 * Returns a new object of class '<em>Reference Element T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Reference Element T</em>'.
+	 * @generated
+	 */
+	ReferenceElementT createReferenceElementT();
+
+	/**
+	 * Returns a new object of class '<em>References T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>References T</em>'.
+	 * @generated
+	 */
+	ReferencesT createReferencesT();
+
+	/**
+	 * Returns a new object of class '<em>Reference T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Reference T</em>'.
+	 * @generated
+	 */
+	ReferenceT createReferenceT();
+
+	/**
+	 * Returns a new object of class '<em>Relationship Element T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Relationship Element T</em>'.
+	 * @generated
+	 */
+	RelationshipElementT createRelationshipElementT();
+
+	/**
+	 * Returns a new object of class '<em>Semantic Id T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Semantic Id T</em>'.
+	 * @generated
+	 */
+	SemanticIdT createSemanticIdT();
+
+	/**
+	 * Returns a new object of class '<em>Submodel Element Abstract T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Submodel Element Abstract T</em>'.
+	 * @generated
+	 */
+	SubmodelElementAbstractT createSubmodelElementAbstractT();
+
+	/**
+	 * Returns a new object of class '<em>Submodel Element Collection T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Submodel Element Collection T</em>'.
+	 * @generated
+	 */
+	SubmodelElementCollectionT createSubmodelElementCollectionT();
+
+	/**
+	 * Returns a new object of class '<em>Submodel Elements T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Submodel Elements T</em>'.
+	 * @generated
+	 */
+	SubmodelElementsT createSubmodelElementsT();
+
+	/**
+	 * Returns a new object of class '<em>Submodel Element T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Submodel Element T</em>'.
+	 * @generated
+	 */
+	SubmodelElementT createSubmodelElementT();
+
+	/**
+	 * Returns a new object of class '<em>Submodel Refs T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Submodel Refs T</em>'.
+	 * @generated
+	 */
+	SubmodelRefsT createSubmodelRefsT();
+
+	/**
+	 * Returns a new object of class '<em>Submodels T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Submodels T</em>'.
+	 * @generated
+	 */
+	SubmodelsT createSubmodelsT();
+
+	/**
+	 * Returns a new object of class '<em>Submodel T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Submodel T</em>'.
+	 * @generated
+	 */
+	SubmodelT createSubmodelT();
+
+	/**
+	 * Returns a new object of class '<em>Views T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Views T</em>'.
+	 * @generated
+	 */
+	ViewsT createViewsT();
+
+	/**
+	 * Returns a new object of class '<em>View T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>View T</em>'.
+	 * @generated
+	 */
+	ViewT createViewT();
+
+	/**
+	 * Returns the package supported by this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
+	_0Package get_0Package();
+
+} //_0Factory
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/_0Package.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/_0Package.java
new file mode 100644
index 0000000..9ce1164
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/_0Package.java
@@ -0,0 +1,7187 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ *   <li>each class,</li>
+ *   <li>each feature of each class,</li>
+ *   <li>each operation of each class,</li>
+ *   <li>each enum,</li>
+ *   <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0._0Factory
+ * @model kind="package"
+ * @generated
+ */
+public interface _0Package extends EPackage {
+	/**
+	 * The package name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNAME = "_0";
+
+	/**
+	 * The package namespace URI.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNS_URI = "http://www.admin-shell.io/aas/1/0";
+
+	/**
+	 * The package namespace name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNS_PREFIX = "aas";
+
+	/**
+	 * The singleton instance of the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	_0Package eINSTANCE = io.shell.admin.aas._1._0.impl._0PackageImpl.init();
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.AasenvTImpl <em>Aasenv T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.AasenvTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAasenvT()
+	 * @generated
+	 */
+	int AASENV_T = 0;
+
+	/**
+	 * The feature id for the '<em><b>Asset Administration Shells</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int AASENV_T__ASSET_ADMINISTRATION_SHELLS = 0;
+
+	/**
+	 * The feature id for the '<em><b>Assets</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int AASENV_T__ASSETS = 1;
+
+	/**
+	 * The feature id for the '<em><b>Submodels</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int AASENV_T__SUBMODELS = 2;
+
+	/**
+	 * The feature id for the '<em><b>Concept Descriptions</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int AASENV_T__CONCEPT_DESCRIPTIONS = 3;
+
+	/**
+	 * The number of structural features of the '<em>Aasenv T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int AASENV_T_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>Aasenv T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int AASENV_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.AdministrationTImpl <em>Administration T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.AdministrationTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAdministrationT()
+	 * @generated
+	 */
+	int ADMINISTRATION_T = 1;
+
+	/**
+	 * The feature id for the '<em><b>Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ADMINISTRATION_T__VERSION = 0;
+
+	/**
+	 * The feature id for the '<em><b>Revision</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ADMINISTRATION_T__REVISION = 1;
+
+	/**
+	 * The number of structural features of the '<em>Administration T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ADMINISTRATION_T_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Administration T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ADMINISTRATION_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellsTImpl <em>Asset Administration Shells T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.AssetAdministrationShellsTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAssetAdministrationShellsT()
+	 * @generated
+	 */
+	int ASSET_ADMINISTRATION_SHELLS_T = 2;
+
+	/**
+	 * The feature id for the '<em><b>Asset Administration Shell</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELLS_T__ASSET_ADMINISTRATION_SHELL = 0;
+
+	/**
+	 * The number of structural features of the '<em>Asset Administration Shells T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELLS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Asset Administration Shells T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELLS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl <em>Asset Administration Shell T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAssetAdministrationShellT()
+	 * @generated
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T = 3;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__ID_SHORT = 0;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__CATEGORY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__PARENT = 3;
+
+	/**
+	 * The feature id for the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION = 4;
+
+	/**
+	 * The feature id for the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__EMBEDDED_DATA_SPECIFICATION = 6;
+
+	/**
+	 * The feature id for the '<em><b>Derived From</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM = 7;
+
+	/**
+	 * The feature id for the '<em><b>Asset Ref</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__ASSET_REF = 8;
+
+	/**
+	 * The feature id for the '<em><b>Submodel Refs</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS = 9;
+
+	/**
+	 * The feature id for the '<em><b>Views</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__VIEWS = 10;
+
+	/**
+	 * The feature id for the '<em><b>Concept Dictionaries</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES = 11;
+
+	/**
+	 * The number of structural features of the '<em>Asset Administration Shell T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T_FEATURE_COUNT = 12;
+
+	/**
+	 * The number of operations of the '<em>Asset Administration Shell T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.AssetsTImpl <em>Assets T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.AssetsTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAssetsT()
+	 * @generated
+	 */
+	int ASSETS_T = 4;
+
+	/**
+	 * The feature id for the '<em><b>Asset</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSETS_T__ASSET = 0;
+
+	/**
+	 * The number of structural features of the '<em>Assets T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSETS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Assets T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSETS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.AssetTImpl <em>Asset T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.AssetTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAssetT()
+	 * @generated
+	 */
+	int ASSET_T = 5;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T__ID_SHORT = 0;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T__CATEGORY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T__DESCRIPTION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T__PARENT = 3;
+
+	/**
+	 * The feature id for the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T__IDENTIFICATION = 4;
+
+	/**
+	 * The feature id for the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T__ADMINISTRATION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T__EMBEDDED_DATA_SPECIFICATION = 6;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T__KIND = 7;
+
+	/**
+	 * The feature id for the '<em><b>Asset Identification Model Ref</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T__ASSET_IDENTIFICATION_MODEL_REF = 8;
+
+	/**
+	 * The number of structural features of the '<em>Asset T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T_FEATURE_COUNT = 9;
+
+	/**
+	 * The number of operations of the '<em>Asset T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl <em>Submodel Element Abstract T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelElementAbstractT()
+	 * @generated
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T = 41;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT = 0;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T__PARENT = 3;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID = 4;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T__KIND = 6;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER = 7;
+
+	/**
+	 * The number of structural features of the '<em>Submodel Element Abstract T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT = 8;
+
+	/**
+	 * The number of operations of the '<em>Submodel Element Abstract T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.BlobTImpl <em>Blob T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.BlobTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getBlobT()
+	 * @generated
+	 */
+	int BLOB_T = 6;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__ID_SHORT = SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__CATEGORY = SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__DESCRIPTION = SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__PARENT = SUBMODEL_ELEMENT_ABSTRACT_T__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__SEMANTIC_ID = SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__EMBEDDED_DATA_SPECIFICATION = SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__KIND = SUBMODEL_ELEMENT_ABSTRACT_T__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__QUALIFIER = SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER;
+
+	/**
+	 * The feature id for the '<em><b>Mime Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__MIME_TYPE = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T__VALUE = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Blob T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T_FEATURE_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Blob T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_T_OPERATION_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.BlobTypeTImpl <em>Blob Type T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.BlobTypeTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getBlobTypeT()
+	 * @generated
+	 */
+	int BLOB_TYPE_T = 7;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_TYPE_T__VALUE = 0;
+
+	/**
+	 * The number of structural features of the '<em>Blob Type T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_TYPE_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Blob Type T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int BLOB_TYPE_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionsRefTImpl <em>Concept Descriptions Ref T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ConceptDescriptionsRefTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDescriptionsRefT()
+	 * @generated
+	 */
+	int CONCEPT_DESCRIPTIONS_REF_T = 8;
+
+	/**
+	 * The feature id for the '<em><b>Concept Description Ref</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTIONS_REF_T__CONCEPT_DESCRIPTION_REF = 0;
+
+	/**
+	 * The number of structural features of the '<em>Concept Descriptions Ref T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTIONS_REF_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Concept Descriptions Ref T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTIONS_REF_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionsTImpl <em>Concept Descriptions T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ConceptDescriptionsTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDescriptionsT()
+	 * @generated
+	 */
+	int CONCEPT_DESCRIPTIONS_T = 9;
+
+	/**
+	 * The feature id for the '<em><b>Concept Description</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTIONS_T__CONCEPT_DESCRIPTION = 0;
+
+	/**
+	 * The number of structural features of the '<em>Concept Descriptions T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTIONS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Concept Descriptions T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTIONS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl <em>Concept Description T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDescriptionT()
+	 * @generated
+	 */
+	int CONCEPT_DESCRIPTION_T = 10;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T__ID_SHORT = 0;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T__CATEGORY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T__DESCRIPTION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T__PARENT = 3;
+
+	/**
+	 * The feature id for the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T__IDENTIFICATION = 4;
+
+	/**
+	 * The feature id for the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T__ADMINISTRATION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T__EMBEDDED_DATA_SPECIFICATION = 6;
+
+	/**
+	 * The feature id for the '<em><b>Is Case Of</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T__IS_CASE_OF = 7;
+
+	/**
+	 * The number of structural features of the '<em>Concept Description T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T_FEATURE_COUNT = 8;
+
+	/**
+	 * The number of operations of the '<em>Concept Description T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DESCRIPTION_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ConceptDictionariesTImpl <em>Concept Dictionaries T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ConceptDictionariesTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDictionariesT()
+	 * @generated
+	 */
+	int CONCEPT_DICTIONARIES_T = 11;
+
+	/**
+	 * The feature id for the '<em><b>Concept Dictionary</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARIES_T__CONCEPT_DICTIONARY = 0;
+
+	/**
+	 * The number of structural features of the '<em>Concept Dictionaries T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARIES_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Concept Dictionaries T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARIES_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ConceptDictionaryTImpl <em>Concept Dictionary T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ConceptDictionaryTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDictionaryT()
+	 * @generated
+	 */
+	int CONCEPT_DICTIONARY_T = 12;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARY_T__ID_SHORT = 0;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARY_T__CATEGORY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARY_T__DESCRIPTION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARY_T__PARENT = 3;
+
+	/**
+	 * The feature id for the '<em><b>Concept Description Refs</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS = 4;
+
+	/**
+	 * The number of structural features of the '<em>Concept Dictionary T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARY_T_FEATURE_COUNT = 5;
+
+	/**
+	 * The number of operations of the '<em>Concept Dictionary T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONCEPT_DICTIONARY_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ConstraintTImpl <em>Constraint T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ConstraintTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConstraintT()
+	 * @generated
+	 */
+	int CONSTRAINT_T = 13;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONSTRAINT_T__QUALIFIER = 0;
+
+	/**
+	 * The feature id for the '<em><b>Formula</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONSTRAINT_T__FORMULA = 1;
+
+	/**
+	 * The number of structural features of the '<em>Constraint T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONSTRAINT_T_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Constraint T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONSTRAINT_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ContainedElementsTImpl <em>Contained Elements T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ContainedElementsTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getContainedElementsT()
+	 * @generated
+	 */
+	int CONTAINED_ELEMENTS_T = 14;
+
+	/**
+	 * The feature id for the '<em><b>Contained Element Ref</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONTAINED_ELEMENTS_T__CONTAINED_ELEMENT_REF = 0;
+
+	/**
+	 * The number of structural features of the '<em>Contained Elements T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONTAINED_ELEMENTS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Contained Elements T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CONTAINED_ELEMENTS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.DataSpecificationContentTImpl <em>Data Specification Content T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.DataSpecificationContentTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getDataSpecificationContentT()
+	 * @generated
+	 */
+	int DATA_SPECIFICATION_CONTENT_T = 15;
+
+	/**
+	 * The feature id for the '<em><b>Data Specification IEC61360</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360 = 0;
+
+	/**
+	 * The number of structural features of the '<em>Data Specification Content T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_CONTENT_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Data Specification Content T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_CONTENT_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.DocumentRootImpl <em>Document Root</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.DocumentRootImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getDocumentRoot()
+	 * @generated
+	 */
+	int DOCUMENT_ROOT = 16;
+
+	/**
+	 * The feature id for the '<em><b>Mixed</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__MIXED = 0;
+
+	/**
+	 * The feature id for the '<em><b>XMLNS Prefix Map</b></em>' map.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__XMLNS_PREFIX_MAP = 1;
+
+	/**
+	 * The feature id for the '<em><b>XSI Schema Location</b></em>' map.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Aasenv</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__AASENV = 3;
+
+	/**
+	 * The feature id for the '<em><b>Key</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__KEY = 4;
+
+	/**
+	 * The number of structural features of the '<em>Document Root</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT_FEATURE_COUNT = 5;
+
+	/**
+	 * The number of operations of the '<em>Document Root</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.EmbeddedDataSpecificationTImpl <em>Embedded Data Specification T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.EmbeddedDataSpecificationTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getEmbeddedDataSpecificationT()
+	 * @generated
+	 */
+	int EMBEDDED_DATA_SPECIFICATION_T = 17;
+
+	/**
+	 * The feature id for the '<em><b>Has Data Specification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION = 0;
+
+	/**
+	 * The feature id for the '<em><b>Data Specification Content</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT = 1;
+
+	/**
+	 * The number of structural features of the '<em>Embedded Data Specification T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EMBEDDED_DATA_SPECIFICATION_T_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Embedded Data Specification T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EMBEDDED_DATA_SPECIFICATION_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.EventTImpl <em>Event T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.EventTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getEventT()
+	 * @generated
+	 */
+	int EVENT_T = 18;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T__ID_SHORT = SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T__CATEGORY = SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T__DESCRIPTION = SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T__PARENT = SUBMODEL_ELEMENT_ABSTRACT_T__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T__SEMANTIC_ID = SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T__EMBEDDED_DATA_SPECIFICATION = SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T__KIND = SUBMODEL_ELEMENT_ABSTRACT_T__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T__QUALIFIER = SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER;
+
+	/**
+	 * The number of structural features of the '<em>Event T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T_FEATURE_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>Event T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_T_OPERATION_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.FileTImpl <em>File T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.FileTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getFileT()
+	 * @generated
+	 */
+	int FILE_T = 19;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__ID_SHORT = SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__CATEGORY = SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__DESCRIPTION = SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__PARENT = SUBMODEL_ELEMENT_ABSTRACT_T__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__SEMANTIC_ID = SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__EMBEDDED_DATA_SPECIFICATION = SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__KIND = SUBMODEL_ELEMENT_ABSTRACT_T__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__QUALIFIER = SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER;
+
+	/**
+	 * The feature id for the '<em><b>Mime Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__MIME_TYPE = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T__VALUE = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>File T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T_FEATURE_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>File T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_T_OPERATION_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.FormulaTImpl <em>Formula T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.FormulaTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getFormulaT()
+	 * @generated
+	 */
+	int FORMULA_T = 20;
+
+	/**
+	 * The feature id for the '<em><b>Depends On</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FORMULA_T__DEPENDS_ON = 0;
+
+	/**
+	 * The number of structural features of the '<em>Formula T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FORMULA_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Formula T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FORMULA_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.IdentificationTImpl <em>Identification T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.IdentificationTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdentificationT()
+	 * @generated
+	 */
+	int IDENTIFICATION_T = 21;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFICATION_T__VALUE = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFICATION_T__ID_TYPE = 1;
+
+	/**
+	 * The number of structural features of the '<em>Identification T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFICATION_T_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Identification T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFICATION_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.IdPropertyDefinitionTImpl <em>Id Property Definition T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.IdPropertyDefinitionTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdPropertyDefinitionT()
+	 * @generated
+	 */
+	int ID_PROPERTY_DEFINITION_T = 22;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ID_PROPERTY_DEFINITION_T__VALUE = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ID_PROPERTY_DEFINITION_T__ID_TYPE = 1;
+
+	/**
+	 * The number of structural features of the '<em>Id Property Definition T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ID_PROPERTY_DEFINITION_T_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Id Property Definition T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ID_PROPERTY_DEFINITION_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.IdShortTImpl <em>Id Short T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.IdShortTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdShortT()
+	 * @generated
+	 */
+	int ID_SHORT_T = 23;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ID_SHORT_T__VALUE = 0;
+
+	/**
+	 * The number of structural features of the '<em>Id Short T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ID_SHORT_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Id Short T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ID_SHORT_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.KeysTImpl <em>Keys T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.KeysTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getKeysT()
+	 * @generated
+	 */
+	int KEYS_T = 24;
+
+	/**
+	 * The feature id for the '<em><b>Key</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int KEYS_T__KEY = 0;
+
+	/**
+	 * The number of structural features of the '<em>Keys T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int KEYS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Keys T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int KEYS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.KeyTImpl <em>Key T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.KeyTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getKeyT()
+	 * @generated
+	 */
+	int KEY_T = 25;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int KEY_T__VALUE = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int KEY_T__ID_TYPE = 1;
+
+	/**
+	 * The feature id for the '<em><b>Local</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int KEY_T__LOCAL = 2;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int KEY_T__TYPE = 3;
+
+	/**
+	 * The number of structural features of the '<em>Key T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int KEY_T_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>Key T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int KEY_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.LangStringsTImpl <em>Lang Strings T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.LangStringsTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getLangStringsT()
+	 * @generated
+	 */
+	int LANG_STRINGS_T = 26;
+
+	/**
+	 * The feature id for the '<em><b>Lang String</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LANG_STRINGS_T__LANG_STRING = 0;
+
+	/**
+	 * The number of structural features of the '<em>Lang Strings T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LANG_STRINGS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Lang Strings T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LANG_STRINGS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.LangStringTImpl <em>Lang String T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.LangStringTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getLangStringT()
+	 * @generated
+	 */
+	int LANG_STRING_T = 27;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LANG_STRING_T__VALUE = 0;
+
+	/**
+	 * The feature id for the '<em><b>Lang</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LANG_STRING_T__LANG = 1;
+
+	/**
+	 * The number of structural features of the '<em>Lang String T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LANG_STRING_T_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Lang String T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int LANG_STRING_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.OperationTImpl <em>Operation T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.OperationTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getOperationT()
+	 * @generated
+	 */
+	int OPERATION_T = 28;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__ID_SHORT = SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__CATEGORY = SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__DESCRIPTION = SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__PARENT = SUBMODEL_ELEMENT_ABSTRACT_T__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__SEMANTIC_ID = SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__EMBEDDED_DATA_SPECIFICATION = SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__KIND = SUBMODEL_ELEMENT_ABSTRACT_T__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__QUALIFIER = SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER;
+
+	/**
+	 * The feature id for the '<em><b>In</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__IN = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Out</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T__OUT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Operation T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T_FEATURE_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Operation T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_T_OPERATION_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.OperationVariableTImpl <em>Operation Variable T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.OperationVariableTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getOperationVariableT()
+	 * @generated
+	 */
+	int OPERATION_VARIABLE_T = 29;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T__ID_SHORT = SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T__CATEGORY = SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T__DESCRIPTION = SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T__PARENT = SUBMODEL_ELEMENT_ABSTRACT_T__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T__SEMANTIC_ID = SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T__EMBEDDED_DATA_SPECIFICATION = SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T__KIND = SUBMODEL_ELEMENT_ABSTRACT_T__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T__QUALIFIER = SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T__VALUE = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Operation Variable T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T_FEATURE_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Operation Variable T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_VARIABLE_T_OPERATION_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.PathTypeTImpl <em>Path Type T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.PathTypeTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getPathTypeT()
+	 * @generated
+	 */
+	int PATH_TYPE_T = 30;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PATH_TYPE_T__VALUE = 0;
+
+	/**
+	 * The number of structural features of the '<em>Path Type T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PATH_TYPE_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Path Type T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PATH_TYPE_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.PropertyTImpl <em>Property T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.PropertyTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getPropertyT()
+	 * @generated
+	 */
+	int PROPERTY_T = 31;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__ID_SHORT = SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__CATEGORY = SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__DESCRIPTION = SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__PARENT = SUBMODEL_ELEMENT_ABSTRACT_T__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__SEMANTIC_ID = SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__EMBEDDED_DATA_SPECIFICATION = SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__KIND = SUBMODEL_ELEMENT_ABSTRACT_T__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__QUALIFIER = SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER;
+
+	/**
+	 * The feature id for the '<em><b>Value Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__VALUE_TYPE = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__VALUE = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Value Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T__VALUE_ID = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>Property T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T_FEATURE_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of operations of the '<em>Property T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_T_OPERATION_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.PropertyValueTypeTImpl <em>Property Value Type T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.PropertyValueTypeTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getPropertyValueTypeT()
+	 * @generated
+	 */
+	int PROPERTY_VALUE_TYPE_T = 32;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_VALUE_TYPE_T__VALUE = 0;
+
+	/**
+	 * The number of structural features of the '<em>Property Value Type T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_VALUE_TYPE_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Property Value Type T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_VALUE_TYPE_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.PrvalueTypeTImpl <em>Prvalue Type T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.PrvalueTypeTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getPrvalueTypeT()
+	 * @generated
+	 */
+	int PRVALUE_TYPE_T = 33;
+
+	/**
+	 * The number of structural features of the '<em>Prvalue Type T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PRVALUE_TYPE_T_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Prvalue Type T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PRVALUE_TYPE_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.QualifiersTImpl <em>Qualifiers T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.QualifiersTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getQualifiersT()
+	 * @generated
+	 */
+	int QUALIFIERS_T = 34;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUALIFIERS_T__QUALIFIER = 0;
+
+	/**
+	 * The number of structural features of the '<em>Qualifiers T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUALIFIERS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Qualifiers T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUALIFIERS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.QualifierTImpl <em>Qualifier T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.QualifierTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getQualifierT()
+	 * @generated
+	 */
+	int QUALIFIER_T = 35;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUALIFIER_T__SEMANTIC_ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUALIFIER_T__QUALIFIER_TYPE = 1;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUALIFIER_T__QUALIFIER_VALUE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier Value Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUALIFIER_T__QUALIFIER_VALUE_ID = 3;
+
+	/**
+	 * The number of structural features of the '<em>Qualifier T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUALIFIER_T_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>Qualifier T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int QUALIFIER_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ReferenceElementTImpl <em>Reference Element T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ReferenceElementTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getReferenceElementT()
+	 * @generated
+	 */
+	int REFERENCE_ELEMENT_T = 36;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T__ID_SHORT = SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T__CATEGORY = SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T__DESCRIPTION = SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T__PARENT = SUBMODEL_ELEMENT_ABSTRACT_T__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T__SEMANTIC_ID = SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T__EMBEDDED_DATA_SPECIFICATION = SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T__KIND = SUBMODEL_ELEMENT_ABSTRACT_T__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T__QUALIFIER = SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T__VALUE = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Reference Element T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T_FEATURE_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Reference Element T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_T_OPERATION_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ReferencesTImpl <em>References T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ReferencesTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getReferencesT()
+	 * @generated
+	 */
+	int REFERENCES_T = 37;
+
+	/**
+	 * The feature id for the '<em><b>Reference</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCES_T__REFERENCE = 0;
+
+	/**
+	 * The number of structural features of the '<em>References T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCES_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>References T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCES_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ReferenceTImpl <em>Reference T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ReferenceTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getReferenceT()
+	 * @generated
+	 */
+	int REFERENCE_T = 38;
+
+	/**
+	 * The feature id for the '<em><b>Keys</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_T__KEYS = 0;
+
+	/**
+	 * The number of structural features of the '<em>Reference T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Reference T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.RelationshipElementTImpl <em>Relationship Element T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.RelationshipElementTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getRelationshipElementT()
+	 * @generated
+	 */
+	int RELATIONSHIP_ELEMENT_T = 39;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__ID_SHORT = SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__CATEGORY = SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__DESCRIPTION = SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__PARENT = SUBMODEL_ELEMENT_ABSTRACT_T__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__SEMANTIC_ID = SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__EMBEDDED_DATA_SPECIFICATION = SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__KIND = SUBMODEL_ELEMENT_ABSTRACT_T__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__QUALIFIER = SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER;
+
+	/**
+	 * The feature id for the '<em><b>First</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__FIRST = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Second</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T__SECOND = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Relationship Element T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T_FEATURE_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Relationship Element T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_T_OPERATION_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.SemanticIdTImpl <em>Semantic Id T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.SemanticIdTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSemanticIdT()
+	 * @generated
+	 */
+	int SEMANTIC_ID_T = 40;
+
+	/**
+	 * The feature id for the '<em><b>Keys</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SEMANTIC_ID_T__KEYS = REFERENCE_T__KEYS;
+
+	/**
+	 * The number of structural features of the '<em>Semantic Id T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SEMANTIC_ID_T_FEATURE_COUNT = REFERENCE_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>Semantic Id T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SEMANTIC_ID_T_OPERATION_COUNT = REFERENCE_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.SubmodelElementCollectionTImpl <em>Submodel Element Collection T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.SubmodelElementCollectionTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelElementCollectionT()
+	 * @generated
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T = 42;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__ID_SHORT = SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__CATEGORY = SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__DESCRIPTION = SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__PARENT = SUBMODEL_ELEMENT_ABSTRACT_T__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__SEMANTIC_ID = SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__EMBEDDED_DATA_SPECIFICATION = SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__KIND = SUBMODEL_ELEMENT_ABSTRACT_T__KIND;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__QUALIFIER = SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__VALUE = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Ordered</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__ORDERED = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Allow Duplicates</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T__ALLOW_DUPLICATES = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>Submodel Element Collection T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T_FEATURE_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of operations of the '<em>Submodel Element Collection T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_T_OPERATION_COUNT = SUBMODEL_ELEMENT_ABSTRACT_T_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.SubmodelElementsTImpl <em>Submodel Elements T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.SubmodelElementsTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelElementsT()
+	 * @generated
+	 */
+	int SUBMODEL_ELEMENTS_T = 43;
+
+	/**
+	 * The feature id for the '<em><b>Submodel Element</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENTS_T__SUBMODEL_ELEMENT = 0;
+
+	/**
+	 * The number of structural features of the '<em>Submodel Elements T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENTS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Submodel Elements T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENTS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl <em>Submodel Element T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.SubmodelElementTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelElementT()
+	 * @generated
+	 */
+	int SUBMODEL_ELEMENT_T = 44;
+
+	/**
+	 * The feature id for the '<em><b>Property</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T__PROPERTY = 0;
+
+	/**
+	 * The feature id for the '<em><b>File</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T__FILE = 1;
+
+	/**
+	 * The feature id for the '<em><b>Blob</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T__BLOB = 2;
+
+	/**
+	 * The feature id for the '<em><b>Reference Element</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT = 3;
+
+	/**
+	 * The feature id for the '<em><b>Submodel Element Collection</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION = 4;
+
+	/**
+	 * The feature id for the '<em><b>Relationship Element</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT = 5;
+
+	/**
+	 * The feature id for the '<em><b>Operation</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T__OPERATION = 6;
+
+	/**
+	 * The feature id for the '<em><b>Operation Variable</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T__OPERATION_VARIABLE = 7;
+
+	/**
+	 * The feature id for the '<em><b>Event</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T__EVENT = 8;
+
+	/**
+	 * The number of structural features of the '<em>Submodel Element T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T_FEATURE_COUNT = 9;
+
+	/**
+	 * The number of operations of the '<em>Submodel Element T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.SubmodelRefsTImpl <em>Submodel Refs T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.SubmodelRefsTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelRefsT()
+	 * @generated
+	 */
+	int SUBMODEL_REFS_T = 45;
+
+	/**
+	 * The feature id for the '<em><b>Submodel Ref</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_REFS_T__SUBMODEL_REF = 0;
+
+	/**
+	 * The number of structural features of the '<em>Submodel Refs T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_REFS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Submodel Refs T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_REFS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.SubmodelsTImpl <em>Submodels T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.SubmodelsTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelsT()
+	 * @generated
+	 */
+	int SUBMODELS_T = 46;
+
+	/**
+	 * The feature id for the '<em><b>Submodel</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODELS_T__SUBMODEL = 0;
+
+	/**
+	 * The number of structural features of the '<em>Submodels T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODELS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Submodels T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODELS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl <em>Submodel T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.SubmodelTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelT()
+	 * @generated
+	 */
+	int SUBMODEL_T = 47;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__ID_SHORT = 0;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__CATEGORY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__DESCRIPTION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__PARENT = 3;
+
+	/**
+	 * The feature id for the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__IDENTIFICATION = 4;
+
+	/**
+	 * The feature id for the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__ADMINISTRATION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__EMBEDDED_DATA_SPECIFICATION = 6;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__SEMANTIC_ID = 7;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__KIND = 8;
+
+	/**
+	 * The feature id for the '<em><b>Qualifier</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__QUALIFIER = 9;
+
+	/**
+	 * The feature id for the '<em><b>Submodel Elements</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T__SUBMODEL_ELEMENTS = 10;
+
+	/**
+	 * The number of structural features of the '<em>Submodel T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T_FEATURE_COUNT = 11;
+
+	/**
+	 * The number of operations of the '<em>Submodel T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ViewsTImpl <em>Views T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ViewsTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getViewsT()
+	 * @generated
+	 */
+	int VIEWS_T = 48;
+
+	/**
+	 * The feature id for the '<em><b>View</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEWS_T__VIEW = 0;
+
+	/**
+	 * The number of structural features of the '<em>Views T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEWS_T_FEATURE_COUNT = 1;
+
+	/**
+	 * The number of operations of the '<em>Views T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEWS_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.impl.ViewTImpl <em>View T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.impl.ViewTImpl
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getViewT()
+	 * @generated
+	 */
+	int VIEW_T = 49;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEW_T__ID_SHORT = 0;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEW_T__CATEGORY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEW_T__DESCRIPTION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEW_T__PARENT = 3;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEW_T__SEMANTIC_ID = 4;
+
+	/**
+	 * The feature id for the '<em><b>Embedded Data Specification</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEW_T__EMBEDDED_DATA_SPECIFICATION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Contained Elements</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEW_T__CONTAINED_ELEMENTS = 6;
+
+	/**
+	 * The number of structural features of the '<em>View T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEW_T_FEATURE_COUNT = 7;
+
+	/**
+	 * The number of operations of the '<em>View T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VIEW_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.IdTypeType <em>Id Type Type</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.IdTypeType
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdTypeType()
+	 * @generated
+	 */
+	int ID_TYPE_TYPE = 50;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.IdTypeType1 <em>Id Type Type1</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.IdTypeType1
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdTypeType1()
+	 * @generated
+	 */
+	int ID_TYPE_TYPE1 = 51;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.KindType <em>Kind Type</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getKindType()
+	 * @generated
+	 */
+	int KIND_TYPE = 52;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.aas._1._0.TypeType <em>Type Type</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.TypeType
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getTypeType()
+	 * @generated
+	 */
+	int TYPE_TYPE = 53;
+
+	/**
+	 * The meta object id for the '<em>Id Type Type Object</em>' data type.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.IdTypeType
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdTypeTypeObject()
+	 * @generated
+	 */
+	int ID_TYPE_TYPE_OBJECT = 54;
+
+	/**
+	 * The meta object id for the '<em>Id Type Type Object1</em>' data type.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.IdTypeType1
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdTypeTypeObject1()
+	 * @generated
+	 */
+	int ID_TYPE_TYPE_OBJECT1 = 55;
+
+	/**
+	 * The meta object id for the '<em>Kind Type Object</em>' data type.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getKindTypeObject()
+	 * @generated
+	 */
+	int KIND_TYPE_OBJECT = 56;
+
+	/**
+	 * The meta object id for the '<em>Type Type Object</em>' data type.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.aas._1._0.TypeType
+	 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getTypeTypeObject()
+	 * @generated
+	 */
+	int TYPE_TYPE_OBJECT = 57;
+
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.AasenvT <em>Aasenv T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Aasenv T</em>'.
+	 * @see io.shell.admin.aas._1._0.AasenvT
+	 * @generated
+	 */
+	EClass getAasenvT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AasenvT#getAssetAdministrationShells <em>Asset Administration Shells</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Asset Administration Shells</em>'.
+	 * @see io.shell.admin.aas._1._0.AasenvT#getAssetAdministrationShells()
+	 * @see #getAasenvT()
+	 * @generated
+	 */
+	EReference getAasenvT_AssetAdministrationShells();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AasenvT#getAssets <em>Assets</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Assets</em>'.
+	 * @see io.shell.admin.aas._1._0.AasenvT#getAssets()
+	 * @see #getAasenvT()
+	 * @generated
+	 */
+	EReference getAasenvT_Assets();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AasenvT#getSubmodels <em>Submodels</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Submodels</em>'.
+	 * @see io.shell.admin.aas._1._0.AasenvT#getSubmodels()
+	 * @see #getAasenvT()
+	 * @generated
+	 */
+	EReference getAasenvT_Submodels();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AasenvT#getConceptDescriptions <em>Concept Descriptions</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Concept Descriptions</em>'.
+	 * @see io.shell.admin.aas._1._0.AasenvT#getConceptDescriptions()
+	 * @see #getAasenvT()
+	 * @generated
+	 */
+	EReference getAasenvT_ConceptDescriptions();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.AdministrationT <em>Administration T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Administration T</em>'.
+	 * @see io.shell.admin.aas._1._0.AdministrationT
+	 * @generated
+	 */
+	EClass getAdministrationT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.AdministrationT#getVersion <em>Version</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Version</em>'.
+	 * @see io.shell.admin.aas._1._0.AdministrationT#getVersion()
+	 * @see #getAdministrationT()
+	 * @generated
+	 */
+	EAttribute getAdministrationT_Version();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.AdministrationT#getRevision <em>Revision</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Revision</em>'.
+	 * @see io.shell.admin.aas._1._0.AdministrationT#getRevision()
+	 * @see #getAdministrationT()
+	 * @generated
+	 */
+	EAttribute getAdministrationT_Revision();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.AssetAdministrationShellsT <em>Asset Administration Shells T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Asset Administration Shells T</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellsT
+	 * @generated
+	 */
+	EClass getAssetAdministrationShellsT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.AssetAdministrationShellsT#getAssetAdministrationShell <em>Asset Administration Shell</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Asset Administration Shell</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellsT#getAssetAdministrationShell()
+	 * @see #getAssetAdministrationShellsT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellsT_AssetAdministrationShell();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT <em>Asset Administration Shell T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Asset Administration Shell T</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT
+	 * @generated
+	 */
+	EClass getAssetAdministrationShellT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getIdShort <em>Id Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Id Short</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getIdShort()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_IdShort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getCategory <em>Category</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Category</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getCategory()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EAttribute getAssetAdministrationShellT_Category();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getDescription()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Parent</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getParent()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EAttribute getAssetAdministrationShellT_Parent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getIdentification <em>Identification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Identification</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getIdentification()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_Identification();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getAdministration <em>Administration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Administration</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getAdministration()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_Administration();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Embedded Data Specification</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getEmbeddedDataSpecification()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_EmbeddedDataSpecification();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getDerivedFrom <em>Derived From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Derived From</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getDerivedFrom()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_DerivedFrom();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getAssetRef <em>Asset Ref</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Asset Ref</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getAssetRef()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_AssetRef();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getSubmodelRefs <em>Submodel Refs</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Submodel Refs</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getSubmodelRefs()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_SubmodelRefs();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getViews <em>Views</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Views</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getViews()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_Views();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT#getConceptDictionaries <em>Concept Dictionaries</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Concept Dictionaries</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetAdministrationShellT#getConceptDictionaries()
+	 * @see #getAssetAdministrationShellT()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShellT_ConceptDictionaries();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.AssetsT <em>Assets T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Assets T</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetsT
+	 * @generated
+	 */
+	EClass getAssetsT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.AssetsT#getAsset <em>Asset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Asset</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetsT#getAsset()
+	 * @see #getAssetsT()
+	 * @generated
+	 */
+	EReference getAssetsT_Asset();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.AssetT <em>Asset T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Asset T</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT
+	 * @generated
+	 */
+	EClass getAssetT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetT#getIdShort <em>Id Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Id Short</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT#getIdShort()
+	 * @see #getAssetT()
+	 * @generated
+	 */
+	EReference getAssetT_IdShort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.AssetT#getCategory <em>Category</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Category</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT#getCategory()
+	 * @see #getAssetT()
+	 * @generated
+	 */
+	EAttribute getAssetT_Category();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetT#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT#getDescription()
+	 * @see #getAssetT()
+	 * @generated
+	 */
+	EReference getAssetT_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.AssetT#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Parent</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT#getParent()
+	 * @see #getAssetT()
+	 * @generated
+	 */
+	EAttribute getAssetT_Parent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetT#getIdentification <em>Identification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Identification</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT#getIdentification()
+	 * @see #getAssetT()
+	 * @generated
+	 */
+	EReference getAssetT_Identification();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetT#getAdministration <em>Administration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Administration</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT#getAdministration()
+	 * @see #getAssetT()
+	 * @generated
+	 */
+	EReference getAssetT_Administration();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.AssetT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Embedded Data Specification</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT#getEmbeddedDataSpecification()
+	 * @see #getAssetT()
+	 * @generated
+	 */
+	EReference getAssetT_EmbeddedDataSpecification();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.AssetT#getKind <em>Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Kind</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT#getKind()
+	 * @see #getAssetT()
+	 * @generated
+	 */
+	EAttribute getAssetT_Kind();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.AssetT#getAssetIdentificationModelRef <em>Asset Identification Model Ref</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Asset Identification Model Ref</em>'.
+	 * @see io.shell.admin.aas._1._0.AssetT#getAssetIdentificationModelRef()
+	 * @see #getAssetT()
+	 * @generated
+	 */
+	EReference getAssetT_AssetIdentificationModelRef();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.BlobT <em>Blob T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Blob T</em>'.
+	 * @see io.shell.admin.aas._1._0.BlobT
+	 * @generated
+	 */
+	EClass getBlobT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.BlobT#getMimeType <em>Mime Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mime Type</em>'.
+	 * @see io.shell.admin.aas._1._0.BlobT#getMimeType()
+	 * @see #getBlobT()
+	 * @generated
+	 */
+	EAttribute getBlobT_MimeType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.BlobT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.BlobT#getValue()
+	 * @see #getBlobT()
+	 * @generated
+	 */
+	EReference getBlobT_Value();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.BlobTypeT <em>Blob Type T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Blob Type T</em>'.
+	 * @see io.shell.admin.aas._1._0.BlobTypeT
+	 * @generated
+	 */
+	EClass getBlobTypeT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.BlobTypeT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.BlobTypeT#getValue()
+	 * @see #getBlobTypeT()
+	 * @generated
+	 */
+	EAttribute getBlobTypeT_Value();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ConceptDescriptionsRefT <em>Concept Descriptions Ref T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Concept Descriptions Ref T</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionsRefT
+	 * @generated
+	 */
+	EClass getConceptDescriptionsRefT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.ConceptDescriptionsRefT#getConceptDescriptionRef <em>Concept Description Ref</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Concept Description Ref</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionsRefT#getConceptDescriptionRef()
+	 * @see #getConceptDescriptionsRefT()
+	 * @generated
+	 */
+	EReference getConceptDescriptionsRefT_ConceptDescriptionRef();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ConceptDescriptionsT <em>Concept Descriptions T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Concept Descriptions T</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionsT
+	 * @generated
+	 */
+	EClass getConceptDescriptionsT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.ConceptDescriptionsT#getConceptDescription <em>Concept Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Concept Description</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionsT#getConceptDescription()
+	 * @see #getConceptDescriptionsT()
+	 * @generated
+	 */
+	EReference getConceptDescriptionsT_ConceptDescription();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ConceptDescriptionT <em>Concept Description T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Concept Description T</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionT
+	 * @generated
+	 */
+	EClass getConceptDescriptionT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getIdShort <em>Id Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Id Short</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionT#getIdShort()
+	 * @see #getConceptDescriptionT()
+	 * @generated
+	 */
+	EReference getConceptDescriptionT_IdShort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getCategory <em>Category</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Category</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionT#getCategory()
+	 * @see #getConceptDescriptionT()
+	 * @generated
+	 */
+	EAttribute getConceptDescriptionT_Category();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionT#getDescription()
+	 * @see #getConceptDescriptionT()
+	 * @generated
+	 */
+	EReference getConceptDescriptionT_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Parent</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionT#getParent()
+	 * @see #getConceptDescriptionT()
+	 * @generated
+	 */
+	EAttribute getConceptDescriptionT_Parent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getIdentification <em>Identification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Identification</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionT#getIdentification()
+	 * @see #getConceptDescriptionT()
+	 * @generated
+	 */
+	EReference getConceptDescriptionT_Identification();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getAdministration <em>Administration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Administration</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionT#getAdministration()
+	 * @see #getConceptDescriptionT()
+	 * @generated
+	 */
+	EReference getConceptDescriptionT_Administration();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Embedded Data Specification</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionT#getEmbeddedDataSpecification()
+	 * @see #getConceptDescriptionT()
+	 * @generated
+	 */
+	EReference getConceptDescriptionT_EmbeddedDataSpecification();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.ConceptDescriptionT#getIsCaseOf <em>Is Case Of</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Is Case Of</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDescriptionT#getIsCaseOf()
+	 * @see #getConceptDescriptionT()
+	 * @generated
+	 */
+	EReference getConceptDescriptionT_IsCaseOf();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ConceptDictionariesT <em>Concept Dictionaries T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Concept Dictionaries T</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDictionariesT
+	 * @generated
+	 */
+	EClass getConceptDictionariesT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.ConceptDictionariesT#getConceptDictionary <em>Concept Dictionary</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Concept Dictionary</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDictionariesT#getConceptDictionary()
+	 * @see #getConceptDictionariesT()
+	 * @generated
+	 */
+	EReference getConceptDictionariesT_ConceptDictionary();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ConceptDictionaryT <em>Concept Dictionary T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Concept Dictionary T</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDictionaryT
+	 * @generated
+	 */
+	EClass getConceptDictionaryT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getIdShort <em>Id Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Id Short</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDictionaryT#getIdShort()
+	 * @see #getConceptDictionaryT()
+	 * @generated
+	 */
+	EReference getConceptDictionaryT_IdShort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getCategory <em>Category</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Category</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDictionaryT#getCategory()
+	 * @see #getConceptDictionaryT()
+	 * @generated
+	 */
+	EAttribute getConceptDictionaryT_Category();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDictionaryT#getDescription()
+	 * @see #getConceptDictionaryT()
+	 * @generated
+	 */
+	EReference getConceptDictionaryT_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Parent</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDictionaryT#getParent()
+	 * @see #getConceptDictionaryT()
+	 * @generated
+	 */
+	EAttribute getConceptDictionaryT_Parent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ConceptDictionaryT#getConceptDescriptionRefs <em>Concept Description Refs</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Concept Description Refs</em>'.
+	 * @see io.shell.admin.aas._1._0.ConceptDictionaryT#getConceptDescriptionRefs()
+	 * @see #getConceptDictionaryT()
+	 * @generated
+	 */
+	EReference getConceptDictionaryT_ConceptDescriptionRefs();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ConstraintT <em>Constraint T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Constraint T</em>'.
+	 * @see io.shell.admin.aas._1._0.ConstraintT
+	 * @generated
+	 */
+	EClass getConstraintT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ConstraintT#getQualifier <em>Qualifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Qualifier</em>'.
+	 * @see io.shell.admin.aas._1._0.ConstraintT#getQualifier()
+	 * @see #getConstraintT()
+	 * @generated
+	 */
+	EReference getConstraintT_Qualifier();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ConstraintT#getFormula <em>Formula</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Formula</em>'.
+	 * @see io.shell.admin.aas._1._0.ConstraintT#getFormula()
+	 * @see #getConstraintT()
+	 * @generated
+	 */
+	EReference getConstraintT_Formula();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ContainedElementsT <em>Contained Elements T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Contained Elements T</em>'.
+	 * @see io.shell.admin.aas._1._0.ContainedElementsT
+	 * @generated
+	 */
+	EClass getContainedElementsT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.ContainedElementsT#getContainedElementRef <em>Contained Element Ref</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Contained Element Ref</em>'.
+	 * @see io.shell.admin.aas._1._0.ContainedElementsT#getContainedElementRef()
+	 * @see #getContainedElementsT()
+	 * @generated
+	 */
+	EReference getContainedElementsT_ContainedElementRef();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.DataSpecificationContentT <em>Data Specification Content T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Data Specification Content T</em>'.
+	 * @see io.shell.admin.aas._1._0.DataSpecificationContentT
+	 * @generated
+	 */
+	EClass getDataSpecificationContentT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.DataSpecificationContentT#getDataSpecificationIEC61360 <em>Data Specification IEC61360</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Data Specification IEC61360</em>'.
+	 * @see io.shell.admin.aas._1._0.DataSpecificationContentT#getDataSpecificationIEC61360()
+	 * @see #getDataSpecificationContentT()
+	 * @generated
+	 */
+	EReference getDataSpecificationContentT_DataSpecificationIEC61360();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.DocumentRoot <em>Document Root</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Document Root</em>'.
+	 * @see io.shell.admin.aas._1._0.DocumentRoot
+	 * @generated
+	 */
+	EClass getDocumentRoot();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link io.shell.admin.aas._1._0.DocumentRoot#getMixed <em>Mixed</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mixed</em>'.
+	 * @see io.shell.admin.aas._1._0.DocumentRoot#getMixed()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EAttribute getDocumentRoot_Mixed();
+
+	/**
+	 * Returns the meta object for the map '{@link io.shell.admin.aas._1._0.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the map '<em>XMLNS Prefix Map</em>'.
+	 * @see io.shell.admin.aas._1._0.DocumentRoot#getXMLNSPrefixMap()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_XMLNSPrefixMap();
+
+	/**
+	 * Returns the meta object for the map '{@link io.shell.admin.aas._1._0.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the map '<em>XSI Schema Location</em>'.
+	 * @see io.shell.admin.aas._1._0.DocumentRoot#getXSISchemaLocation()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_XSISchemaLocation();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.DocumentRoot#getAasenv <em>Aasenv</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Aasenv</em>'.
+	 * @see io.shell.admin.aas._1._0.DocumentRoot#getAasenv()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_Aasenv();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.DocumentRoot#getKey <em>Key</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Key</em>'.
+	 * @see io.shell.admin.aas._1._0.DocumentRoot#getKey()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_Key();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT <em>Embedded Data Specification T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Embedded Data Specification T</em>'.
+	 * @see io.shell.admin.aas._1._0.EmbeddedDataSpecificationT
+	 * @generated
+	 */
+	EClass getEmbeddedDataSpecificationT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT#getHasDataSpecification <em>Has Data Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Has Data Specification</em>'.
+	 * @see io.shell.admin.aas._1._0.EmbeddedDataSpecificationT#getHasDataSpecification()
+	 * @see #getEmbeddedDataSpecificationT()
+	 * @generated
+	 */
+	EReference getEmbeddedDataSpecificationT_HasDataSpecification();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT#getDataSpecificationContent <em>Data Specification Content</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Data Specification Content</em>'.
+	 * @see io.shell.admin.aas._1._0.EmbeddedDataSpecificationT#getDataSpecificationContent()
+	 * @see #getEmbeddedDataSpecificationT()
+	 * @generated
+	 */
+	EReference getEmbeddedDataSpecificationT_DataSpecificationContent();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.EventT <em>Event T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Event T</em>'.
+	 * @see io.shell.admin.aas._1._0.EventT
+	 * @generated
+	 */
+	EClass getEventT();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.FileT <em>File T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>File T</em>'.
+	 * @see io.shell.admin.aas._1._0.FileT
+	 * @generated
+	 */
+	EClass getFileT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.FileT#getMimeType <em>Mime Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Mime Type</em>'.
+	 * @see io.shell.admin.aas._1._0.FileT#getMimeType()
+	 * @see #getFileT()
+	 * @generated
+	 */
+	EAttribute getFileT_MimeType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.FileT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.FileT#getValue()
+	 * @see #getFileT()
+	 * @generated
+	 */
+	EReference getFileT_Value();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.FormulaT <em>Formula T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Formula T</em>'.
+	 * @see io.shell.admin.aas._1._0.FormulaT
+	 * @generated
+	 */
+	EClass getFormulaT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.FormulaT#getDependsOn <em>Depends On</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Depends On</em>'.
+	 * @see io.shell.admin.aas._1._0.FormulaT#getDependsOn()
+	 * @see #getFormulaT()
+	 * @generated
+	 */
+	EReference getFormulaT_DependsOn();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.IdentificationT <em>Identification T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Identification T</em>'.
+	 * @see io.shell.admin.aas._1._0.IdentificationT
+	 * @generated
+	 */
+	EClass getIdentificationT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.IdentificationT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.IdentificationT#getValue()
+	 * @see #getIdentificationT()
+	 * @generated
+	 */
+	EAttribute getIdentificationT_Value();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.IdentificationT#getIdType <em>Id Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id Type</em>'.
+	 * @see io.shell.admin.aas._1._0.IdentificationT#getIdType()
+	 * @see #getIdentificationT()
+	 * @generated
+	 */
+	EAttribute getIdentificationT_IdType();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.IdPropertyDefinitionT <em>Id Property Definition T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Id Property Definition T</em>'.
+	 * @see io.shell.admin.aas._1._0.IdPropertyDefinitionT
+	 * @generated
+	 */
+	EClass getIdPropertyDefinitionT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.IdPropertyDefinitionT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.IdPropertyDefinitionT#getValue()
+	 * @see #getIdPropertyDefinitionT()
+	 * @generated
+	 */
+	EAttribute getIdPropertyDefinitionT_Value();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.IdPropertyDefinitionT#getIdType <em>Id Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id Type</em>'.
+	 * @see io.shell.admin.aas._1._0.IdPropertyDefinitionT#getIdType()
+	 * @see #getIdPropertyDefinitionT()
+	 * @generated
+	 */
+	EAttribute getIdPropertyDefinitionT_IdType();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.IdShortT <em>Id Short T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Id Short T</em>'.
+	 * @see io.shell.admin.aas._1._0.IdShortT
+	 * @generated
+	 */
+	EClass getIdShortT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.IdShortT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.IdShortT#getValue()
+	 * @see #getIdShortT()
+	 * @generated
+	 */
+	EAttribute getIdShortT_Value();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.KeysT <em>Keys T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Keys T</em>'.
+	 * @see io.shell.admin.aas._1._0.KeysT
+	 * @generated
+	 */
+	EClass getKeysT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.KeysT#getKey <em>Key</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Key</em>'.
+	 * @see io.shell.admin.aas._1._0.KeysT#getKey()
+	 * @see #getKeysT()
+	 * @generated
+	 */
+	EReference getKeysT_Key();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.KeyT <em>Key T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Key T</em>'.
+	 * @see io.shell.admin.aas._1._0.KeyT
+	 * @generated
+	 */
+	EClass getKeyT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.KeyT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.KeyT#getValue()
+	 * @see #getKeyT()
+	 * @generated
+	 */
+	EAttribute getKeyT_Value();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.KeyT#getIdType <em>Id Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Id Type</em>'.
+	 * @see io.shell.admin.aas._1._0.KeyT#getIdType()
+	 * @see #getKeyT()
+	 * @generated
+	 */
+	EAttribute getKeyT_IdType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.KeyT#isLocal <em>Local</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Local</em>'.
+	 * @see io.shell.admin.aas._1._0.KeyT#isLocal()
+	 * @see #getKeyT()
+	 * @generated
+	 */
+	EAttribute getKeyT_Local();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.KeyT#getType <em>Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Type</em>'.
+	 * @see io.shell.admin.aas._1._0.KeyT#getType()
+	 * @see #getKeyT()
+	 * @generated
+	 */
+	EAttribute getKeyT_Type();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.LangStringsT <em>Lang Strings T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Lang Strings T</em>'.
+	 * @see io.shell.admin.aas._1._0.LangStringsT
+	 * @generated
+	 */
+	EClass getLangStringsT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.LangStringsT#getLangString <em>Lang String</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Lang String</em>'.
+	 * @see io.shell.admin.aas._1._0.LangStringsT#getLangString()
+	 * @see #getLangStringsT()
+	 * @generated
+	 */
+	EReference getLangStringsT_LangString();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.LangStringT <em>Lang String T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Lang String T</em>'.
+	 * @see io.shell.admin.aas._1._0.LangStringT
+	 * @generated
+	 */
+	EClass getLangStringT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.LangStringT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.LangStringT#getValue()
+	 * @see #getLangStringT()
+	 * @generated
+	 */
+	EAttribute getLangStringT_Value();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.LangStringT#getLang <em>Lang</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Lang</em>'.
+	 * @see io.shell.admin.aas._1._0.LangStringT#getLang()
+	 * @see #getLangStringT()
+	 * @generated
+	 */
+	EAttribute getLangStringT_Lang();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.OperationT <em>Operation T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Operation T</em>'.
+	 * @see io.shell.admin.aas._1._0.OperationT
+	 * @generated
+	 */
+	EClass getOperationT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.OperationT#getIn <em>In</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>In</em>'.
+	 * @see io.shell.admin.aas._1._0.OperationT#getIn()
+	 * @see #getOperationT()
+	 * @generated
+	 */
+	EReference getOperationT_In();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.OperationT#getOut <em>Out</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Out</em>'.
+	 * @see io.shell.admin.aas._1._0.OperationT#getOut()
+	 * @see #getOperationT()
+	 * @generated
+	 */
+	EReference getOperationT_Out();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.OperationVariableT <em>Operation Variable T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Operation Variable T</em>'.
+	 * @see io.shell.admin.aas._1._0.OperationVariableT
+	 * @generated
+	 */
+	EClass getOperationVariableT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.OperationVariableT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.OperationVariableT#getValue()
+	 * @see #getOperationVariableT()
+	 * @generated
+	 */
+	EReference getOperationVariableT_Value();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.PathTypeT <em>Path Type T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Path Type T</em>'.
+	 * @see io.shell.admin.aas._1._0.PathTypeT
+	 * @generated
+	 */
+	EClass getPathTypeT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.PathTypeT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.PathTypeT#getValue()
+	 * @see #getPathTypeT()
+	 * @generated
+	 */
+	EAttribute getPathTypeT_Value();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.PropertyT <em>Property T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Property T</em>'.
+	 * @see io.shell.admin.aas._1._0.PropertyT
+	 * @generated
+	 */
+	EClass getPropertyT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.PropertyT#getValueType <em>Value Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value Type</em>'.
+	 * @see io.shell.admin.aas._1._0.PropertyT#getValueType()
+	 * @see #getPropertyT()
+	 * @generated
+	 */
+	EAttribute getPropertyT_ValueType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.PropertyT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.PropertyT#getValue()
+	 * @see #getPropertyT()
+	 * @generated
+	 */
+	EReference getPropertyT_Value();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.PropertyT#getValueId <em>Value Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value Id</em>'.
+	 * @see io.shell.admin.aas._1._0.PropertyT#getValueId()
+	 * @see #getPropertyT()
+	 * @generated
+	 */
+	EReference getPropertyT_ValueId();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.PropertyValueTypeT <em>Property Value Type T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Property Value Type T</em>'.
+	 * @see io.shell.admin.aas._1._0.PropertyValueTypeT
+	 * @generated
+	 */
+	EClass getPropertyValueTypeT();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.PropertyValueTypeT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.PropertyValueTypeT#getValue()
+	 * @see #getPropertyValueTypeT()
+	 * @generated
+	 */
+	EAttribute getPropertyValueTypeT_Value();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.PrvalueTypeT <em>Prvalue Type T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Prvalue Type T</em>'.
+	 * @see io.shell.admin.aas._1._0.PrvalueTypeT
+	 * @generated
+	 */
+	EClass getPrvalueTypeT();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.QualifiersT <em>Qualifiers T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Qualifiers T</em>'.
+	 * @see io.shell.admin.aas._1._0.QualifiersT
+	 * @generated
+	 */
+	EClass getQualifiersT();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link io.shell.admin.aas._1._0.QualifiersT#getQualifier <em>Qualifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Qualifier</em>'.
+	 * @see io.shell.admin.aas._1._0.QualifiersT#getQualifier()
+	 * @see #getQualifiersT()
+	 * @generated
+	 */
+	EAttribute getQualifiersT_Qualifier();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.QualifierT <em>Qualifier T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Qualifier T</em>'.
+	 * @see io.shell.admin.aas._1._0.QualifierT
+	 * @generated
+	 */
+	EClass getQualifierT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.QualifierT#getSemanticId <em>Semantic Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Semantic Id</em>'.
+	 * @see io.shell.admin.aas._1._0.QualifierT#getSemanticId()
+	 * @see #getQualifierT()
+	 * @generated
+	 */
+	EReference getQualifierT_SemanticId();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.QualifierT#getQualifierType <em>Qualifier Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Qualifier Type</em>'.
+	 * @see io.shell.admin.aas._1._0.QualifierT#getQualifierType()
+	 * @see #getQualifierT()
+	 * @generated
+	 */
+	EAttribute getQualifierT_QualifierType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.QualifierT#getQualifierValue <em>Qualifier Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Qualifier Value</em>'.
+	 * @see io.shell.admin.aas._1._0.QualifierT#getQualifierValue()
+	 * @see #getQualifierT()
+	 * @generated
+	 */
+	EAttribute getQualifierT_QualifierValue();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.QualifierT#getQualifierValueId <em>Qualifier Value Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Qualifier Value Id</em>'.
+	 * @see io.shell.admin.aas._1._0.QualifierT#getQualifierValueId()
+	 * @see #getQualifierT()
+	 * @generated
+	 */
+	EReference getQualifierT_QualifierValueId();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ReferenceElementT <em>Reference Element T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Reference Element T</em>'.
+	 * @see io.shell.admin.aas._1._0.ReferenceElementT
+	 * @generated
+	 */
+	EClass getReferenceElementT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ReferenceElementT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.ReferenceElementT#getValue()
+	 * @see #getReferenceElementT()
+	 * @generated
+	 */
+	EReference getReferenceElementT_Value();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ReferencesT <em>References T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>References T</em>'.
+	 * @see io.shell.admin.aas._1._0.ReferencesT
+	 * @generated
+	 */
+	EClass getReferencesT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.ReferencesT#getReference <em>Reference</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Reference</em>'.
+	 * @see io.shell.admin.aas._1._0.ReferencesT#getReference()
+	 * @see #getReferencesT()
+	 * @generated
+	 */
+	EReference getReferencesT_Reference();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ReferenceT <em>Reference T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Reference T</em>'.
+	 * @see io.shell.admin.aas._1._0.ReferenceT
+	 * @generated
+	 */
+	EClass getReferenceT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ReferenceT#getKeys <em>Keys</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Keys</em>'.
+	 * @see io.shell.admin.aas._1._0.ReferenceT#getKeys()
+	 * @see #getReferenceT()
+	 * @generated
+	 */
+	EReference getReferenceT_Keys();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.RelationshipElementT <em>Relationship Element T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Relationship Element T</em>'.
+	 * @see io.shell.admin.aas._1._0.RelationshipElementT
+	 * @generated
+	 */
+	EClass getRelationshipElementT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.RelationshipElementT#getFirst <em>First</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>First</em>'.
+	 * @see io.shell.admin.aas._1._0.RelationshipElementT#getFirst()
+	 * @see #getRelationshipElementT()
+	 * @generated
+	 */
+	EReference getRelationshipElementT_First();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.RelationshipElementT#getSecond <em>Second</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Second</em>'.
+	 * @see io.shell.admin.aas._1._0.RelationshipElementT#getSecond()
+	 * @see #getRelationshipElementT()
+	 * @generated
+	 */
+	EReference getRelationshipElementT_Second();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.SemanticIdT <em>Semantic Id T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Semantic Id T</em>'.
+	 * @see io.shell.admin.aas._1._0.SemanticIdT
+	 * @generated
+	 */
+	EClass getSemanticIdT();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT <em>Submodel Element Abstract T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Submodel Element Abstract T</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementAbstractT
+	 * @generated
+	 */
+	EClass getSubmodelElementAbstractT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getIdShort <em>Id Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Id Short</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementAbstractT#getIdShort()
+	 * @see #getSubmodelElementAbstractT()
+	 * @generated
+	 */
+	EReference getSubmodelElementAbstractT_IdShort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getCategory <em>Category</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Category</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementAbstractT#getCategory()
+	 * @see #getSubmodelElementAbstractT()
+	 * @generated
+	 */
+	EAttribute getSubmodelElementAbstractT_Category();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementAbstractT#getDescription()
+	 * @see #getSubmodelElementAbstractT()
+	 * @generated
+	 */
+	EReference getSubmodelElementAbstractT_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Parent</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementAbstractT#getParent()
+	 * @see #getSubmodelElementAbstractT()
+	 * @generated
+	 */
+	EAttribute getSubmodelElementAbstractT_Parent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getSemanticId <em>Semantic Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Semantic Id</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementAbstractT#getSemanticId()
+	 * @see #getSubmodelElementAbstractT()
+	 * @generated
+	 */
+	EReference getSubmodelElementAbstractT_SemanticId();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Embedded Data Specification</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementAbstractT#getEmbeddedDataSpecification()
+	 * @see #getSubmodelElementAbstractT()
+	 * @generated
+	 */
+	EReference getSubmodelElementAbstractT_EmbeddedDataSpecification();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getKind <em>Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Kind</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementAbstractT#getKind()
+	 * @see #getSubmodelElementAbstractT()
+	 * @generated
+	 */
+	EAttribute getSubmodelElementAbstractT_Kind();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT#getQualifier <em>Qualifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Qualifier</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementAbstractT#getQualifier()
+	 * @see #getSubmodelElementAbstractT()
+	 * @generated
+	 */
+	EReference getSubmodelElementAbstractT_Qualifier();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT <em>Submodel Element Collection T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Submodel Element Collection T</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementCollectionT
+	 * @generated
+	 */
+	EClass getSubmodelElementCollectionT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementCollectionT#getValue()
+	 * @see #getSubmodelElementCollectionT()
+	 * @generated
+	 */
+	EReference getSubmodelElementCollectionT_Value();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isOrdered <em>Ordered</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Ordered</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementCollectionT#isOrdered()
+	 * @see #getSubmodelElementCollectionT()
+	 * @generated
+	 */
+	EAttribute getSubmodelElementCollectionT_Ordered();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT#isAllowDuplicates <em>Allow Duplicates</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Allow Duplicates</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementCollectionT#isAllowDuplicates()
+	 * @see #getSubmodelElementCollectionT()
+	 * @generated
+	 */
+	EAttribute getSubmodelElementCollectionT_AllowDuplicates();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.SubmodelElementsT <em>Submodel Elements T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Submodel Elements T</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementsT
+	 * @generated
+	 */
+	EClass getSubmodelElementsT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.SubmodelElementsT#getSubmodelElement <em>Submodel Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Submodel Element</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementsT#getSubmodelElement()
+	 * @see #getSubmodelElementsT()
+	 * @generated
+	 */
+	EReference getSubmodelElementsT_SubmodelElement();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.SubmodelElementT <em>Submodel Element T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Submodel Element T</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT
+	 * @generated
+	 */
+	EClass getSubmodelElementT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementT#getProperty <em>Property</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Property</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT#getProperty()
+	 * @see #getSubmodelElementT()
+	 * @generated
+	 */
+	EReference getSubmodelElementT_Property();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementT#getFile <em>File</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>File</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT#getFile()
+	 * @see #getSubmodelElementT()
+	 * @generated
+	 */
+	EReference getSubmodelElementT_File();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementT#getBlob <em>Blob</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Blob</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT#getBlob()
+	 * @see #getSubmodelElementT()
+	 * @generated
+	 */
+	EReference getSubmodelElementT_Blob();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementT#getReferenceElement <em>Reference Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Reference Element</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT#getReferenceElement()
+	 * @see #getSubmodelElementT()
+	 * @generated
+	 */
+	EReference getSubmodelElementT_ReferenceElement();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementT#getSubmodelElementCollection <em>Submodel Element Collection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Submodel Element Collection</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT#getSubmodelElementCollection()
+	 * @see #getSubmodelElementT()
+	 * @generated
+	 */
+	EReference getSubmodelElementT_SubmodelElementCollection();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementT#getRelationshipElement <em>Relationship Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Relationship Element</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT#getRelationshipElement()
+	 * @see #getSubmodelElementT()
+	 * @generated
+	 */
+	EReference getSubmodelElementT_RelationshipElement();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementT#getOperation <em>Operation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Operation</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT#getOperation()
+	 * @see #getSubmodelElementT()
+	 * @generated
+	 */
+	EReference getSubmodelElementT_Operation();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementT#getOperationVariable <em>Operation Variable</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Operation Variable</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT#getOperationVariable()
+	 * @see #getSubmodelElementT()
+	 * @generated
+	 */
+	EReference getSubmodelElementT_OperationVariable();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelElementT#getEvent <em>Event</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Event</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelElementT#getEvent()
+	 * @see #getSubmodelElementT()
+	 * @generated
+	 */
+	EReference getSubmodelElementT_Event();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.SubmodelRefsT <em>Submodel Refs T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Submodel Refs T</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelRefsT
+	 * @generated
+	 */
+	EClass getSubmodelRefsT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.SubmodelRefsT#getSubmodelRef <em>Submodel Ref</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Submodel Ref</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelRefsT#getSubmodelRef()
+	 * @see #getSubmodelRefsT()
+	 * @generated
+	 */
+	EReference getSubmodelRefsT_SubmodelRef();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.SubmodelsT <em>Submodels T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Submodels T</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelsT
+	 * @generated
+	 */
+	EClass getSubmodelsT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.SubmodelsT#getSubmodel <em>Submodel</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Submodel</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelsT#getSubmodel()
+	 * @see #getSubmodelsT()
+	 * @generated
+	 */
+	EReference getSubmodelsT_Submodel();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.SubmodelT <em>Submodel T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Submodel T</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT
+	 * @generated
+	 */
+	EClass getSubmodelT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelT#getIdShort <em>Id Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Id Short</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getIdShort()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EReference getSubmodelT_IdShort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.SubmodelT#getCategory <em>Category</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Category</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getCategory()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EAttribute getSubmodelT_Category();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelT#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getDescription()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EReference getSubmodelT_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.SubmodelT#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Parent</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getParent()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EAttribute getSubmodelT_Parent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelT#getIdentification <em>Identification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Identification</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getIdentification()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EReference getSubmodelT_Identification();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelT#getAdministration <em>Administration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Administration</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getAdministration()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EReference getSubmodelT_Administration();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.SubmodelT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Embedded Data Specification</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getEmbeddedDataSpecification()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EReference getSubmodelT_EmbeddedDataSpecification();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelT#getSemanticId <em>Semantic Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Semantic Id</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getSemanticId()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EReference getSubmodelT_SemanticId();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.SubmodelT#getKind <em>Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Kind</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getKind()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EAttribute getSubmodelT_Kind();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelT#getQualifier <em>Qualifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Qualifier</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getQualifier()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EReference getSubmodelT_Qualifier();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.SubmodelT#getSubmodelElements <em>Submodel Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Submodel Elements</em>'.
+	 * @see io.shell.admin.aas._1._0.SubmodelT#getSubmodelElements()
+	 * @see #getSubmodelT()
+	 * @generated
+	 */
+	EReference getSubmodelT_SubmodelElements();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ViewsT <em>Views T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Views T</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewsT
+	 * @generated
+	 */
+	EClass getViewsT();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.ViewsT#getView <em>View</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>View</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewsT#getView()
+	 * @see #getViewsT()
+	 * @generated
+	 */
+	EReference getViewsT_View();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.aas._1._0.ViewT <em>View T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>View T</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewT
+	 * @generated
+	 */
+	EClass getViewT();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ViewT#getIdShort <em>Id Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Id Short</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewT#getIdShort()
+	 * @see #getViewT()
+	 * @generated
+	 */
+	EReference getViewT_IdShort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.ViewT#getCategory <em>Category</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Category</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewT#getCategory()
+	 * @see #getViewT()
+	 * @generated
+	 */
+	EAttribute getViewT_Category();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ViewT#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Description</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewT#getDescription()
+	 * @see #getViewT()
+	 * @generated
+	 */
+	EReference getViewT_Description();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.aas._1._0.ViewT#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Parent</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewT#getParent()
+	 * @see #getViewT()
+	 * @generated
+	 */
+	EAttribute getViewT_Parent();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ViewT#getSemanticId <em>Semantic Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Semantic Id</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewT#getSemanticId()
+	 * @see #getViewT()
+	 * @generated
+	 */
+	EReference getViewT_SemanticId();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link io.shell.admin.aas._1._0.ViewT#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Embedded Data Specification</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewT#getEmbeddedDataSpecification()
+	 * @see #getViewT()
+	 * @generated
+	 */
+	EReference getViewT_EmbeddedDataSpecification();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.aas._1._0.ViewT#getContainedElements <em>Contained Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Contained Elements</em>'.
+	 * @see io.shell.admin.aas._1._0.ViewT#getContainedElements()
+	 * @see #getViewT()
+	 * @generated
+	 */
+	EReference getViewT_ContainedElements();
+
+	/**
+	 * Returns the meta object for enum '{@link io.shell.admin.aas._1._0.IdTypeType <em>Id Type Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for enum '<em>Id Type Type</em>'.
+	 * @see io.shell.admin.aas._1._0.IdTypeType
+	 * @generated
+	 */
+	EEnum getIdTypeType();
+
+	/**
+	 * Returns the meta object for enum '{@link io.shell.admin.aas._1._0.IdTypeType1 <em>Id Type Type1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for enum '<em>Id Type Type1</em>'.
+	 * @see io.shell.admin.aas._1._0.IdTypeType1
+	 * @generated
+	 */
+	EEnum getIdTypeType1();
+
+	/**
+	 * Returns the meta object for enum '{@link io.shell.admin.aas._1._0.KindType <em>Kind Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for enum '<em>Kind Type</em>'.
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @generated
+	 */
+	EEnum getKindType();
+
+	/**
+	 * Returns the meta object for enum '{@link io.shell.admin.aas._1._0.TypeType <em>Type Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for enum '<em>Type Type</em>'.
+	 * @see io.shell.admin.aas._1._0.TypeType
+	 * @generated
+	 */
+	EEnum getTypeType();
+
+	/**
+	 * Returns the meta object for data type '{@link io.shell.admin.aas._1._0.IdTypeType <em>Id Type Type Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for data type '<em>Id Type Type Object</em>'.
+	 * @see io.shell.admin.aas._1._0.IdTypeType
+	 * @model instanceClass="io.shell.admin.aas._1._0.IdTypeType"
+	 *        extendedMetaData="name='idType_._type:Object' baseType='idType_._type'"
+	 * @generated
+	 */
+	EDataType getIdTypeTypeObject();
+
+	/**
+	 * Returns the meta object for data type '{@link io.shell.admin.aas._1._0.IdTypeType1 <em>Id Type Type Object1</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for data type '<em>Id Type Type Object1</em>'.
+	 * @see io.shell.admin.aas._1._0.IdTypeType1
+	 * @model instanceClass="io.shell.admin.aas._1._0.IdTypeType1"
+	 *        extendedMetaData="name='idType_._1_._type:Object' baseType='idType_._1_._type'"
+	 * @generated
+	 */
+	EDataType getIdTypeTypeObject1();
+
+	/**
+	 * Returns the meta object for data type '{@link io.shell.admin.aas._1._0.KindType <em>Kind Type Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for data type '<em>Kind Type Object</em>'.
+	 * @see io.shell.admin.aas._1._0.KindType
+	 * @model instanceClass="io.shell.admin.aas._1._0.KindType"
+	 *        extendedMetaData="name='kind_._type:Object' baseType='kind_._type'"
+	 * @generated
+	 */
+	EDataType getKindTypeObject();
+
+	/**
+	 * Returns the meta object for data type '{@link io.shell.admin.aas._1._0.TypeType <em>Type Type Object</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for data type '<em>Type Type Object</em>'.
+	 * @see io.shell.admin.aas._1._0.TypeType
+	 * @model instanceClass="io.shell.admin.aas._1._0.TypeType"
+	 *        extendedMetaData="name='type_._type:Object' baseType='type_._type'"
+	 * @generated
+	 */
+	EDataType getTypeTypeObject();
+
+	/**
+	 * Returns the factory that creates the instances of the model.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the factory that creates the instances of the model.
+	 * @generated
+	 */
+	_0Factory get_0Factory();
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * Defines literals for the meta objects that represent
+	 * <ul>
+	 *   <li>each class,</li>
+	 *   <li>each feature of each class,</li>
+	 *   <li>each operation of each class,</li>
+	 *   <li>each enum,</li>
+	 *   <li>and each data type</li>
+	 * </ul>
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	interface Literals {
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.AasenvTImpl <em>Aasenv T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.AasenvTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAasenvT()
+		 * @generated
+		 */
+		EClass AASENV_T = eINSTANCE.getAasenvT();
+
+		/**
+		 * The meta object literal for the '<em><b>Asset Administration Shells</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference AASENV_T__ASSET_ADMINISTRATION_SHELLS = eINSTANCE.getAasenvT_AssetAdministrationShells();
+
+		/**
+		 * The meta object literal for the '<em><b>Assets</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference AASENV_T__ASSETS = eINSTANCE.getAasenvT_Assets();
+
+		/**
+		 * The meta object literal for the '<em><b>Submodels</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference AASENV_T__SUBMODELS = eINSTANCE.getAasenvT_Submodels();
+
+		/**
+		 * The meta object literal for the '<em><b>Concept Descriptions</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference AASENV_T__CONCEPT_DESCRIPTIONS = eINSTANCE.getAasenvT_ConceptDescriptions();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.AdministrationTImpl <em>Administration T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.AdministrationTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAdministrationT()
+		 * @generated
+		 */
+		EClass ADMINISTRATION_T = eINSTANCE.getAdministrationT();
+
+		/**
+		 * The meta object literal for the '<em><b>Version</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ADMINISTRATION_T__VERSION = eINSTANCE.getAdministrationT_Version();
+
+		/**
+		 * The meta object literal for the '<em><b>Revision</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ADMINISTRATION_T__REVISION = eINSTANCE.getAdministrationT_Revision();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellsTImpl <em>Asset Administration Shells T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.AssetAdministrationShellsTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAssetAdministrationShellsT()
+		 * @generated
+		 */
+		EClass ASSET_ADMINISTRATION_SHELLS_T = eINSTANCE.getAssetAdministrationShellsT();
+
+		/**
+		 * The meta object literal for the '<em><b>Asset Administration Shell</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELLS_T__ASSET_ADMINISTRATION_SHELL = eINSTANCE.getAssetAdministrationShellsT_AssetAdministrationShell();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl <em>Asset Administration Shell T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAssetAdministrationShellT()
+		 * @generated
+		 */
+		EClass ASSET_ADMINISTRATION_SHELL_T = eINSTANCE.getAssetAdministrationShellT();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Short</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__ID_SHORT = eINSTANCE.getAssetAdministrationShellT_IdShort();
+
+		/**
+		 * The meta object literal for the '<em><b>Category</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ASSET_ADMINISTRATION_SHELL_T__CATEGORY = eINSTANCE.getAssetAdministrationShellT_Category();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION = eINSTANCE.getAssetAdministrationShellT_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Parent</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ASSET_ADMINISTRATION_SHELL_T__PARENT = eINSTANCE.getAssetAdministrationShellT_Parent();
+
+		/**
+		 * The meta object literal for the '<em><b>Identification</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION = eINSTANCE.getAssetAdministrationShellT_Identification();
+
+		/**
+		 * The meta object literal for the '<em><b>Administration</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION = eINSTANCE.getAssetAdministrationShellT_Administration();
+
+		/**
+		 * The meta object literal for the '<em><b>Embedded Data Specification</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__EMBEDDED_DATA_SPECIFICATION = eINSTANCE.getAssetAdministrationShellT_EmbeddedDataSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Derived From</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM = eINSTANCE.getAssetAdministrationShellT_DerivedFrom();
+
+		/**
+		 * The meta object literal for the '<em><b>Asset Ref</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__ASSET_REF = eINSTANCE.getAssetAdministrationShellT_AssetRef();
+
+		/**
+		 * The meta object literal for the '<em><b>Submodel Refs</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS = eINSTANCE.getAssetAdministrationShellT_SubmodelRefs();
+
+		/**
+		 * The meta object literal for the '<em><b>Views</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__VIEWS = eINSTANCE.getAssetAdministrationShellT_Views();
+
+		/**
+		 * The meta object literal for the '<em><b>Concept Dictionaries</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES = eINSTANCE.getAssetAdministrationShellT_ConceptDictionaries();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.AssetsTImpl <em>Assets T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.AssetsTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAssetsT()
+		 * @generated
+		 */
+		EClass ASSETS_T = eINSTANCE.getAssetsT();
+
+		/**
+		 * The meta object literal for the '<em><b>Asset</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSETS_T__ASSET = eINSTANCE.getAssetsT_Asset();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.AssetTImpl <em>Asset T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.AssetTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getAssetT()
+		 * @generated
+		 */
+		EClass ASSET_T = eINSTANCE.getAssetT();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Short</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_T__ID_SHORT = eINSTANCE.getAssetT_IdShort();
+
+		/**
+		 * The meta object literal for the '<em><b>Category</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ASSET_T__CATEGORY = eINSTANCE.getAssetT_Category();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_T__DESCRIPTION = eINSTANCE.getAssetT_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Parent</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ASSET_T__PARENT = eINSTANCE.getAssetT_Parent();
+
+		/**
+		 * The meta object literal for the '<em><b>Identification</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_T__IDENTIFICATION = eINSTANCE.getAssetT_Identification();
+
+		/**
+		 * The meta object literal for the '<em><b>Administration</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_T__ADMINISTRATION = eINSTANCE.getAssetT_Administration();
+
+		/**
+		 * The meta object literal for the '<em><b>Embedded Data Specification</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_T__EMBEDDED_DATA_SPECIFICATION = eINSTANCE.getAssetT_EmbeddedDataSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Kind</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ASSET_T__KIND = eINSTANCE.getAssetT_Kind();
+
+		/**
+		 * The meta object literal for the '<em><b>Asset Identification Model Ref</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ASSET_T__ASSET_IDENTIFICATION_MODEL_REF = eINSTANCE.getAssetT_AssetIdentificationModelRef();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.BlobTImpl <em>Blob T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.BlobTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getBlobT()
+		 * @generated
+		 */
+		EClass BLOB_T = eINSTANCE.getBlobT();
+
+		/**
+		 * The meta object literal for the '<em><b>Mime Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute BLOB_T__MIME_TYPE = eINSTANCE.getBlobT_MimeType();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference BLOB_T__VALUE = eINSTANCE.getBlobT_Value();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.BlobTypeTImpl <em>Blob Type T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.BlobTypeTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getBlobTypeT()
+		 * @generated
+		 */
+		EClass BLOB_TYPE_T = eINSTANCE.getBlobTypeT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute BLOB_TYPE_T__VALUE = eINSTANCE.getBlobTypeT_Value();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionsRefTImpl <em>Concept Descriptions Ref T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ConceptDescriptionsRefTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDescriptionsRefT()
+		 * @generated
+		 */
+		EClass CONCEPT_DESCRIPTIONS_REF_T = eINSTANCE.getConceptDescriptionsRefT();
+
+		/**
+		 * The meta object literal for the '<em><b>Concept Description Ref</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DESCRIPTIONS_REF_T__CONCEPT_DESCRIPTION_REF = eINSTANCE.getConceptDescriptionsRefT_ConceptDescriptionRef();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionsTImpl <em>Concept Descriptions T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ConceptDescriptionsTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDescriptionsT()
+		 * @generated
+		 */
+		EClass CONCEPT_DESCRIPTIONS_T = eINSTANCE.getConceptDescriptionsT();
+
+		/**
+		 * The meta object literal for the '<em><b>Concept Description</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DESCRIPTIONS_T__CONCEPT_DESCRIPTION = eINSTANCE.getConceptDescriptionsT_ConceptDescription();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl <em>Concept Description T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDescriptionT()
+		 * @generated
+		 */
+		EClass CONCEPT_DESCRIPTION_T = eINSTANCE.getConceptDescriptionT();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Short</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DESCRIPTION_T__ID_SHORT = eINSTANCE.getConceptDescriptionT_IdShort();
+
+		/**
+		 * The meta object literal for the '<em><b>Category</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute CONCEPT_DESCRIPTION_T__CATEGORY = eINSTANCE.getConceptDescriptionT_Category();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DESCRIPTION_T__DESCRIPTION = eINSTANCE.getConceptDescriptionT_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Parent</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute CONCEPT_DESCRIPTION_T__PARENT = eINSTANCE.getConceptDescriptionT_Parent();
+
+		/**
+		 * The meta object literal for the '<em><b>Identification</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DESCRIPTION_T__IDENTIFICATION = eINSTANCE.getConceptDescriptionT_Identification();
+
+		/**
+		 * The meta object literal for the '<em><b>Administration</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DESCRIPTION_T__ADMINISTRATION = eINSTANCE.getConceptDescriptionT_Administration();
+
+		/**
+		 * The meta object literal for the '<em><b>Embedded Data Specification</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DESCRIPTION_T__EMBEDDED_DATA_SPECIFICATION = eINSTANCE.getConceptDescriptionT_EmbeddedDataSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Is Case Of</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DESCRIPTION_T__IS_CASE_OF = eINSTANCE.getConceptDescriptionT_IsCaseOf();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ConceptDictionariesTImpl <em>Concept Dictionaries T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ConceptDictionariesTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDictionariesT()
+		 * @generated
+		 */
+		EClass CONCEPT_DICTIONARIES_T = eINSTANCE.getConceptDictionariesT();
+
+		/**
+		 * The meta object literal for the '<em><b>Concept Dictionary</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DICTIONARIES_T__CONCEPT_DICTIONARY = eINSTANCE.getConceptDictionariesT_ConceptDictionary();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ConceptDictionaryTImpl <em>Concept Dictionary T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ConceptDictionaryTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConceptDictionaryT()
+		 * @generated
+		 */
+		EClass CONCEPT_DICTIONARY_T = eINSTANCE.getConceptDictionaryT();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Short</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DICTIONARY_T__ID_SHORT = eINSTANCE.getConceptDictionaryT_IdShort();
+
+		/**
+		 * The meta object literal for the '<em><b>Category</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute CONCEPT_DICTIONARY_T__CATEGORY = eINSTANCE.getConceptDictionaryT_Category();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DICTIONARY_T__DESCRIPTION = eINSTANCE.getConceptDictionaryT_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Parent</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute CONCEPT_DICTIONARY_T__PARENT = eINSTANCE.getConceptDictionaryT_Parent();
+
+		/**
+		 * The meta object literal for the '<em><b>Concept Description Refs</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS = eINSTANCE.getConceptDictionaryT_ConceptDescriptionRefs();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ConstraintTImpl <em>Constraint T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ConstraintTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getConstraintT()
+		 * @generated
+		 */
+		EClass CONSTRAINT_T = eINSTANCE.getConstraintT();
+
+		/**
+		 * The meta object literal for the '<em><b>Qualifier</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONSTRAINT_T__QUALIFIER = eINSTANCE.getConstraintT_Qualifier();
+
+		/**
+		 * The meta object literal for the '<em><b>Formula</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONSTRAINT_T__FORMULA = eINSTANCE.getConstraintT_Formula();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ContainedElementsTImpl <em>Contained Elements T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ContainedElementsTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getContainedElementsT()
+		 * @generated
+		 */
+		EClass CONTAINED_ELEMENTS_T = eINSTANCE.getContainedElementsT();
+
+		/**
+		 * The meta object literal for the '<em><b>Contained Element Ref</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference CONTAINED_ELEMENTS_T__CONTAINED_ELEMENT_REF = eINSTANCE.getContainedElementsT_ContainedElementRef();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.DataSpecificationContentTImpl <em>Data Specification Content T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.DataSpecificationContentTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getDataSpecificationContentT()
+		 * @generated
+		 */
+		EClass DATA_SPECIFICATION_CONTENT_T = eINSTANCE.getDataSpecificationContentT();
+
+		/**
+		 * The meta object literal for the '<em><b>Data Specification IEC61360</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360 = eINSTANCE.getDataSpecificationContentT_DataSpecificationIEC61360();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.DocumentRootImpl <em>Document Root</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.DocumentRootImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getDocumentRoot()
+		 * @generated
+		 */
+		EClass DOCUMENT_ROOT = eINSTANCE.getDocumentRoot();
+
+		/**
+		 * The meta object literal for the '<em><b>Mixed</b></em>' attribute list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DOCUMENT_ROOT__MIXED = eINSTANCE.getDocumentRoot_Mixed();
+
+		/**
+		 * The meta object literal for the '<em><b>XMLNS Prefix Map</b></em>' map feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__XMLNS_PREFIX_MAP = eINSTANCE.getDocumentRoot_XMLNSPrefixMap();
+
+		/**
+		 * The meta object literal for the '<em><b>XSI Schema Location</b></em>' map feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = eINSTANCE.getDocumentRoot_XSISchemaLocation();
+
+		/**
+		 * The meta object literal for the '<em><b>Aasenv</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__AASENV = eINSTANCE.getDocumentRoot_Aasenv();
+
+		/**
+		 * The meta object literal for the '<em><b>Key</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__KEY = eINSTANCE.getDocumentRoot_Key();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.EmbeddedDataSpecificationTImpl <em>Embedded Data Specification T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.EmbeddedDataSpecificationTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getEmbeddedDataSpecificationT()
+		 * @generated
+		 */
+		EClass EMBEDDED_DATA_SPECIFICATION_T = eINSTANCE.getEmbeddedDataSpecificationT();
+
+		/**
+		 * The meta object literal for the '<em><b>Has Data Specification</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION = eINSTANCE.getEmbeddedDataSpecificationT_HasDataSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Data Specification Content</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT = eINSTANCE.getEmbeddedDataSpecificationT_DataSpecificationContent();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.EventTImpl <em>Event T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.EventTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getEventT()
+		 * @generated
+		 */
+		EClass EVENT_T = eINSTANCE.getEventT();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.FileTImpl <em>File T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.FileTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getFileT()
+		 * @generated
+		 */
+		EClass FILE_T = eINSTANCE.getFileT();
+
+		/**
+		 * The meta object literal for the '<em><b>Mime Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute FILE_T__MIME_TYPE = eINSTANCE.getFileT_MimeType();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference FILE_T__VALUE = eINSTANCE.getFileT_Value();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.FormulaTImpl <em>Formula T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.FormulaTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getFormulaT()
+		 * @generated
+		 */
+		EClass FORMULA_T = eINSTANCE.getFormulaT();
+
+		/**
+		 * The meta object literal for the '<em><b>Depends On</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference FORMULA_T__DEPENDS_ON = eINSTANCE.getFormulaT_DependsOn();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.IdentificationTImpl <em>Identification T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.IdentificationTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdentificationT()
+		 * @generated
+		 */
+		EClass IDENTIFICATION_T = eINSTANCE.getIdentificationT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute IDENTIFICATION_T__VALUE = eINSTANCE.getIdentificationT_Value();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute IDENTIFICATION_T__ID_TYPE = eINSTANCE.getIdentificationT_IdType();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.IdPropertyDefinitionTImpl <em>Id Property Definition T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.IdPropertyDefinitionTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdPropertyDefinitionT()
+		 * @generated
+		 */
+		EClass ID_PROPERTY_DEFINITION_T = eINSTANCE.getIdPropertyDefinitionT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ID_PROPERTY_DEFINITION_T__VALUE = eINSTANCE.getIdPropertyDefinitionT_Value();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ID_PROPERTY_DEFINITION_T__ID_TYPE = eINSTANCE.getIdPropertyDefinitionT_IdType();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.IdShortTImpl <em>Id Short T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.IdShortTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdShortT()
+		 * @generated
+		 */
+		EClass ID_SHORT_T = eINSTANCE.getIdShortT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute ID_SHORT_T__VALUE = eINSTANCE.getIdShortT_Value();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.KeysTImpl <em>Keys T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.KeysTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getKeysT()
+		 * @generated
+		 */
+		EClass KEYS_T = eINSTANCE.getKeysT();
+
+		/**
+		 * The meta object literal for the '<em><b>Key</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference KEYS_T__KEY = eINSTANCE.getKeysT_Key();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.KeyTImpl <em>Key T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.KeyTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getKeyT()
+		 * @generated
+		 */
+		EClass KEY_T = eINSTANCE.getKeyT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute KEY_T__VALUE = eINSTANCE.getKeyT_Value();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute KEY_T__ID_TYPE = eINSTANCE.getKeyT_IdType();
+
+		/**
+		 * The meta object literal for the '<em><b>Local</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute KEY_T__LOCAL = eINSTANCE.getKeyT_Local();
+
+		/**
+		 * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute KEY_T__TYPE = eINSTANCE.getKeyT_Type();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.LangStringsTImpl <em>Lang Strings T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.LangStringsTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getLangStringsT()
+		 * @generated
+		 */
+		EClass LANG_STRINGS_T = eINSTANCE.getLangStringsT();
+
+		/**
+		 * The meta object literal for the '<em><b>Lang String</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference LANG_STRINGS_T__LANG_STRING = eINSTANCE.getLangStringsT_LangString();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.LangStringTImpl <em>Lang String T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.LangStringTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getLangStringT()
+		 * @generated
+		 */
+		EClass LANG_STRING_T = eINSTANCE.getLangStringT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute LANG_STRING_T__VALUE = eINSTANCE.getLangStringT_Value();
+
+		/**
+		 * The meta object literal for the '<em><b>Lang</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute LANG_STRING_T__LANG = eINSTANCE.getLangStringT_Lang();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.OperationTImpl <em>Operation T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.OperationTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getOperationT()
+		 * @generated
+		 */
+		EClass OPERATION_T = eINSTANCE.getOperationT();
+
+		/**
+		 * The meta object literal for the '<em><b>In</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference OPERATION_T__IN = eINSTANCE.getOperationT_In();
+
+		/**
+		 * The meta object literal for the '<em><b>Out</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference OPERATION_T__OUT = eINSTANCE.getOperationT_Out();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.OperationVariableTImpl <em>Operation Variable T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.OperationVariableTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getOperationVariableT()
+		 * @generated
+		 */
+		EClass OPERATION_VARIABLE_T = eINSTANCE.getOperationVariableT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference OPERATION_VARIABLE_T__VALUE = eINSTANCE.getOperationVariableT_Value();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.PathTypeTImpl <em>Path Type T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.PathTypeTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getPathTypeT()
+		 * @generated
+		 */
+		EClass PATH_TYPE_T = eINSTANCE.getPathTypeT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PATH_TYPE_T__VALUE = eINSTANCE.getPathTypeT_Value();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.PropertyTImpl <em>Property T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.PropertyTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getPropertyT()
+		 * @generated
+		 */
+		EClass PROPERTY_T = eINSTANCE.getPropertyT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PROPERTY_T__VALUE_TYPE = eINSTANCE.getPropertyT_ValueType();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PROPERTY_T__VALUE = eINSTANCE.getPropertyT_Value();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Id</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference PROPERTY_T__VALUE_ID = eINSTANCE.getPropertyT_ValueId();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.PropertyValueTypeTImpl <em>Property Value Type T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.PropertyValueTypeTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getPropertyValueTypeT()
+		 * @generated
+		 */
+		EClass PROPERTY_VALUE_TYPE_T = eINSTANCE.getPropertyValueTypeT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PROPERTY_VALUE_TYPE_T__VALUE = eINSTANCE.getPropertyValueTypeT_Value();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.PrvalueTypeTImpl <em>Prvalue Type T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.PrvalueTypeTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getPrvalueTypeT()
+		 * @generated
+		 */
+		EClass PRVALUE_TYPE_T = eINSTANCE.getPrvalueTypeT();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.QualifiersTImpl <em>Qualifiers T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.QualifiersTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getQualifiersT()
+		 * @generated
+		 */
+		EClass QUALIFIERS_T = eINSTANCE.getQualifiersT();
+
+		/**
+		 * The meta object literal for the '<em><b>Qualifier</b></em>' attribute list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute QUALIFIERS_T__QUALIFIER = eINSTANCE.getQualifiersT_Qualifier();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.QualifierTImpl <em>Qualifier T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.QualifierTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getQualifierT()
+		 * @generated
+		 */
+		EClass QUALIFIER_T = eINSTANCE.getQualifierT();
+
+		/**
+		 * The meta object literal for the '<em><b>Semantic Id</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUALIFIER_T__SEMANTIC_ID = eINSTANCE.getQualifierT_SemanticId();
+
+		/**
+		 * The meta object literal for the '<em><b>Qualifier Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute QUALIFIER_T__QUALIFIER_TYPE = eINSTANCE.getQualifierT_QualifierType();
+
+		/**
+		 * The meta object literal for the '<em><b>Qualifier Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute QUALIFIER_T__QUALIFIER_VALUE = eINSTANCE.getQualifierT_QualifierValue();
+
+		/**
+		 * The meta object literal for the '<em><b>Qualifier Value Id</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference QUALIFIER_T__QUALIFIER_VALUE_ID = eINSTANCE.getQualifierT_QualifierValueId();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ReferenceElementTImpl <em>Reference Element T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ReferenceElementTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getReferenceElementT()
+		 * @generated
+		 */
+		EClass REFERENCE_ELEMENT_T = eINSTANCE.getReferenceElementT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference REFERENCE_ELEMENT_T__VALUE = eINSTANCE.getReferenceElementT_Value();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ReferencesTImpl <em>References T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ReferencesTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getReferencesT()
+		 * @generated
+		 */
+		EClass REFERENCES_T = eINSTANCE.getReferencesT();
+
+		/**
+		 * The meta object literal for the '<em><b>Reference</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference REFERENCES_T__REFERENCE = eINSTANCE.getReferencesT_Reference();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ReferenceTImpl <em>Reference T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ReferenceTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getReferenceT()
+		 * @generated
+		 */
+		EClass REFERENCE_T = eINSTANCE.getReferenceT();
+
+		/**
+		 * The meta object literal for the '<em><b>Keys</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference REFERENCE_T__KEYS = eINSTANCE.getReferenceT_Keys();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.RelationshipElementTImpl <em>Relationship Element T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.RelationshipElementTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getRelationshipElementT()
+		 * @generated
+		 */
+		EClass RELATIONSHIP_ELEMENT_T = eINSTANCE.getRelationshipElementT();
+
+		/**
+		 * The meta object literal for the '<em><b>First</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference RELATIONSHIP_ELEMENT_T__FIRST = eINSTANCE.getRelationshipElementT_First();
+
+		/**
+		 * The meta object literal for the '<em><b>Second</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference RELATIONSHIP_ELEMENT_T__SECOND = eINSTANCE.getRelationshipElementT_Second();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.SemanticIdTImpl <em>Semantic Id T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.SemanticIdTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSemanticIdT()
+		 * @generated
+		 */
+		EClass SEMANTIC_ID_T = eINSTANCE.getSemanticIdT();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl <em>Submodel Element Abstract T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelElementAbstractT()
+		 * @generated
+		 */
+		EClass SUBMODEL_ELEMENT_ABSTRACT_T = eINSTANCE.getSubmodelElementAbstractT();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Short</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT = eINSTANCE.getSubmodelElementAbstractT_IdShort();
+
+		/**
+		 * The meta object literal for the '<em><b>Category</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY = eINSTANCE.getSubmodelElementAbstractT_Category();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION = eINSTANCE.getSubmodelElementAbstractT_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Parent</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SUBMODEL_ELEMENT_ABSTRACT_T__PARENT = eINSTANCE.getSubmodelElementAbstractT_Parent();
+
+		/**
+		 * The meta object literal for the '<em><b>Semantic Id</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID = eINSTANCE.getSubmodelElementAbstractT_SemanticId();
+
+		/**
+		 * The meta object literal for the '<em><b>Embedded Data Specification</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION = eINSTANCE.getSubmodelElementAbstractT_EmbeddedDataSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Kind</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SUBMODEL_ELEMENT_ABSTRACT_T__KIND = eINSTANCE.getSubmodelElementAbstractT_Kind();
+
+		/**
+		 * The meta object literal for the '<em><b>Qualifier</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER = eINSTANCE.getSubmodelElementAbstractT_Qualifier();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.SubmodelElementCollectionTImpl <em>Submodel Element Collection T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.SubmodelElementCollectionTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelElementCollectionT()
+		 * @generated
+		 */
+		EClass SUBMODEL_ELEMENT_COLLECTION_T = eINSTANCE.getSubmodelElementCollectionT();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_COLLECTION_T__VALUE = eINSTANCE.getSubmodelElementCollectionT_Value();
+
+		/**
+		 * The meta object literal for the '<em><b>Ordered</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SUBMODEL_ELEMENT_COLLECTION_T__ORDERED = eINSTANCE.getSubmodelElementCollectionT_Ordered();
+
+		/**
+		 * The meta object literal for the '<em><b>Allow Duplicates</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SUBMODEL_ELEMENT_COLLECTION_T__ALLOW_DUPLICATES = eINSTANCE.getSubmodelElementCollectionT_AllowDuplicates();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.SubmodelElementsTImpl <em>Submodel Elements T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.SubmodelElementsTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelElementsT()
+		 * @generated
+		 */
+		EClass SUBMODEL_ELEMENTS_T = eINSTANCE.getSubmodelElementsT();
+
+		/**
+		 * The meta object literal for the '<em><b>Submodel Element</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENTS_T__SUBMODEL_ELEMENT = eINSTANCE.getSubmodelElementsT_SubmodelElement();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl <em>Submodel Element T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.SubmodelElementTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelElementT()
+		 * @generated
+		 */
+		EClass SUBMODEL_ELEMENT_T = eINSTANCE.getSubmodelElementT();
+
+		/**
+		 * The meta object literal for the '<em><b>Property</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_T__PROPERTY = eINSTANCE.getSubmodelElementT_Property();
+
+		/**
+		 * The meta object literal for the '<em><b>File</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_T__FILE = eINSTANCE.getSubmodelElementT_File();
+
+		/**
+		 * The meta object literal for the '<em><b>Blob</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_T__BLOB = eINSTANCE.getSubmodelElementT_Blob();
+
+		/**
+		 * The meta object literal for the '<em><b>Reference Element</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT = eINSTANCE.getSubmodelElementT_ReferenceElement();
+
+		/**
+		 * The meta object literal for the '<em><b>Submodel Element Collection</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION = eINSTANCE.getSubmodelElementT_SubmodelElementCollection();
+
+		/**
+		 * The meta object literal for the '<em><b>Relationship Element</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT = eINSTANCE.getSubmodelElementT_RelationshipElement();
+
+		/**
+		 * The meta object literal for the '<em><b>Operation</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_T__OPERATION = eINSTANCE.getSubmodelElementT_Operation();
+
+		/**
+		 * The meta object literal for the '<em><b>Operation Variable</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_T__OPERATION_VARIABLE = eINSTANCE.getSubmodelElementT_OperationVariable();
+
+		/**
+		 * The meta object literal for the '<em><b>Event</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_T__EVENT = eINSTANCE.getSubmodelElementT_Event();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.SubmodelRefsTImpl <em>Submodel Refs T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.SubmodelRefsTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelRefsT()
+		 * @generated
+		 */
+		EClass SUBMODEL_REFS_T = eINSTANCE.getSubmodelRefsT();
+
+		/**
+		 * The meta object literal for the '<em><b>Submodel Ref</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_REFS_T__SUBMODEL_REF = eINSTANCE.getSubmodelRefsT_SubmodelRef();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.SubmodelsTImpl <em>Submodels T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.SubmodelsTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelsT()
+		 * @generated
+		 */
+		EClass SUBMODELS_T = eINSTANCE.getSubmodelsT();
+
+		/**
+		 * The meta object literal for the '<em><b>Submodel</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODELS_T__SUBMODEL = eINSTANCE.getSubmodelsT_Submodel();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl <em>Submodel T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.SubmodelTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getSubmodelT()
+		 * @generated
+		 */
+		EClass SUBMODEL_T = eINSTANCE.getSubmodelT();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Short</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_T__ID_SHORT = eINSTANCE.getSubmodelT_IdShort();
+
+		/**
+		 * The meta object literal for the '<em><b>Category</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SUBMODEL_T__CATEGORY = eINSTANCE.getSubmodelT_Category();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_T__DESCRIPTION = eINSTANCE.getSubmodelT_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Parent</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SUBMODEL_T__PARENT = eINSTANCE.getSubmodelT_Parent();
+
+		/**
+		 * The meta object literal for the '<em><b>Identification</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_T__IDENTIFICATION = eINSTANCE.getSubmodelT_Identification();
+
+		/**
+		 * The meta object literal for the '<em><b>Administration</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_T__ADMINISTRATION = eINSTANCE.getSubmodelT_Administration();
+
+		/**
+		 * The meta object literal for the '<em><b>Embedded Data Specification</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_T__EMBEDDED_DATA_SPECIFICATION = eINSTANCE.getSubmodelT_EmbeddedDataSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Semantic Id</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_T__SEMANTIC_ID = eINSTANCE.getSubmodelT_SemanticId();
+
+		/**
+		 * The meta object literal for the '<em><b>Kind</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute SUBMODEL_T__KIND = eINSTANCE.getSubmodelT_Kind();
+
+		/**
+		 * The meta object literal for the '<em><b>Qualifier</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_T__QUALIFIER = eINSTANCE.getSubmodelT_Qualifier();
+
+		/**
+		 * The meta object literal for the '<em><b>Submodel Elements</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference SUBMODEL_T__SUBMODEL_ELEMENTS = eINSTANCE.getSubmodelT_SubmodelElements();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ViewsTImpl <em>Views T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ViewsTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getViewsT()
+		 * @generated
+		 */
+		EClass VIEWS_T = eINSTANCE.getViewsT();
+
+		/**
+		 * The meta object literal for the '<em><b>View</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VIEWS_T__VIEW = eINSTANCE.getViewsT_View();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.impl.ViewTImpl <em>View T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.impl.ViewTImpl
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getViewT()
+		 * @generated
+		 */
+		EClass VIEW_T = eINSTANCE.getViewT();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Short</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VIEW_T__ID_SHORT = eINSTANCE.getViewT_IdShort();
+
+		/**
+		 * The meta object literal for the '<em><b>Category</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute VIEW_T__CATEGORY = eINSTANCE.getViewT_Category();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VIEW_T__DESCRIPTION = eINSTANCE.getViewT_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Parent</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute VIEW_T__PARENT = eINSTANCE.getViewT_Parent();
+
+		/**
+		 * The meta object literal for the '<em><b>Semantic Id</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VIEW_T__SEMANTIC_ID = eINSTANCE.getViewT_SemanticId();
+
+		/**
+		 * The meta object literal for the '<em><b>Embedded Data Specification</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VIEW_T__EMBEDDED_DATA_SPECIFICATION = eINSTANCE.getViewT_EmbeddedDataSpecification();
+
+		/**
+		 * The meta object literal for the '<em><b>Contained Elements</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference VIEW_T__CONTAINED_ELEMENTS = eINSTANCE.getViewT_ContainedElements();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.IdTypeType <em>Id Type Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.IdTypeType
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdTypeType()
+		 * @generated
+		 */
+		EEnum ID_TYPE_TYPE = eINSTANCE.getIdTypeType();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.IdTypeType1 <em>Id Type Type1</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.IdTypeType1
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdTypeType1()
+		 * @generated
+		 */
+		EEnum ID_TYPE_TYPE1 = eINSTANCE.getIdTypeType1();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.KindType <em>Kind Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.KindType
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getKindType()
+		 * @generated
+		 */
+		EEnum KIND_TYPE = eINSTANCE.getKindType();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.aas._1._0.TypeType <em>Type Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.TypeType
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getTypeType()
+		 * @generated
+		 */
+		EEnum TYPE_TYPE = eINSTANCE.getTypeType();
+
+		/**
+		 * The meta object literal for the '<em>Id Type Type Object</em>' data type.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.IdTypeType
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdTypeTypeObject()
+		 * @generated
+		 */
+		EDataType ID_TYPE_TYPE_OBJECT = eINSTANCE.getIdTypeTypeObject();
+
+		/**
+		 * The meta object literal for the '<em>Id Type Type Object1</em>' data type.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.IdTypeType1
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getIdTypeTypeObject1()
+		 * @generated
+		 */
+		EDataType ID_TYPE_TYPE_OBJECT1 = eINSTANCE.getIdTypeTypeObject1();
+
+		/**
+		 * The meta object literal for the '<em>Kind Type Object</em>' data type.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.KindType
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getKindTypeObject()
+		 * @generated
+		 */
+		EDataType KIND_TYPE_OBJECT = eINSTANCE.getKindTypeObject();
+
+		/**
+		 * The meta object literal for the '<em>Type Type Object</em>' data type.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.aas._1._0.TypeType
+		 * @see io.shell.admin.aas._1._0.impl._0PackageImpl#getTypeTypeObject()
+		 * @generated
+		 */
+		EDataType TYPE_TYPE_OBJECT = eINSTANCE.getTypeTypeObject();
+
+	}
+
+} //_0Package
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AasenvTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AasenvTImpl.java
new file mode 100644
index 0000000..134181b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AasenvTImpl.java
@@ -0,0 +1,392 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AasenvT;
+import io.shell.admin.aas._1._0.AssetAdministrationShellsT;
+import io.shell.admin.aas._1._0.AssetsT;
+import io.shell.admin.aas._1._0.ConceptDescriptionsT;
+import io.shell.admin.aas._1._0.SubmodelsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Aasenv T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AasenvTImpl#getAssetAdministrationShells <em>Asset Administration Shells</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AasenvTImpl#getAssets <em>Assets</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AasenvTImpl#getSubmodels <em>Submodels</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AasenvTImpl#getConceptDescriptions <em>Concept Descriptions</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AasenvTImpl extends MinimalEObjectImpl.Container implements AasenvT {
+	/**
+	 * The cached value of the '{@link #getAssetAdministrationShells() <em>Asset Administration Shells</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssetAdministrationShells()
+	 * @generated
+	 * @ordered
+	 */
+	protected AssetAdministrationShellsT assetAdministrationShells;
+
+	/**
+	 * The cached value of the '{@link #getAssets() <em>Assets</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssets()
+	 * @generated
+	 * @ordered
+	 */
+	protected AssetsT assets;
+
+	/**
+	 * The cached value of the '{@link #getSubmodels() <em>Submodels</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubmodels()
+	 * @generated
+	 * @ordered
+	 */
+	protected SubmodelsT submodels;
+
+	/**
+	 * The cached value of the '{@link #getConceptDescriptions() <em>Concept Descriptions</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConceptDescriptions()
+	 * @generated
+	 * @ordered
+	 */
+	protected ConceptDescriptionsT conceptDescriptions;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AasenvTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.AASENV_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssetAdministrationShellsT getAssetAdministrationShells() {
+		return assetAdministrationShells;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAssetAdministrationShells(AssetAdministrationShellsT newAssetAdministrationShells, NotificationChain msgs) {
+		AssetAdministrationShellsT oldAssetAdministrationShells = assetAdministrationShells;
+		assetAdministrationShells = newAssetAdministrationShells;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.AASENV_T__ASSET_ADMINISTRATION_SHELLS, oldAssetAdministrationShells, newAssetAdministrationShells);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAssetAdministrationShells(AssetAdministrationShellsT newAssetAdministrationShells) {
+		if (newAssetAdministrationShells != assetAdministrationShells) {
+			NotificationChain msgs = null;
+			if (assetAdministrationShells != null)
+				msgs = ((InternalEObject)assetAdministrationShells).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.AASENV_T__ASSET_ADMINISTRATION_SHELLS, null, msgs);
+			if (newAssetAdministrationShells != null)
+				msgs = ((InternalEObject)newAssetAdministrationShells).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.AASENV_T__ASSET_ADMINISTRATION_SHELLS, null, msgs);
+			msgs = basicSetAssetAdministrationShells(newAssetAdministrationShells, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.AASENV_T__ASSET_ADMINISTRATION_SHELLS, newAssetAdministrationShells, newAssetAdministrationShells));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssetsT getAssets() {
+		return assets;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAssets(AssetsT newAssets, NotificationChain msgs) {
+		AssetsT oldAssets = assets;
+		assets = newAssets;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.AASENV_T__ASSETS, oldAssets, newAssets);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAssets(AssetsT newAssets) {
+		if (newAssets != assets) {
+			NotificationChain msgs = null;
+			if (assets != null)
+				msgs = ((InternalEObject)assets).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.AASENV_T__ASSETS, null, msgs);
+			if (newAssets != null)
+				msgs = ((InternalEObject)newAssets).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.AASENV_T__ASSETS, null, msgs);
+			msgs = basicSetAssets(newAssets, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.AASENV_T__ASSETS, newAssets, newAssets));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelsT getSubmodels() {
+		return submodels;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSubmodels(SubmodelsT newSubmodels, NotificationChain msgs) {
+		SubmodelsT oldSubmodels = submodels;
+		submodels = newSubmodels;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.AASENV_T__SUBMODELS, oldSubmodels, newSubmodels);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubmodels(SubmodelsT newSubmodels) {
+		if (newSubmodels != submodels) {
+			NotificationChain msgs = null;
+			if (submodels != null)
+				msgs = ((InternalEObject)submodels).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.AASENV_T__SUBMODELS, null, msgs);
+			if (newSubmodels != null)
+				msgs = ((InternalEObject)newSubmodels).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.AASENV_T__SUBMODELS, null, msgs);
+			msgs = basicSetSubmodels(newSubmodels, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.AASENV_T__SUBMODELS, newSubmodels, newSubmodels));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConceptDescriptionsT getConceptDescriptions() {
+		return conceptDescriptions;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetConceptDescriptions(ConceptDescriptionsT newConceptDescriptions, NotificationChain msgs) {
+		ConceptDescriptionsT oldConceptDescriptions = conceptDescriptions;
+		conceptDescriptions = newConceptDescriptions;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.AASENV_T__CONCEPT_DESCRIPTIONS, oldConceptDescriptions, newConceptDescriptions);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConceptDescriptions(ConceptDescriptionsT newConceptDescriptions) {
+		if (newConceptDescriptions != conceptDescriptions) {
+			NotificationChain msgs = null;
+			if (conceptDescriptions != null)
+				msgs = ((InternalEObject)conceptDescriptions).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.AASENV_T__CONCEPT_DESCRIPTIONS, null, msgs);
+			if (newConceptDescriptions != null)
+				msgs = ((InternalEObject)newConceptDescriptions).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.AASENV_T__CONCEPT_DESCRIPTIONS, null, msgs);
+			msgs = basicSetConceptDescriptions(newConceptDescriptions, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.AASENV_T__CONCEPT_DESCRIPTIONS, newConceptDescriptions, newConceptDescriptions));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.AASENV_T__ASSET_ADMINISTRATION_SHELLS:
+				return basicSetAssetAdministrationShells(null, msgs);
+			case _0Package.AASENV_T__ASSETS:
+				return basicSetAssets(null, msgs);
+			case _0Package.AASENV_T__SUBMODELS:
+				return basicSetSubmodels(null, msgs);
+			case _0Package.AASENV_T__CONCEPT_DESCRIPTIONS:
+				return basicSetConceptDescriptions(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 _0Package.AASENV_T__ASSET_ADMINISTRATION_SHELLS:
+				return getAssetAdministrationShells();
+			case _0Package.AASENV_T__ASSETS:
+				return getAssets();
+			case _0Package.AASENV_T__SUBMODELS:
+				return getSubmodels();
+			case _0Package.AASENV_T__CONCEPT_DESCRIPTIONS:
+				return getConceptDescriptions();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.AASENV_T__ASSET_ADMINISTRATION_SHELLS:
+				setAssetAdministrationShells((AssetAdministrationShellsT)newValue);
+				return;
+			case _0Package.AASENV_T__ASSETS:
+				setAssets((AssetsT)newValue);
+				return;
+			case _0Package.AASENV_T__SUBMODELS:
+				setSubmodels((SubmodelsT)newValue);
+				return;
+			case _0Package.AASENV_T__CONCEPT_DESCRIPTIONS:
+				setConceptDescriptions((ConceptDescriptionsT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.AASENV_T__ASSET_ADMINISTRATION_SHELLS:
+				setAssetAdministrationShells((AssetAdministrationShellsT)null);
+				return;
+			case _0Package.AASENV_T__ASSETS:
+				setAssets((AssetsT)null);
+				return;
+			case _0Package.AASENV_T__SUBMODELS:
+				setSubmodels((SubmodelsT)null);
+				return;
+			case _0Package.AASENV_T__CONCEPT_DESCRIPTIONS:
+				setConceptDescriptions((ConceptDescriptionsT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.AASENV_T__ASSET_ADMINISTRATION_SHELLS:
+				return assetAdministrationShells != null;
+			case _0Package.AASENV_T__ASSETS:
+				return assets != null;
+			case _0Package.AASENV_T__SUBMODELS:
+				return submodels != null;
+			case _0Package.AASENV_T__CONCEPT_DESCRIPTIONS:
+				return conceptDescriptions != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //AasenvTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AdministrationTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AdministrationTImpl.java
new file mode 100644
index 0000000..8af3aa4
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AdministrationTImpl.java
@@ -0,0 +1,232 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AdministrationT;
+import io.shell.admin.aas._1._0._0Package;
+
+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.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Administration T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AdministrationTImpl#getVersion <em>Version</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AdministrationTImpl#getRevision <em>Revision</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AdministrationTImpl extends MinimalEObjectImpl.Container implements AdministrationT {
+	/**
+	 * The default value of the '{@link #getVersion() <em>Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VERSION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected String version = VERSION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRevision() <em>Revision</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRevision()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REVISION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRevision() <em>Revision</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRevision()
+	 * @generated
+	 * @ordered
+	 */
+	protected String revision = REVISION_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AdministrationTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.ADMINISTRATION_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getVersion() {
+		return version;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setVersion(String newVersion) {
+		String oldVersion = version;
+		version = newVersion;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ADMINISTRATION_T__VERSION, oldVersion, version));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getRevision() {
+		return revision;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRevision(String newRevision) {
+		String oldRevision = revision;
+		revision = newRevision;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ADMINISTRATION_T__REVISION, oldRevision, revision));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.ADMINISTRATION_T__VERSION:
+				return getVersion();
+			case _0Package.ADMINISTRATION_T__REVISION:
+				return getRevision();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.ADMINISTRATION_T__VERSION:
+				setVersion((String)newValue);
+				return;
+			case _0Package.ADMINISTRATION_T__REVISION:
+				setRevision((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.ADMINISTRATION_T__VERSION:
+				setVersion(VERSION_EDEFAULT);
+				return;
+			case _0Package.ADMINISTRATION_T__REVISION:
+				setRevision(REVISION_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.ADMINISTRATION_T__VERSION:
+				return VERSION_EDEFAULT == null ? version != null : !VERSION_EDEFAULT.equals(version);
+			case _0Package.ADMINISTRATION_T__REVISION:
+				return REVISION_EDEFAULT == null ? revision != null : !REVISION_EDEFAULT.equals(revision);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (version: ");
+		result.append(version);
+		result.append(", revision: ");
+		result.append(revision);
+		result.append(')');
+		return result.toString();
+	}
+
+} //AdministrationTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetAdministrationShellTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetAdministrationShellTImpl.java
new file mode 100644
index 0000000..42e532b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetAdministrationShellTImpl.java
@@ -0,0 +1,893 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AdministrationT;
+import io.shell.admin.aas._1._0.AssetAdministrationShellT;
+import io.shell.admin.aas._1._0.ConceptDictionariesT;
+import io.shell.admin.aas._1._0.EmbeddedDataSpecificationT;
+import io.shell.admin.aas._1._0.IdShortT;
+import io.shell.admin.aas._1._0.IdentificationT;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0.SubmodelRefsT;
+import io.shell.admin.aas._1._0.ViewsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+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>Asset Administration Shell T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getIdentification <em>Identification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getAdministration <em>Administration</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getDerivedFrom <em>Derived From</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getAssetRef <em>Asset Ref</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getSubmodelRefs <em>Submodel Refs</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getViews <em>Views</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellTImpl#getConceptDictionaries <em>Concept Dictionaries</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AssetAdministrationShellTImpl extends MinimalEObjectImpl.Container implements AssetAdministrationShellT {
+	/**
+	 * The cached value of the '{@link #getIdShort() <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdShort()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdShortT idShort;
+
+	/**
+	 * The default value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CATEGORY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected String category = CATEGORY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT description;
+
+	/**
+	 * The default value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String parent = PARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getIdentification() <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdentification()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdentificationT identification;
+
+	/**
+	 * The cached value of the '{@link #getAdministration() <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAdministration()
+	 * @generated
+	 * @ordered
+	 */
+	protected AdministrationT administration;
+
+	/**
+	 * The cached value of the '{@link #getEmbeddedDataSpecification() <em>Embedded Data Specification</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbeddedDataSpecification()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EmbeddedDataSpecificationT> embeddedDataSpecification;
+
+	/**
+	 * The cached value of the '{@link #getDerivedFrom() <em>Derived From</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDerivedFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT derivedFrom;
+
+	/**
+	 * The cached value of the '{@link #getAssetRef() <em>Asset Ref</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssetRef()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT assetRef;
+
+	/**
+	 * The cached value of the '{@link #getSubmodelRefs() <em>Submodel Refs</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubmodelRefs()
+	 * @generated
+	 * @ordered
+	 */
+	protected SubmodelRefsT submodelRefs;
+
+	/**
+	 * The cached value of the '{@link #getViews() <em>Views</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getViews()
+	 * @generated
+	 * @ordered
+	 */
+	protected ViewsT views;
+
+	/**
+	 * The cached value of the '{@link #getConceptDictionaries() <em>Concept Dictionaries</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConceptDictionaries()
+	 * @generated
+	 * @ordered
+	 */
+	protected ConceptDictionariesT conceptDictionaries;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AssetAdministrationShellTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.ASSET_ADMINISTRATION_SHELL_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdShortT getIdShort() {
+		return idShort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdShort(IdShortT newIdShort, NotificationChain msgs) {
+		IdShortT oldIdShort = idShort;
+		idShort = newIdShort;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__ID_SHORT, oldIdShort, newIdShort);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdShort(IdShortT newIdShort) {
+		if (newIdShort != idShort) {
+			NotificationChain msgs = null;
+			if (idShort != null)
+				msgs = ((InternalEObject)idShort).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__ID_SHORT, null, msgs);
+			if (newIdShort != null)
+				msgs = ((InternalEObject)newIdShort).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__ID_SHORT, null, msgs);
+			msgs = basicSetIdShort(newIdShort, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__ID_SHORT, newIdShort, newIdShort));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCategory() {
+		return category;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCategory(String newCategory) {
+		String oldCategory = category;
+		category = newCategory;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__CATEGORY, oldCategory, category));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(LangStringsT newDescription, NotificationChain msgs) {
+		LangStringsT oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(LangStringsT newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(String newParent) {
+		String oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdentificationT getIdentification() {
+		return identification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdentification(IdentificationT newIdentification, NotificationChain msgs) {
+		IdentificationT oldIdentification = identification;
+		identification = newIdentification;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION, oldIdentification, newIdentification);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdentification(IdentificationT newIdentification) {
+		if (newIdentification != identification) {
+			NotificationChain msgs = null;
+			if (identification != null)
+				msgs = ((InternalEObject)identification).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION, null, msgs);
+			if (newIdentification != null)
+				msgs = ((InternalEObject)newIdentification).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION, null, msgs);
+			msgs = basicSetIdentification(newIdentification, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION, newIdentification, newIdentification));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AdministrationT getAdministration() {
+		return administration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAdministration(AdministrationT newAdministration, NotificationChain msgs) {
+		AdministrationT oldAdministration = administration;
+		administration = newAdministration;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION, oldAdministration, newAdministration);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAdministration(AdministrationT newAdministration) {
+		if (newAdministration != administration) {
+			NotificationChain msgs = null;
+			if (administration != null)
+				msgs = ((InternalEObject)administration).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION, null, msgs);
+			if (newAdministration != null)
+				msgs = ((InternalEObject)newAdministration).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION, null, msgs);
+			msgs = basicSetAdministration(newAdministration, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION, newAdministration, newAdministration));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification() {
+		if (embeddedDataSpecification == null) {
+			embeddedDataSpecification = new EObjectContainmentEList<EmbeddedDataSpecificationT>(EmbeddedDataSpecificationT.class, this, _0Package.ASSET_ADMINISTRATION_SHELL_T__EMBEDDED_DATA_SPECIFICATION);
+		}
+		return embeddedDataSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getDerivedFrom() {
+		return derivedFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDerivedFrom(ReferenceT newDerivedFrom, NotificationChain msgs) {
+		ReferenceT oldDerivedFrom = derivedFrom;
+		derivedFrom = newDerivedFrom;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM, oldDerivedFrom, newDerivedFrom);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDerivedFrom(ReferenceT newDerivedFrom) {
+		if (newDerivedFrom != derivedFrom) {
+			NotificationChain msgs = null;
+			if (derivedFrom != null)
+				msgs = ((InternalEObject)derivedFrom).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM, null, msgs);
+			if (newDerivedFrom != null)
+				msgs = ((InternalEObject)newDerivedFrom).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM, null, msgs);
+			msgs = basicSetDerivedFrom(newDerivedFrom, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM, newDerivedFrom, newDerivedFrom));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getAssetRef() {
+		return assetRef;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAssetRef(ReferenceT newAssetRef, NotificationChain msgs) {
+		ReferenceT oldAssetRef = assetRef;
+		assetRef = newAssetRef;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__ASSET_REF, oldAssetRef, newAssetRef);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAssetRef(ReferenceT newAssetRef) {
+		if (newAssetRef != assetRef) {
+			NotificationChain msgs = null;
+			if (assetRef != null)
+				msgs = ((InternalEObject)assetRef).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__ASSET_REF, null, msgs);
+			if (newAssetRef != null)
+				msgs = ((InternalEObject)newAssetRef).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__ASSET_REF, null, msgs);
+			msgs = basicSetAssetRef(newAssetRef, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__ASSET_REF, newAssetRef, newAssetRef));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelRefsT getSubmodelRefs() {
+		return submodelRefs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSubmodelRefs(SubmodelRefsT newSubmodelRefs, NotificationChain msgs) {
+		SubmodelRefsT oldSubmodelRefs = submodelRefs;
+		submodelRefs = newSubmodelRefs;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS, oldSubmodelRefs, newSubmodelRefs);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubmodelRefs(SubmodelRefsT newSubmodelRefs) {
+		if (newSubmodelRefs != submodelRefs) {
+			NotificationChain msgs = null;
+			if (submodelRefs != null)
+				msgs = ((InternalEObject)submodelRefs).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS, null, msgs);
+			if (newSubmodelRefs != null)
+				msgs = ((InternalEObject)newSubmodelRefs).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS, null, msgs);
+			msgs = basicSetSubmodelRefs(newSubmodelRefs, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS, newSubmodelRefs, newSubmodelRefs));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ViewsT getViews() {
+		return views;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetViews(ViewsT newViews, NotificationChain msgs) {
+		ViewsT oldViews = views;
+		views = newViews;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__VIEWS, oldViews, newViews);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setViews(ViewsT newViews) {
+		if (newViews != views) {
+			NotificationChain msgs = null;
+			if (views != null)
+				msgs = ((InternalEObject)views).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__VIEWS, null, msgs);
+			if (newViews != null)
+				msgs = ((InternalEObject)newViews).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__VIEWS, null, msgs);
+			msgs = basicSetViews(newViews, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__VIEWS, newViews, newViews));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConceptDictionariesT getConceptDictionaries() {
+		return conceptDictionaries;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetConceptDictionaries(ConceptDictionariesT newConceptDictionaries, NotificationChain msgs) {
+		ConceptDictionariesT oldConceptDictionaries = conceptDictionaries;
+		conceptDictionaries = newConceptDictionaries;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES, oldConceptDictionaries, newConceptDictionaries);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConceptDictionaries(ConceptDictionariesT newConceptDictionaries) {
+		if (newConceptDictionaries != conceptDictionaries) {
+			NotificationChain msgs = null;
+			if (conceptDictionaries != null)
+				msgs = ((InternalEObject)conceptDictionaries).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES, null, msgs);
+			if (newConceptDictionaries != null)
+				msgs = ((InternalEObject)newConceptDictionaries).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES, null, msgs);
+			msgs = basicSetConceptDictionaries(newConceptDictionaries, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES, newConceptDictionaries, newConceptDictionaries));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ID_SHORT:
+				return basicSetIdShort(null, msgs);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION:
+				return basicSetIdentification(null, msgs);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION:
+				return basicSetAdministration(null, msgs);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__EMBEDDED_DATA_SPECIFICATION:
+				return ((InternalEList<?>)getEmbeddedDataSpecification()).basicRemove(otherEnd, msgs);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM:
+				return basicSetDerivedFrom(null, msgs);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ASSET_REF:
+				return basicSetAssetRef(null, msgs);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS:
+				return basicSetSubmodelRefs(null, msgs);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__VIEWS:
+				return basicSetViews(null, msgs);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES:
+				return basicSetConceptDictionaries(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 _0Package.ASSET_ADMINISTRATION_SHELL_T__ID_SHORT:
+				return getIdShort();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__CATEGORY:
+				return getCategory();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION:
+				return getDescription();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__PARENT:
+				return getParent();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION:
+				return getIdentification();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION:
+				return getAdministration();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__EMBEDDED_DATA_SPECIFICATION:
+				return getEmbeddedDataSpecification();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM:
+				return getDerivedFrom();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ASSET_REF:
+				return getAssetRef();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS:
+				return getSubmodelRefs();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__VIEWS:
+				return getViews();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES:
+				return getConceptDictionaries();
+		}
+		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 _0Package.ASSET_ADMINISTRATION_SHELL_T__ID_SHORT:
+				setIdShort((IdShortT)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__CATEGORY:
+				setCategory((String)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION:
+				setDescription((LangStringsT)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__PARENT:
+				setParent((String)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION:
+				setIdentification((IdentificationT)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION:
+				setAdministration((AdministrationT)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				getEmbeddedDataSpecification().addAll((Collection<? extends EmbeddedDataSpecificationT>)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM:
+				setDerivedFrom((ReferenceT)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ASSET_REF:
+				setAssetRef((ReferenceT)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS:
+				setSubmodelRefs((SubmodelRefsT)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__VIEWS:
+				setViews((ViewsT)newValue);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES:
+				setConceptDictionaries((ConceptDictionariesT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ID_SHORT:
+				setIdShort((IdShortT)null);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__CATEGORY:
+				setCategory(CATEGORY_EDEFAULT);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION:
+				setDescription((LangStringsT)null);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__PARENT:
+				setParent(PARENT_EDEFAULT);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION:
+				setIdentification((IdentificationT)null);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION:
+				setAdministration((AdministrationT)null);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM:
+				setDerivedFrom((ReferenceT)null);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ASSET_REF:
+				setAssetRef((ReferenceT)null);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS:
+				setSubmodelRefs((SubmodelRefsT)null);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__VIEWS:
+				setViews((ViewsT)null);
+				return;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES:
+				setConceptDictionaries((ConceptDictionariesT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ID_SHORT:
+				return idShort != null;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__CATEGORY:
+				return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION:
+				return description != null;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__PARENT:
+				return PARENT_EDEFAULT == null ? parent != null : !PARENT_EDEFAULT.equals(parent);
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION:
+				return identification != null;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION:
+				return administration != null;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__EMBEDDED_DATA_SPECIFICATION:
+				return embeddedDataSpecification != null && !embeddedDataSpecification.isEmpty();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM:
+				return derivedFrom != null;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__ASSET_REF:
+				return assetRef != null;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS:
+				return submodelRefs != null;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__VIEWS:
+				return views != null;
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES:
+				return conceptDictionaries != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (category: ");
+		result.append(category);
+		result.append(", parent: ");
+		result.append(parent);
+		result.append(')');
+		return result.toString();
+	}
+
+} //AssetAdministrationShellTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetAdministrationShellsTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetAdministrationShellsTImpl.java
new file mode 100644
index 0000000..80ea0af
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetAdministrationShellsTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AssetAdministrationShellT;
+import io.shell.admin.aas._1._0.AssetAdministrationShellsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Asset Administration Shells T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetAdministrationShellsTImpl#getAssetAdministrationShell <em>Asset Administration Shell</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AssetAdministrationShellsTImpl extends MinimalEObjectImpl.Container implements AssetAdministrationShellsT {
+	/**
+	 * The cached value of the '{@link #getAssetAdministrationShell() <em>Asset Administration Shell</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssetAdministrationShell()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<AssetAdministrationShellT> assetAdministrationShell;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AssetAdministrationShellsTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.ASSET_ADMINISTRATION_SHELLS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<AssetAdministrationShellT> getAssetAdministrationShell() {
+		if (assetAdministrationShell == null) {
+			assetAdministrationShell = new EObjectContainmentEList<AssetAdministrationShellT>(AssetAdministrationShellT.class, this, _0Package.ASSET_ADMINISTRATION_SHELLS_T__ASSET_ADMINISTRATION_SHELL);
+		}
+		return assetAdministrationShell;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.ASSET_ADMINISTRATION_SHELLS_T__ASSET_ADMINISTRATION_SHELL:
+				return ((InternalEList<?>)getAssetAdministrationShell()).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 _0Package.ASSET_ADMINISTRATION_SHELLS_T__ASSET_ADMINISTRATION_SHELL:
+				return getAssetAdministrationShell();
+		}
+		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 _0Package.ASSET_ADMINISTRATION_SHELLS_T__ASSET_ADMINISTRATION_SHELL:
+				getAssetAdministrationShell().clear();
+				getAssetAdministrationShell().addAll((Collection<? extends AssetAdministrationShellT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.ASSET_ADMINISTRATION_SHELLS_T__ASSET_ADMINISTRATION_SHELL:
+				getAssetAdministrationShell().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.ASSET_ADMINISTRATION_SHELLS_T__ASSET_ADMINISTRATION_SHELL:
+				return assetAdministrationShell != null && !assetAdministrationShell.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //AssetAdministrationShellsTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetTImpl.java
new file mode 100644
index 0000000..f1f4326
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetTImpl.java
@@ -0,0 +1,715 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AdministrationT;
+import io.shell.admin.aas._1._0.AssetT;
+import io.shell.admin.aas._1._0.EmbeddedDataSpecificationT;
+import io.shell.admin.aas._1._0.IdShortT;
+import io.shell.admin.aas._1._0.IdentificationT;
+import io.shell.admin.aas._1._0.KindType;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+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>Asset T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetTImpl#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetTImpl#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetTImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetTImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetTImpl#getIdentification <em>Identification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetTImpl#getAdministration <em>Administration</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetTImpl#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetTImpl#getKind <em>Kind</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetTImpl#getAssetIdentificationModelRef <em>Asset Identification Model Ref</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AssetTImpl extends MinimalEObjectImpl.Container implements AssetT {
+	/**
+	 * The cached value of the '{@link #getIdShort() <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdShort()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdShortT idShort;
+
+	/**
+	 * The default value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CATEGORY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected String category = CATEGORY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT description;
+
+	/**
+	 * The default value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String parent = PARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getIdentification() <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdentification()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdentificationT identification;
+
+	/**
+	 * The cached value of the '{@link #getAdministration() <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAdministration()
+	 * @generated
+	 * @ordered
+	 */
+	protected AdministrationT administration;
+
+	/**
+	 * The cached value of the '{@link #getEmbeddedDataSpecification() <em>Embedded Data Specification</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbeddedDataSpecification()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EmbeddedDataSpecificationT> embeddedDataSpecification;
+
+	/**
+	 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final KindType KIND_EDEFAULT = KindType.TYPE;
+
+	/**
+	 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected KindType kind = KIND_EDEFAULT;
+
+	/**
+	 * This is true if the Kind attribute has been set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean kindESet;
+
+	/**
+	 * The cached value of the '{@link #getAssetIdentificationModelRef() <em>Asset Identification Model Ref</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAssetIdentificationModelRef()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT assetIdentificationModelRef;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AssetTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.ASSET_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdShortT getIdShort() {
+		return idShort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdShort(IdShortT newIdShort, NotificationChain msgs) {
+		IdShortT oldIdShort = idShort;
+		idShort = newIdShort;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__ID_SHORT, oldIdShort, newIdShort);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdShort(IdShortT newIdShort) {
+		if (newIdShort != idShort) {
+			NotificationChain msgs = null;
+			if (idShort != null)
+				msgs = ((InternalEObject)idShort).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__ID_SHORT, null, msgs);
+			if (newIdShort != null)
+				msgs = ((InternalEObject)newIdShort).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__ID_SHORT, null, msgs);
+			msgs = basicSetIdShort(newIdShort, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__ID_SHORT, newIdShort, newIdShort));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCategory() {
+		return category;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCategory(String newCategory) {
+		String oldCategory = category;
+		category = newCategory;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__CATEGORY, oldCategory, category));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(LangStringsT newDescription, NotificationChain msgs) {
+		LangStringsT oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(LangStringsT newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(String newParent) {
+		String oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdentificationT getIdentification() {
+		return identification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdentification(IdentificationT newIdentification, NotificationChain msgs) {
+		IdentificationT oldIdentification = identification;
+		identification = newIdentification;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__IDENTIFICATION, oldIdentification, newIdentification);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdentification(IdentificationT newIdentification) {
+		if (newIdentification != identification) {
+			NotificationChain msgs = null;
+			if (identification != null)
+				msgs = ((InternalEObject)identification).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__IDENTIFICATION, null, msgs);
+			if (newIdentification != null)
+				msgs = ((InternalEObject)newIdentification).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__IDENTIFICATION, null, msgs);
+			msgs = basicSetIdentification(newIdentification, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__IDENTIFICATION, newIdentification, newIdentification));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AdministrationT getAdministration() {
+		return administration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAdministration(AdministrationT newAdministration, NotificationChain msgs) {
+		AdministrationT oldAdministration = administration;
+		administration = newAdministration;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__ADMINISTRATION, oldAdministration, newAdministration);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAdministration(AdministrationT newAdministration) {
+		if (newAdministration != administration) {
+			NotificationChain msgs = null;
+			if (administration != null)
+				msgs = ((InternalEObject)administration).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__ADMINISTRATION, null, msgs);
+			if (newAdministration != null)
+				msgs = ((InternalEObject)newAdministration).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__ADMINISTRATION, null, msgs);
+			msgs = basicSetAdministration(newAdministration, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__ADMINISTRATION, newAdministration, newAdministration));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification() {
+		if (embeddedDataSpecification == null) {
+			embeddedDataSpecification = new EObjectContainmentEList<EmbeddedDataSpecificationT>(EmbeddedDataSpecificationT.class, this, _0Package.ASSET_T__EMBEDDED_DATA_SPECIFICATION);
+		}
+		return embeddedDataSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public KindType getKind() {
+		return kind;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setKind(KindType newKind) {
+		KindType oldKind = kind;
+		kind = newKind == null ? KIND_EDEFAULT : newKind;
+		boolean oldKindESet = kindESet;
+		kindESet = true;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__KIND, oldKind, kind, !oldKindESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void unsetKind() {
+		KindType oldKind = kind;
+		boolean oldKindESet = kindESet;
+		kind = KIND_EDEFAULT;
+		kindESet = false;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.UNSET, _0Package.ASSET_T__KIND, oldKind, KIND_EDEFAULT, oldKindESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isSetKind() {
+		return kindESet;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getAssetIdentificationModelRef() {
+		return assetIdentificationModelRef;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAssetIdentificationModelRef(ReferenceT newAssetIdentificationModelRef, NotificationChain msgs) {
+		ReferenceT oldAssetIdentificationModelRef = assetIdentificationModelRef;
+		assetIdentificationModelRef = newAssetIdentificationModelRef;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__ASSET_IDENTIFICATION_MODEL_REF, oldAssetIdentificationModelRef, newAssetIdentificationModelRef);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAssetIdentificationModelRef(ReferenceT newAssetIdentificationModelRef) {
+		if (newAssetIdentificationModelRef != assetIdentificationModelRef) {
+			NotificationChain msgs = null;
+			if (assetIdentificationModelRef != null)
+				msgs = ((InternalEObject)assetIdentificationModelRef).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__ASSET_IDENTIFICATION_MODEL_REF, null, msgs);
+			if (newAssetIdentificationModelRef != null)
+				msgs = ((InternalEObject)newAssetIdentificationModelRef).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.ASSET_T__ASSET_IDENTIFICATION_MODEL_REF, null, msgs);
+			msgs = basicSetAssetIdentificationModelRef(newAssetIdentificationModelRef, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ASSET_T__ASSET_IDENTIFICATION_MODEL_REF, newAssetIdentificationModelRef, newAssetIdentificationModelRef));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.ASSET_T__ID_SHORT:
+				return basicSetIdShort(null, msgs);
+			case _0Package.ASSET_T__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case _0Package.ASSET_T__IDENTIFICATION:
+				return basicSetIdentification(null, msgs);
+			case _0Package.ASSET_T__ADMINISTRATION:
+				return basicSetAdministration(null, msgs);
+			case _0Package.ASSET_T__EMBEDDED_DATA_SPECIFICATION:
+				return ((InternalEList<?>)getEmbeddedDataSpecification()).basicRemove(otherEnd, msgs);
+			case _0Package.ASSET_T__ASSET_IDENTIFICATION_MODEL_REF:
+				return basicSetAssetIdentificationModelRef(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 _0Package.ASSET_T__ID_SHORT:
+				return getIdShort();
+			case _0Package.ASSET_T__CATEGORY:
+				return getCategory();
+			case _0Package.ASSET_T__DESCRIPTION:
+				return getDescription();
+			case _0Package.ASSET_T__PARENT:
+				return getParent();
+			case _0Package.ASSET_T__IDENTIFICATION:
+				return getIdentification();
+			case _0Package.ASSET_T__ADMINISTRATION:
+				return getAdministration();
+			case _0Package.ASSET_T__EMBEDDED_DATA_SPECIFICATION:
+				return getEmbeddedDataSpecification();
+			case _0Package.ASSET_T__KIND:
+				return getKind();
+			case _0Package.ASSET_T__ASSET_IDENTIFICATION_MODEL_REF:
+				return getAssetIdentificationModelRef();
+		}
+		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 _0Package.ASSET_T__ID_SHORT:
+				setIdShort((IdShortT)newValue);
+				return;
+			case _0Package.ASSET_T__CATEGORY:
+				setCategory((String)newValue);
+				return;
+			case _0Package.ASSET_T__DESCRIPTION:
+				setDescription((LangStringsT)newValue);
+				return;
+			case _0Package.ASSET_T__PARENT:
+				setParent((String)newValue);
+				return;
+			case _0Package.ASSET_T__IDENTIFICATION:
+				setIdentification((IdentificationT)newValue);
+				return;
+			case _0Package.ASSET_T__ADMINISTRATION:
+				setAdministration((AdministrationT)newValue);
+				return;
+			case _0Package.ASSET_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				getEmbeddedDataSpecification().addAll((Collection<? extends EmbeddedDataSpecificationT>)newValue);
+				return;
+			case _0Package.ASSET_T__KIND:
+				setKind((KindType)newValue);
+				return;
+			case _0Package.ASSET_T__ASSET_IDENTIFICATION_MODEL_REF:
+				setAssetIdentificationModelRef((ReferenceT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.ASSET_T__ID_SHORT:
+				setIdShort((IdShortT)null);
+				return;
+			case _0Package.ASSET_T__CATEGORY:
+				setCategory(CATEGORY_EDEFAULT);
+				return;
+			case _0Package.ASSET_T__DESCRIPTION:
+				setDescription((LangStringsT)null);
+				return;
+			case _0Package.ASSET_T__PARENT:
+				setParent(PARENT_EDEFAULT);
+				return;
+			case _0Package.ASSET_T__IDENTIFICATION:
+				setIdentification((IdentificationT)null);
+				return;
+			case _0Package.ASSET_T__ADMINISTRATION:
+				setAdministration((AdministrationT)null);
+				return;
+			case _0Package.ASSET_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				return;
+			case _0Package.ASSET_T__KIND:
+				unsetKind();
+				return;
+			case _0Package.ASSET_T__ASSET_IDENTIFICATION_MODEL_REF:
+				setAssetIdentificationModelRef((ReferenceT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.ASSET_T__ID_SHORT:
+				return idShort != null;
+			case _0Package.ASSET_T__CATEGORY:
+				return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+			case _0Package.ASSET_T__DESCRIPTION:
+				return description != null;
+			case _0Package.ASSET_T__PARENT:
+				return PARENT_EDEFAULT == null ? parent != null : !PARENT_EDEFAULT.equals(parent);
+			case _0Package.ASSET_T__IDENTIFICATION:
+				return identification != null;
+			case _0Package.ASSET_T__ADMINISTRATION:
+				return administration != null;
+			case _0Package.ASSET_T__EMBEDDED_DATA_SPECIFICATION:
+				return embeddedDataSpecification != null && !embeddedDataSpecification.isEmpty();
+			case _0Package.ASSET_T__KIND:
+				return isSetKind();
+			case _0Package.ASSET_T__ASSET_IDENTIFICATION_MODEL_REF:
+				return assetIdentificationModelRef != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (category: ");
+		result.append(category);
+		result.append(", parent: ");
+		result.append(parent);
+		result.append(", kind: ");
+		if (kindESet) result.append(kind); else result.append("<unset>");
+		result.append(')');
+		return result.toString();
+	}
+
+} //AssetTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetsTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetsTImpl.java
new file mode 100644
index 0000000..7b6e809
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/AssetsTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AssetT;
+import io.shell.admin.aas._1._0.AssetsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Assets T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.AssetsTImpl#getAsset <em>Asset</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AssetsTImpl extends MinimalEObjectImpl.Container implements AssetsT {
+	/**
+	 * The cached value of the '{@link #getAsset() <em>Asset</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAsset()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<AssetT> asset;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected AssetsTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.ASSETS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<AssetT> getAsset() {
+		if (asset == null) {
+			asset = new EObjectContainmentEList<AssetT>(AssetT.class, this, _0Package.ASSETS_T__ASSET);
+		}
+		return asset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.ASSETS_T__ASSET:
+				return ((InternalEList<?>)getAsset()).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 _0Package.ASSETS_T__ASSET:
+				return getAsset();
+		}
+		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 _0Package.ASSETS_T__ASSET:
+				getAsset().clear();
+				getAsset().addAll((Collection<? extends AssetT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.ASSETS_T__ASSET:
+				getAsset().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.ASSETS_T__ASSET:
+				return asset != null && !asset.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //AssetsTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/BlobTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/BlobTImpl.java
new file mode 100644
index 0000000..d2746b1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/BlobTImpl.java
@@ -0,0 +1,258 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.BlobT;
+import io.shell.admin.aas._1._0.BlobTypeT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Blob T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.BlobTImpl#getMimeType <em>Mime Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.BlobTImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class BlobTImpl extends SubmodelElementAbstractTImpl implements BlobT {
+	/**
+	 * The default value of the '{@link #getMimeType() <em>Mime Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMimeType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MIME_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMimeType() <em>Mime Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMimeType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String mimeType = MIME_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected BlobTypeT value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected BlobTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.BLOB_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMimeType() {
+		return mimeType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMimeType(String newMimeType) {
+		String oldMimeType = mimeType;
+		mimeType = newMimeType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.BLOB_T__MIME_TYPE, oldMimeType, mimeType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BlobTypeT getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValue(BlobTypeT newValue, NotificationChain msgs) {
+		BlobTypeT oldValue = value;
+		value = newValue;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.BLOB_T__VALUE, oldValue, newValue);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(BlobTypeT newValue) {
+		if (newValue != value) {
+			NotificationChain msgs = null;
+			if (value != null)
+				msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.BLOB_T__VALUE, null, msgs);
+			if (newValue != null)
+				msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.BLOB_T__VALUE, null, msgs);
+			msgs = basicSetValue(newValue, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.BLOB_T__VALUE, newValue, newValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.BLOB_T__VALUE:
+				return basicSetValue(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.BLOB_T__MIME_TYPE:
+				return getMimeType();
+			case _0Package.BLOB_T__VALUE:
+				return getValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.BLOB_T__MIME_TYPE:
+				setMimeType((String)newValue);
+				return;
+			case _0Package.BLOB_T__VALUE:
+				setValue((BlobTypeT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.BLOB_T__MIME_TYPE:
+				setMimeType(MIME_TYPE_EDEFAULT);
+				return;
+			case _0Package.BLOB_T__VALUE:
+				setValue((BlobTypeT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.BLOB_T__MIME_TYPE:
+				return MIME_TYPE_EDEFAULT == null ? mimeType != null : !MIME_TYPE_EDEFAULT.equals(mimeType);
+			case _0Package.BLOB_T__VALUE:
+				return value != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (mimeType: ");
+		result.append(mimeType);
+		result.append(')');
+		return result.toString();
+	}
+
+} //BlobTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/BlobTypeTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/BlobTypeTImpl.java
new file mode 100644
index 0000000..7f71cab
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/BlobTypeTImpl.java
@@ -0,0 +1,178 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.BlobTypeT;
+import io.shell.admin.aas._1._0._0Package;
+
+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.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Blob Type T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.BlobTypeTImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class BlobTypeTImpl extends MinimalEObjectImpl.Container implements BlobTypeT {
+	/**
+	 * The default value of the '{@link #getValue() <em>Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final byte[] 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 byte[] value = VALUE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected BlobTypeTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.BLOB_TYPE_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public byte[] getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(byte[] newValue) {
+		byte[] oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.BLOB_TYPE_T__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.BLOB_TYPE_T__VALUE:
+				return getValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.BLOB_TYPE_T__VALUE:
+				setValue((byte[])newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.BLOB_TYPE_T__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.BLOB_TYPE_T__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (value: ");
+		result.append(value);
+		result.append(')');
+		return result.toString();
+	}
+
+} //BlobTypeTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDescriptionTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDescriptionTImpl.java
new file mode 100644
index 0000000..e1d48b5
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDescriptionTImpl.java
@@ -0,0 +1,596 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AdministrationT;
+import io.shell.admin.aas._1._0.ConceptDescriptionT;
+import io.shell.admin.aas._1._0.EmbeddedDataSpecificationT;
+import io.shell.admin.aas._1._0.IdShortT;
+import io.shell.admin.aas._1._0.IdentificationT;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+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>Concept Description T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl#getIdentification <em>Identification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl#getAdministration <em>Administration</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionTImpl#getIsCaseOf <em>Is Case Of</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ConceptDescriptionTImpl extends MinimalEObjectImpl.Container implements ConceptDescriptionT {
+	/**
+	 * The cached value of the '{@link #getIdShort() <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdShort()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdShortT idShort;
+
+	/**
+	 * The default value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CATEGORY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected String category = CATEGORY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT description;
+
+	/**
+	 * The default value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String parent = PARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getIdentification() <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdentification()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdentificationT identification;
+
+	/**
+	 * The cached value of the '{@link #getAdministration() <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAdministration()
+	 * @generated
+	 * @ordered
+	 */
+	protected AdministrationT administration;
+
+	/**
+	 * The cached value of the '{@link #getEmbeddedDataSpecification() <em>Embedded Data Specification</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbeddedDataSpecification()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EmbeddedDataSpecificationT> embeddedDataSpecification;
+
+	/**
+	 * The cached value of the '{@link #getIsCaseOf() <em>Is Case Of</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIsCaseOf()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ReferenceT> isCaseOf;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConceptDescriptionTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.CONCEPT_DESCRIPTION_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdShortT getIdShort() {
+		return idShort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdShort(IdShortT newIdShort, NotificationChain msgs) {
+		IdShortT oldIdShort = idShort;
+		idShort = newIdShort;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__ID_SHORT, oldIdShort, newIdShort);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdShort(IdShortT newIdShort) {
+		if (newIdShort != idShort) {
+			NotificationChain msgs = null;
+			if (idShort != null)
+				msgs = ((InternalEObject)idShort).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DESCRIPTION_T__ID_SHORT, null, msgs);
+			if (newIdShort != null)
+				msgs = ((InternalEObject)newIdShort).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DESCRIPTION_T__ID_SHORT, null, msgs);
+			msgs = basicSetIdShort(newIdShort, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__ID_SHORT, newIdShort, newIdShort));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCategory() {
+		return category;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCategory(String newCategory) {
+		String oldCategory = category;
+		category = newCategory;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__CATEGORY, oldCategory, category));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(LangStringsT newDescription, NotificationChain msgs) {
+		LangStringsT oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(LangStringsT newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DESCRIPTION_T__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DESCRIPTION_T__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(String newParent) {
+		String oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdentificationT getIdentification() {
+		return identification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdentification(IdentificationT newIdentification, NotificationChain msgs) {
+		IdentificationT oldIdentification = identification;
+		identification = newIdentification;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__IDENTIFICATION, oldIdentification, newIdentification);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdentification(IdentificationT newIdentification) {
+		if (newIdentification != identification) {
+			NotificationChain msgs = null;
+			if (identification != null)
+				msgs = ((InternalEObject)identification).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DESCRIPTION_T__IDENTIFICATION, null, msgs);
+			if (newIdentification != null)
+				msgs = ((InternalEObject)newIdentification).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DESCRIPTION_T__IDENTIFICATION, null, msgs);
+			msgs = basicSetIdentification(newIdentification, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__IDENTIFICATION, newIdentification, newIdentification));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AdministrationT getAdministration() {
+		return administration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAdministration(AdministrationT newAdministration, NotificationChain msgs) {
+		AdministrationT oldAdministration = administration;
+		administration = newAdministration;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__ADMINISTRATION, oldAdministration, newAdministration);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAdministration(AdministrationT newAdministration) {
+		if (newAdministration != administration) {
+			NotificationChain msgs = null;
+			if (administration != null)
+				msgs = ((InternalEObject)administration).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DESCRIPTION_T__ADMINISTRATION, null, msgs);
+			if (newAdministration != null)
+				msgs = ((InternalEObject)newAdministration).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DESCRIPTION_T__ADMINISTRATION, null, msgs);
+			msgs = basicSetAdministration(newAdministration, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DESCRIPTION_T__ADMINISTRATION, newAdministration, newAdministration));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification() {
+		if (embeddedDataSpecification == null) {
+			embeddedDataSpecification = new EObjectContainmentEList<EmbeddedDataSpecificationT>(EmbeddedDataSpecificationT.class, this, _0Package.CONCEPT_DESCRIPTION_T__EMBEDDED_DATA_SPECIFICATION);
+		}
+		return embeddedDataSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ReferenceT> getIsCaseOf() {
+		if (isCaseOf == null) {
+			isCaseOf = new EObjectContainmentEList<ReferenceT>(ReferenceT.class, this, _0Package.CONCEPT_DESCRIPTION_T__IS_CASE_OF);
+		}
+		return isCaseOf;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DESCRIPTION_T__ID_SHORT:
+				return basicSetIdShort(null, msgs);
+			case _0Package.CONCEPT_DESCRIPTION_T__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case _0Package.CONCEPT_DESCRIPTION_T__IDENTIFICATION:
+				return basicSetIdentification(null, msgs);
+			case _0Package.CONCEPT_DESCRIPTION_T__ADMINISTRATION:
+				return basicSetAdministration(null, msgs);
+			case _0Package.CONCEPT_DESCRIPTION_T__EMBEDDED_DATA_SPECIFICATION:
+				return ((InternalEList<?>)getEmbeddedDataSpecification()).basicRemove(otherEnd, msgs);
+			case _0Package.CONCEPT_DESCRIPTION_T__IS_CASE_OF:
+				return ((InternalEList<?>)getIsCaseOf()).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 _0Package.CONCEPT_DESCRIPTION_T__ID_SHORT:
+				return getIdShort();
+			case _0Package.CONCEPT_DESCRIPTION_T__CATEGORY:
+				return getCategory();
+			case _0Package.CONCEPT_DESCRIPTION_T__DESCRIPTION:
+				return getDescription();
+			case _0Package.CONCEPT_DESCRIPTION_T__PARENT:
+				return getParent();
+			case _0Package.CONCEPT_DESCRIPTION_T__IDENTIFICATION:
+				return getIdentification();
+			case _0Package.CONCEPT_DESCRIPTION_T__ADMINISTRATION:
+				return getAdministration();
+			case _0Package.CONCEPT_DESCRIPTION_T__EMBEDDED_DATA_SPECIFICATION:
+				return getEmbeddedDataSpecification();
+			case _0Package.CONCEPT_DESCRIPTION_T__IS_CASE_OF:
+				return getIsCaseOf();
+		}
+		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 _0Package.CONCEPT_DESCRIPTION_T__ID_SHORT:
+				setIdShort((IdShortT)newValue);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__CATEGORY:
+				setCategory((String)newValue);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__DESCRIPTION:
+				setDescription((LangStringsT)newValue);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__PARENT:
+				setParent((String)newValue);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__IDENTIFICATION:
+				setIdentification((IdentificationT)newValue);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__ADMINISTRATION:
+				setAdministration((AdministrationT)newValue);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				getEmbeddedDataSpecification().addAll((Collection<? extends EmbeddedDataSpecificationT>)newValue);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__IS_CASE_OF:
+				getIsCaseOf().clear();
+				getIsCaseOf().addAll((Collection<? extends ReferenceT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DESCRIPTION_T__ID_SHORT:
+				setIdShort((IdShortT)null);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__CATEGORY:
+				setCategory(CATEGORY_EDEFAULT);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__DESCRIPTION:
+				setDescription((LangStringsT)null);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__PARENT:
+				setParent(PARENT_EDEFAULT);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__IDENTIFICATION:
+				setIdentification((IdentificationT)null);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__ADMINISTRATION:
+				setAdministration((AdministrationT)null);
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				return;
+			case _0Package.CONCEPT_DESCRIPTION_T__IS_CASE_OF:
+				getIsCaseOf().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DESCRIPTION_T__ID_SHORT:
+				return idShort != null;
+			case _0Package.CONCEPT_DESCRIPTION_T__CATEGORY:
+				return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+			case _0Package.CONCEPT_DESCRIPTION_T__DESCRIPTION:
+				return description != null;
+			case _0Package.CONCEPT_DESCRIPTION_T__PARENT:
+				return PARENT_EDEFAULT == null ? parent != null : !PARENT_EDEFAULT.equals(parent);
+			case _0Package.CONCEPT_DESCRIPTION_T__IDENTIFICATION:
+				return identification != null;
+			case _0Package.CONCEPT_DESCRIPTION_T__ADMINISTRATION:
+				return administration != null;
+			case _0Package.CONCEPT_DESCRIPTION_T__EMBEDDED_DATA_SPECIFICATION:
+				return embeddedDataSpecification != null && !embeddedDataSpecification.isEmpty();
+			case _0Package.CONCEPT_DESCRIPTION_T__IS_CASE_OF:
+				return isCaseOf != null && !isCaseOf.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (category: ");
+		result.append(category);
+		result.append(", parent: ");
+		result.append(parent);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ConceptDescriptionTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDescriptionsRefTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDescriptionsRefTImpl.java
new file mode 100644
index 0000000..d0e1c3a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDescriptionsRefTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ConceptDescriptionsRefT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Concept Descriptions Ref T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionsRefTImpl#getConceptDescriptionRef <em>Concept Description Ref</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ConceptDescriptionsRefTImpl extends MinimalEObjectImpl.Container implements ConceptDescriptionsRefT {
+	/**
+	 * The cached value of the '{@link #getConceptDescriptionRef() <em>Concept Description Ref</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConceptDescriptionRef()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ReferenceT> conceptDescriptionRef;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConceptDescriptionsRefTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.CONCEPT_DESCRIPTIONS_REF_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ReferenceT> getConceptDescriptionRef() {
+		if (conceptDescriptionRef == null) {
+			conceptDescriptionRef = new EObjectContainmentEList<ReferenceT>(ReferenceT.class, this, _0Package.CONCEPT_DESCRIPTIONS_REF_T__CONCEPT_DESCRIPTION_REF);
+		}
+		return conceptDescriptionRef;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DESCRIPTIONS_REF_T__CONCEPT_DESCRIPTION_REF:
+				return ((InternalEList<?>)getConceptDescriptionRef()).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 _0Package.CONCEPT_DESCRIPTIONS_REF_T__CONCEPT_DESCRIPTION_REF:
+				return getConceptDescriptionRef();
+		}
+		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 _0Package.CONCEPT_DESCRIPTIONS_REF_T__CONCEPT_DESCRIPTION_REF:
+				getConceptDescriptionRef().clear();
+				getConceptDescriptionRef().addAll((Collection<? extends ReferenceT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DESCRIPTIONS_REF_T__CONCEPT_DESCRIPTION_REF:
+				getConceptDescriptionRef().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DESCRIPTIONS_REF_T__CONCEPT_DESCRIPTION_REF:
+				return conceptDescriptionRef != null && !conceptDescriptionRef.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ConceptDescriptionsRefTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDescriptionsTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDescriptionsTImpl.java
new file mode 100644
index 0000000..a2e9204
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDescriptionsTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ConceptDescriptionT;
+import io.shell.admin.aas._1._0.ConceptDescriptionsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Concept Descriptions T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDescriptionsTImpl#getConceptDescription <em>Concept Description</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ConceptDescriptionsTImpl extends MinimalEObjectImpl.Container implements ConceptDescriptionsT {
+	/**
+	 * The cached value of the '{@link #getConceptDescription() <em>Concept Description</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConceptDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ConceptDescriptionT> conceptDescription;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConceptDescriptionsTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.CONCEPT_DESCRIPTIONS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ConceptDescriptionT> getConceptDescription() {
+		if (conceptDescription == null) {
+			conceptDescription = new EObjectContainmentEList<ConceptDescriptionT>(ConceptDescriptionT.class, this, _0Package.CONCEPT_DESCRIPTIONS_T__CONCEPT_DESCRIPTION);
+		}
+		return conceptDescription;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DESCRIPTIONS_T__CONCEPT_DESCRIPTION:
+				return ((InternalEList<?>)getConceptDescription()).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 _0Package.CONCEPT_DESCRIPTIONS_T__CONCEPT_DESCRIPTION:
+				return getConceptDescription();
+		}
+		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 _0Package.CONCEPT_DESCRIPTIONS_T__CONCEPT_DESCRIPTION:
+				getConceptDescription().clear();
+				getConceptDescription().addAll((Collection<? extends ConceptDescriptionT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DESCRIPTIONS_T__CONCEPT_DESCRIPTION:
+				getConceptDescription().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DESCRIPTIONS_T__CONCEPT_DESCRIPTION:
+				return conceptDescription != null && !conceptDescription.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ConceptDescriptionsTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDictionariesTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDictionariesTImpl.java
new file mode 100644
index 0000000..b0d78a3
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDictionariesTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ConceptDictionariesT;
+import io.shell.admin.aas._1._0.ConceptDictionaryT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Concept Dictionaries T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDictionariesTImpl#getConceptDictionary <em>Concept Dictionary</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ConceptDictionariesTImpl extends MinimalEObjectImpl.Container implements ConceptDictionariesT {
+	/**
+	 * The cached value of the '{@link #getConceptDictionary() <em>Concept Dictionary</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConceptDictionary()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ConceptDictionaryT> conceptDictionary;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConceptDictionariesTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.CONCEPT_DICTIONARIES_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ConceptDictionaryT> getConceptDictionary() {
+		if (conceptDictionary == null) {
+			conceptDictionary = new EObjectContainmentEList<ConceptDictionaryT>(ConceptDictionaryT.class, this, _0Package.CONCEPT_DICTIONARIES_T__CONCEPT_DICTIONARY);
+		}
+		return conceptDictionary;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DICTIONARIES_T__CONCEPT_DICTIONARY:
+				return ((InternalEList<?>)getConceptDictionary()).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 _0Package.CONCEPT_DICTIONARIES_T__CONCEPT_DICTIONARY:
+				return getConceptDictionary();
+		}
+		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 _0Package.CONCEPT_DICTIONARIES_T__CONCEPT_DICTIONARY:
+				getConceptDictionary().clear();
+				getConceptDictionary().addAll((Collection<? extends ConceptDictionaryT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DICTIONARIES_T__CONCEPT_DICTIONARY:
+				getConceptDictionary().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DICTIONARIES_T__CONCEPT_DICTIONARY:
+				return conceptDictionary != null && !conceptDictionary.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ConceptDictionariesTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDictionaryTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDictionaryTImpl.java
new file mode 100644
index 0000000..884c1a5
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConceptDictionaryTImpl.java
@@ -0,0 +1,447 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ConceptDescriptionsRefT;
+import io.shell.admin.aas._1._0.ConceptDictionaryT;
+import io.shell.admin.aas._1._0.IdShortT;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Concept Dictionary T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDictionaryTImpl#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDictionaryTImpl#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDictionaryTImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDictionaryTImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConceptDictionaryTImpl#getConceptDescriptionRefs <em>Concept Description Refs</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ConceptDictionaryTImpl extends MinimalEObjectImpl.Container implements ConceptDictionaryT {
+	/**
+	 * The cached value of the '{@link #getIdShort() <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdShort()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdShortT idShort;
+
+	/**
+	 * The default value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CATEGORY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected String category = CATEGORY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT description;
+
+	/**
+	 * The default value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String parent = PARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getConceptDescriptionRefs() <em>Concept Description Refs</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getConceptDescriptionRefs()
+	 * @generated
+	 * @ordered
+	 */
+	protected ConceptDescriptionsRefT conceptDescriptionRefs;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConceptDictionaryTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.CONCEPT_DICTIONARY_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdShortT getIdShort() {
+		return idShort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdShort(IdShortT newIdShort, NotificationChain msgs) {
+		IdShortT oldIdShort = idShort;
+		idShort = newIdShort;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DICTIONARY_T__ID_SHORT, oldIdShort, newIdShort);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdShort(IdShortT newIdShort) {
+		if (newIdShort != idShort) {
+			NotificationChain msgs = null;
+			if (idShort != null)
+				msgs = ((InternalEObject)idShort).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DICTIONARY_T__ID_SHORT, null, msgs);
+			if (newIdShort != null)
+				msgs = ((InternalEObject)newIdShort).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DICTIONARY_T__ID_SHORT, null, msgs);
+			msgs = basicSetIdShort(newIdShort, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DICTIONARY_T__ID_SHORT, newIdShort, newIdShort));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCategory() {
+		return category;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCategory(String newCategory) {
+		String oldCategory = category;
+		category = newCategory;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DICTIONARY_T__CATEGORY, oldCategory, category));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(LangStringsT newDescription, NotificationChain msgs) {
+		LangStringsT oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DICTIONARY_T__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(LangStringsT newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DICTIONARY_T__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DICTIONARY_T__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DICTIONARY_T__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(String newParent) {
+		String oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DICTIONARY_T__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConceptDescriptionsRefT getConceptDescriptionRefs() {
+		return conceptDescriptionRefs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetConceptDescriptionRefs(ConceptDescriptionsRefT newConceptDescriptionRefs, NotificationChain msgs) {
+		ConceptDescriptionsRefT oldConceptDescriptionRefs = conceptDescriptionRefs;
+		conceptDescriptionRefs = newConceptDescriptionRefs;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS, oldConceptDescriptionRefs, newConceptDescriptionRefs);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setConceptDescriptionRefs(ConceptDescriptionsRefT newConceptDescriptionRefs) {
+		if (newConceptDescriptionRefs != conceptDescriptionRefs) {
+			NotificationChain msgs = null;
+			if (conceptDescriptionRefs != null)
+				msgs = ((InternalEObject)conceptDescriptionRefs).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS, null, msgs);
+			if (newConceptDescriptionRefs != null)
+				msgs = ((InternalEObject)newConceptDescriptionRefs).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS, null, msgs);
+			msgs = basicSetConceptDescriptionRefs(newConceptDescriptionRefs, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS, newConceptDescriptionRefs, newConceptDescriptionRefs));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DICTIONARY_T__ID_SHORT:
+				return basicSetIdShort(null, msgs);
+			case _0Package.CONCEPT_DICTIONARY_T__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case _0Package.CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS:
+				return basicSetConceptDescriptionRefs(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 _0Package.CONCEPT_DICTIONARY_T__ID_SHORT:
+				return getIdShort();
+			case _0Package.CONCEPT_DICTIONARY_T__CATEGORY:
+				return getCategory();
+			case _0Package.CONCEPT_DICTIONARY_T__DESCRIPTION:
+				return getDescription();
+			case _0Package.CONCEPT_DICTIONARY_T__PARENT:
+				return getParent();
+			case _0Package.CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS:
+				return getConceptDescriptionRefs();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DICTIONARY_T__ID_SHORT:
+				setIdShort((IdShortT)newValue);
+				return;
+			case _0Package.CONCEPT_DICTIONARY_T__CATEGORY:
+				setCategory((String)newValue);
+				return;
+			case _0Package.CONCEPT_DICTIONARY_T__DESCRIPTION:
+				setDescription((LangStringsT)newValue);
+				return;
+			case _0Package.CONCEPT_DICTIONARY_T__PARENT:
+				setParent((String)newValue);
+				return;
+			case _0Package.CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS:
+				setConceptDescriptionRefs((ConceptDescriptionsRefT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DICTIONARY_T__ID_SHORT:
+				setIdShort((IdShortT)null);
+				return;
+			case _0Package.CONCEPT_DICTIONARY_T__CATEGORY:
+				setCategory(CATEGORY_EDEFAULT);
+				return;
+			case _0Package.CONCEPT_DICTIONARY_T__DESCRIPTION:
+				setDescription((LangStringsT)null);
+				return;
+			case _0Package.CONCEPT_DICTIONARY_T__PARENT:
+				setParent(PARENT_EDEFAULT);
+				return;
+			case _0Package.CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS:
+				setConceptDescriptionRefs((ConceptDescriptionsRefT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.CONCEPT_DICTIONARY_T__ID_SHORT:
+				return idShort != null;
+			case _0Package.CONCEPT_DICTIONARY_T__CATEGORY:
+				return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+			case _0Package.CONCEPT_DICTIONARY_T__DESCRIPTION:
+				return description != null;
+			case _0Package.CONCEPT_DICTIONARY_T__PARENT:
+				return PARENT_EDEFAULT == null ? parent != null : !PARENT_EDEFAULT.equals(parent);
+			case _0Package.CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS:
+				return conceptDescriptionRefs != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (category: ");
+		result.append(category);
+		result.append(", parent: ");
+		result.append(parent);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ConceptDictionaryTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConstraintTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConstraintTImpl.java
new file mode 100644
index 0000000..b70949d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ConstraintTImpl.java
@@ -0,0 +1,258 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ConstraintT;
+import io.shell.admin.aas._1._0.FormulaT;
+import io.shell.admin.aas._1._0.QualifierT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Constraint T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConstraintTImpl#getQualifier <em>Qualifier</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ConstraintTImpl#getFormula <em>Formula</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ConstraintTImpl extends MinimalEObjectImpl.Container implements ConstraintT {
+	/**
+	 * The cached value of the '{@link #getQualifier() <em>Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected QualifierT qualifier;
+
+	/**
+	 * The cached value of the '{@link #getFormula() <em>Formula</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFormula()
+	 * @generated
+	 * @ordered
+	 */
+	protected FormulaT formula;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ConstraintTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.CONSTRAINT_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public QualifierT getQualifier() {
+		return qualifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetQualifier(QualifierT newQualifier, NotificationChain msgs) {
+		QualifierT oldQualifier = qualifier;
+		qualifier = newQualifier;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.CONSTRAINT_T__QUALIFIER, oldQualifier, newQualifier);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setQualifier(QualifierT newQualifier) {
+		if (newQualifier != qualifier) {
+			NotificationChain msgs = null;
+			if (qualifier != null)
+				msgs = ((InternalEObject)qualifier).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.CONSTRAINT_T__QUALIFIER, null, msgs);
+			if (newQualifier != null)
+				msgs = ((InternalEObject)newQualifier).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.CONSTRAINT_T__QUALIFIER, null, msgs);
+			msgs = basicSetQualifier(newQualifier, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONSTRAINT_T__QUALIFIER, newQualifier, newQualifier));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FormulaT getFormula() {
+		return formula;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetFormula(FormulaT newFormula, NotificationChain msgs) {
+		FormulaT oldFormula = formula;
+		formula = newFormula;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.CONSTRAINT_T__FORMULA, oldFormula, newFormula);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFormula(FormulaT newFormula) {
+		if (newFormula != formula) {
+			NotificationChain msgs = null;
+			if (formula != null)
+				msgs = ((InternalEObject)formula).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.CONSTRAINT_T__FORMULA, null, msgs);
+			if (newFormula != null)
+				msgs = ((InternalEObject)newFormula).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.CONSTRAINT_T__FORMULA, null, msgs);
+			msgs = basicSetFormula(newFormula, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.CONSTRAINT_T__FORMULA, newFormula, newFormula));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.CONSTRAINT_T__QUALIFIER:
+				return basicSetQualifier(null, msgs);
+			case _0Package.CONSTRAINT_T__FORMULA:
+				return basicSetFormula(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 _0Package.CONSTRAINT_T__QUALIFIER:
+				return getQualifier();
+			case _0Package.CONSTRAINT_T__FORMULA:
+				return getFormula();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.CONSTRAINT_T__QUALIFIER:
+				setQualifier((QualifierT)newValue);
+				return;
+			case _0Package.CONSTRAINT_T__FORMULA:
+				setFormula((FormulaT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.CONSTRAINT_T__QUALIFIER:
+				setQualifier((QualifierT)null);
+				return;
+			case _0Package.CONSTRAINT_T__FORMULA:
+				setFormula((FormulaT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.CONSTRAINT_T__QUALIFIER:
+				return qualifier != null;
+			case _0Package.CONSTRAINT_T__FORMULA:
+				return formula != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ConstraintTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ContainedElementsTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ContainedElementsTImpl.java
new file mode 100644
index 0000000..3cc8eab
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ContainedElementsTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ContainedElementsT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Contained Elements T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ContainedElementsTImpl#getContainedElementRef <em>Contained Element Ref</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ContainedElementsTImpl extends MinimalEObjectImpl.Container implements ContainedElementsT {
+	/**
+	 * The cached value of the '{@link #getContainedElementRef() <em>Contained Element Ref</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getContainedElementRef()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ReferenceT> containedElementRef;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ContainedElementsTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.CONTAINED_ELEMENTS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ReferenceT> getContainedElementRef() {
+		if (containedElementRef == null) {
+			containedElementRef = new EObjectContainmentEList<ReferenceT>(ReferenceT.class, this, _0Package.CONTAINED_ELEMENTS_T__CONTAINED_ELEMENT_REF);
+		}
+		return containedElementRef;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.CONTAINED_ELEMENTS_T__CONTAINED_ELEMENT_REF:
+				return ((InternalEList<?>)getContainedElementRef()).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 _0Package.CONTAINED_ELEMENTS_T__CONTAINED_ELEMENT_REF:
+				return getContainedElementRef();
+		}
+		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 _0Package.CONTAINED_ELEMENTS_T__CONTAINED_ELEMENT_REF:
+				getContainedElementRef().clear();
+				getContainedElementRef().addAll((Collection<? extends ReferenceT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.CONTAINED_ELEMENTS_T__CONTAINED_ELEMENT_REF:
+				getContainedElementRef().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.CONTAINED_ELEMENTS_T__CONTAINED_ELEMENT_REF:
+				return containedElementRef != null && !containedElementRef.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ContainedElementsTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/DataSpecificationContentTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/DataSpecificationContentTImpl.java
new file mode 100644
index 0000000..7786513
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/DataSpecificationContentTImpl.java
@@ -0,0 +1,192 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.DataSpecificationContentT;
+import io.shell.admin.aas._1._0._0Package;
+
+import io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Data Specification Content T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.DataSpecificationContentTImpl#getDataSpecificationIEC61360 <em>Data Specification IEC61360</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class DataSpecificationContentTImpl extends MinimalEObjectImpl.Container implements DataSpecificationContentT {
+	/**
+	 * The cached value of the '{@link #getDataSpecificationIEC61360() <em>Data Specification IEC61360</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDataSpecificationIEC61360()
+	 * @generated
+	 * @ordered
+	 */
+	protected DataSpecificationIEC61630T dataSpecificationIEC61360;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DataSpecificationContentTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.DATA_SPECIFICATION_CONTENT_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DataSpecificationIEC61630T getDataSpecificationIEC61360() {
+		return dataSpecificationIEC61360;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDataSpecificationIEC61360(DataSpecificationIEC61630T newDataSpecificationIEC61360, NotificationChain msgs) {
+		DataSpecificationIEC61630T oldDataSpecificationIEC61360 = dataSpecificationIEC61360;
+		dataSpecificationIEC61360 = newDataSpecificationIEC61360;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360, oldDataSpecificationIEC61360, newDataSpecificationIEC61360);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDataSpecificationIEC61360(DataSpecificationIEC61630T newDataSpecificationIEC61360) {
+		if (newDataSpecificationIEC61360 != dataSpecificationIEC61360) {
+			NotificationChain msgs = null;
+			if (dataSpecificationIEC61360 != null)
+				msgs = ((InternalEObject)dataSpecificationIEC61360).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360, null, msgs);
+			if (newDataSpecificationIEC61360 != null)
+				msgs = ((InternalEObject)newDataSpecificationIEC61360).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360, null, msgs);
+			msgs = basicSetDataSpecificationIEC61360(newDataSpecificationIEC61360, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360, newDataSpecificationIEC61360, newDataSpecificationIEC61360));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360:
+				return basicSetDataSpecificationIEC61360(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 _0Package.DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360:
+				return getDataSpecificationIEC61360();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360:
+				setDataSpecificationIEC61360((DataSpecificationIEC61630T)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360:
+				setDataSpecificationIEC61360((DataSpecificationIEC61630T)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360:
+				return dataSpecificationIEC61360 != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //DataSpecificationContentTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/DocumentRootImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/DocumentRootImpl.java
new file mode 100644
index 0000000..edb6558
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/DocumentRootImpl.java
@@ -0,0 +1,338 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AasenvT;
+import io.shell.admin.aas._1._0.DocumentRoot;
+import io.shell.admin.aas._1._0.KeyT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EMap;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.BasicFeatureMap;
+import org.eclipse.emf.ecore.util.EcoreEMap;
+import org.eclipse.emf.ecore.util.FeatureMap;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Document Root</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.DocumentRootImpl#getMixed <em>Mixed</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.DocumentRootImpl#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.DocumentRootImpl#getXSISchemaLocation <em>XSI Schema Location</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.DocumentRootImpl#getAasenv <em>Aasenv</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.DocumentRootImpl#getKey <em>Key</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class DocumentRootImpl extends MinimalEObjectImpl.Container implements DocumentRoot {
+	/**
+	 * The cached value of the '{@link #getMixed() <em>Mixed</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMixed()
+	 * @generated
+	 * @ordered
+	 */
+	protected FeatureMap mixed;
+
+	/**
+	 * The cached value of the '{@link #getXMLNSPrefixMap() <em>XMLNS Prefix Map</em>}' map.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getXMLNSPrefixMap()
+	 * @generated
+	 * @ordered
+	 */
+	protected EMap<String, String> xMLNSPrefixMap;
+
+	/**
+	 * The cached value of the '{@link #getXSISchemaLocation() <em>XSI Schema Location</em>}' map.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getXSISchemaLocation()
+	 * @generated
+	 * @ordered
+	 */
+	protected EMap<String, String> xSISchemaLocation;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DocumentRootImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.DOCUMENT_ROOT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FeatureMap getMixed() {
+		if (mixed == null) {
+			mixed = new BasicFeatureMap(this, _0Package.DOCUMENT_ROOT__MIXED);
+		}
+		return mixed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EMap<String, String> getXMLNSPrefixMap() {
+		if (xMLNSPrefixMap == null) {
+			xMLNSPrefixMap = new EcoreEMap<String,String>(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, EStringToStringMapEntryImpl.class, this, _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP);
+		}
+		return xMLNSPrefixMap;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EMap<String, String> getXSISchemaLocation() {
+		if (xSISchemaLocation == null) {
+			xSISchemaLocation = new EcoreEMap<String,String>(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, EStringToStringMapEntryImpl.class, this, _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION);
+		}
+		return xSISchemaLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AasenvT getAasenv() {
+		return (AasenvT)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__AASENV, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAasenv(AasenvT newAasenv, NotificationChain msgs) {
+		return ((FeatureMap.Internal)getMixed()).basicAdd(_0Package.Literals.DOCUMENT_ROOT__AASENV, newAasenv, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAasenv(AasenvT newAasenv) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__AASENV, newAasenv);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public KeyT getKey() {
+		return (KeyT)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__KEY, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetKey(KeyT newKey, NotificationChain msgs) {
+		return ((FeatureMap.Internal)getMixed()).basicAdd(_0Package.Literals.DOCUMENT_ROOT__KEY, newKey, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setKey(KeyT newKey) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__KEY, newKey);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.DOCUMENT_ROOT__MIXED:
+				return ((InternalEList<?>)getMixed()).basicRemove(otherEnd, msgs);
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				return ((InternalEList<?>)getXMLNSPrefixMap()).basicRemove(otherEnd, msgs);
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				return ((InternalEList<?>)getXSISchemaLocation()).basicRemove(otherEnd, msgs);
+			case _0Package.DOCUMENT_ROOT__AASENV:
+				return basicSetAasenv(null, msgs);
+			case _0Package.DOCUMENT_ROOT__KEY:
+				return basicSetKey(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 _0Package.DOCUMENT_ROOT__MIXED:
+				if (coreType) return getMixed();
+				return ((FeatureMap.Internal)getMixed()).getWrapper();
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				if (coreType) return getXMLNSPrefixMap();
+				else return getXMLNSPrefixMap().map();
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				if (coreType) return getXSISchemaLocation();
+				else return getXSISchemaLocation().map();
+			case _0Package.DOCUMENT_ROOT__AASENV:
+				return getAasenv();
+			case _0Package.DOCUMENT_ROOT__KEY:
+				return getKey();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.DOCUMENT_ROOT__MIXED:
+				((FeatureMap.Internal)getMixed()).set(newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				((EStructuralFeature.Setting)getXMLNSPrefixMap()).set(newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				((EStructuralFeature.Setting)getXSISchemaLocation()).set(newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__AASENV:
+				setAasenv((AasenvT)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__KEY:
+				setKey((KeyT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.DOCUMENT_ROOT__MIXED:
+				getMixed().clear();
+				return;
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				getXMLNSPrefixMap().clear();
+				return;
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				getXSISchemaLocation().clear();
+				return;
+			case _0Package.DOCUMENT_ROOT__AASENV:
+				setAasenv((AasenvT)null);
+				return;
+			case _0Package.DOCUMENT_ROOT__KEY:
+				setKey((KeyT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.DOCUMENT_ROOT__MIXED:
+				return mixed != null && !mixed.isEmpty();
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				return xMLNSPrefixMap != null && !xMLNSPrefixMap.isEmpty();
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				return xSISchemaLocation != null && !xSISchemaLocation.isEmpty();
+			case _0Package.DOCUMENT_ROOT__AASENV:
+				return getAasenv() != null;
+			case _0Package.DOCUMENT_ROOT__KEY:
+				return getKey() != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (mixed: ");
+		result.append(mixed);
+		result.append(')');
+		return result.toString();
+	}
+
+} //DocumentRootImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/EmbeddedDataSpecificationTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/EmbeddedDataSpecificationTImpl.java
new file mode 100644
index 0000000..8025d71
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/EmbeddedDataSpecificationTImpl.java
@@ -0,0 +1,258 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.DataSpecificationContentT;
+import io.shell.admin.aas._1._0.EmbeddedDataSpecificationT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Embedded Data Specification T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.EmbeddedDataSpecificationTImpl#getHasDataSpecification <em>Has Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.EmbeddedDataSpecificationTImpl#getDataSpecificationContent <em>Data Specification Content</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class EmbeddedDataSpecificationTImpl extends MinimalEObjectImpl.Container implements EmbeddedDataSpecificationT {
+	/**
+	 * The cached value of the '{@link #getHasDataSpecification() <em>Has Data Specification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getHasDataSpecification()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT hasDataSpecification;
+
+	/**
+	 * The cached value of the '{@link #getDataSpecificationContent() <em>Data Specification Content</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDataSpecificationContent()
+	 * @generated
+	 * @ordered
+	 */
+	protected DataSpecificationContentT dataSpecificationContent;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected EmbeddedDataSpecificationTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.EMBEDDED_DATA_SPECIFICATION_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getHasDataSpecification() {
+		return hasDataSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetHasDataSpecification(ReferenceT newHasDataSpecification, NotificationChain msgs) {
+		ReferenceT oldHasDataSpecification = hasDataSpecification;
+		hasDataSpecification = newHasDataSpecification;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION, oldHasDataSpecification, newHasDataSpecification);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setHasDataSpecification(ReferenceT newHasDataSpecification) {
+		if (newHasDataSpecification != hasDataSpecification) {
+			NotificationChain msgs = null;
+			if (hasDataSpecification != null)
+				msgs = ((InternalEObject)hasDataSpecification).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION, null, msgs);
+			if (newHasDataSpecification != null)
+				msgs = ((InternalEObject)newHasDataSpecification).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION, null, msgs);
+			msgs = basicSetHasDataSpecification(newHasDataSpecification, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION, newHasDataSpecification, newHasDataSpecification));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DataSpecificationContentT getDataSpecificationContent() {
+		return dataSpecificationContent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDataSpecificationContent(DataSpecificationContentT newDataSpecificationContent, NotificationChain msgs) {
+		DataSpecificationContentT oldDataSpecificationContent = dataSpecificationContent;
+		dataSpecificationContent = newDataSpecificationContent;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT, oldDataSpecificationContent, newDataSpecificationContent);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDataSpecificationContent(DataSpecificationContentT newDataSpecificationContent) {
+		if (newDataSpecificationContent != dataSpecificationContent) {
+			NotificationChain msgs = null;
+			if (dataSpecificationContent != null)
+				msgs = ((InternalEObject)dataSpecificationContent).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT, null, msgs);
+			if (newDataSpecificationContent != null)
+				msgs = ((InternalEObject)newDataSpecificationContent).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT, null, msgs);
+			msgs = basicSetDataSpecificationContent(newDataSpecificationContent, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT, newDataSpecificationContent, newDataSpecificationContent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION:
+				return basicSetHasDataSpecification(null, msgs);
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT:
+				return basicSetDataSpecificationContent(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 _0Package.EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION:
+				return getHasDataSpecification();
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT:
+				return getDataSpecificationContent();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION:
+				setHasDataSpecification((ReferenceT)newValue);
+				return;
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT:
+				setDataSpecificationContent((DataSpecificationContentT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION:
+				setHasDataSpecification((ReferenceT)null);
+				return;
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT:
+				setDataSpecificationContent((DataSpecificationContentT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION:
+				return hasDataSpecification != null;
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT:
+				return dataSpecificationContent != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //EmbeddedDataSpecificationTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/EventTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/EventTImpl.java
new file mode 100644
index 0000000..60ce3ca
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/EventTImpl.java
@@ -0,0 +1,52 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.EventT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.ecore.EClass;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Event T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class EventTImpl extends SubmodelElementAbstractTImpl implements EventT {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected EventTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.EVENT_T;
+	}
+
+} //EventTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/FileTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/FileTImpl.java
new file mode 100644
index 0000000..eafe1a2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/FileTImpl.java
@@ -0,0 +1,258 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.FileT;
+import io.shell.admin.aas._1._0.PathTypeT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>File T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.FileTImpl#getMimeType <em>Mime Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.FileTImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class FileTImpl extends SubmodelElementAbstractTImpl implements FileT {
+	/**
+	 * The default value of the '{@link #getMimeType() <em>Mime Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMimeType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String MIME_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getMimeType() <em>Mime Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMimeType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String mimeType = MIME_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected PathTypeT value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected FileTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.FILE_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getMimeType() {
+		return mimeType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setMimeType(String newMimeType) {
+		String oldMimeType = mimeType;
+		mimeType = newMimeType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.FILE_T__MIME_TYPE, oldMimeType, mimeType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PathTypeT getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValue(PathTypeT newValue, NotificationChain msgs) {
+		PathTypeT oldValue = value;
+		value = newValue;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.FILE_T__VALUE, oldValue, newValue);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(PathTypeT newValue) {
+		if (newValue != value) {
+			NotificationChain msgs = null;
+			if (value != null)
+				msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.FILE_T__VALUE, null, msgs);
+			if (newValue != null)
+				msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.FILE_T__VALUE, null, msgs);
+			msgs = basicSetValue(newValue, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.FILE_T__VALUE, newValue, newValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.FILE_T__VALUE:
+				return basicSetValue(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.FILE_T__MIME_TYPE:
+				return getMimeType();
+			case _0Package.FILE_T__VALUE:
+				return getValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.FILE_T__MIME_TYPE:
+				setMimeType((String)newValue);
+				return;
+			case _0Package.FILE_T__VALUE:
+				setValue((PathTypeT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.FILE_T__MIME_TYPE:
+				setMimeType(MIME_TYPE_EDEFAULT);
+				return;
+			case _0Package.FILE_T__VALUE:
+				setValue((PathTypeT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.FILE_T__MIME_TYPE:
+				return MIME_TYPE_EDEFAULT == null ? mimeType != null : !MIME_TYPE_EDEFAULT.equals(mimeType);
+			case _0Package.FILE_T__VALUE:
+				return value != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (mimeType: ");
+		result.append(mimeType);
+		result.append(')');
+		return result.toString();
+	}
+
+} //FileTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/FormulaTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/FormulaTImpl.java
new file mode 100644
index 0000000..ff61bc9
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/FormulaTImpl.java
@@ -0,0 +1,191 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.FormulaT;
+import io.shell.admin.aas._1._0.ReferencesT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Formula T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.FormulaTImpl#getDependsOn <em>Depends On</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class FormulaTImpl extends MinimalEObjectImpl.Container implements FormulaT {
+	/**
+	 * The cached value of the '{@link #getDependsOn() <em>Depends On</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDependsOn()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferencesT dependsOn;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected FormulaTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.FORMULA_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferencesT getDependsOn() {
+		return dependsOn;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDependsOn(ReferencesT newDependsOn, NotificationChain msgs) {
+		ReferencesT oldDependsOn = dependsOn;
+		dependsOn = newDependsOn;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.FORMULA_T__DEPENDS_ON, oldDependsOn, newDependsOn);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDependsOn(ReferencesT newDependsOn) {
+		if (newDependsOn != dependsOn) {
+			NotificationChain msgs = null;
+			if (dependsOn != null)
+				msgs = ((InternalEObject)dependsOn).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.FORMULA_T__DEPENDS_ON, null, msgs);
+			if (newDependsOn != null)
+				msgs = ((InternalEObject)newDependsOn).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.FORMULA_T__DEPENDS_ON, null, msgs);
+			msgs = basicSetDependsOn(newDependsOn, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.FORMULA_T__DEPENDS_ON, newDependsOn, newDependsOn));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.FORMULA_T__DEPENDS_ON:
+				return basicSetDependsOn(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 _0Package.FORMULA_T__DEPENDS_ON:
+				return getDependsOn();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.FORMULA_T__DEPENDS_ON:
+				setDependsOn((ReferencesT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.FORMULA_T__DEPENDS_ON:
+				setDependsOn((ReferencesT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.FORMULA_T__DEPENDS_ON:
+				return dependsOn != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //FormulaTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/IdPropertyDefinitionTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/IdPropertyDefinitionTImpl.java
new file mode 100644
index 0000000..999929a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/IdPropertyDefinitionTImpl.java
@@ -0,0 +1,232 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.IdPropertyDefinitionT;
+import io.shell.admin.aas._1._0._0Package;
+
+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.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Id Property Definition T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.IdPropertyDefinitionTImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.IdPropertyDefinitionTImpl#getIdType <em>Id Type</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IdPropertyDefinitionTImpl extends MinimalEObjectImpl.Container implements IdPropertyDefinitionT {
+	/**
+	 * 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 #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String idType = ID_TYPE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IdPropertyDefinitionTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.ID_PROPERTY_DEFINITION_T;
+	}
+
+	/**
+	 * <!-- 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, _0Package.ID_PROPERTY_DEFINITION_T__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getIdType() {
+		return idType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdType(String newIdType) {
+		String oldIdType = idType;
+		idType = newIdType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.ID_PROPERTY_DEFINITION_T__ID_TYPE, oldIdType, idType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.ID_PROPERTY_DEFINITION_T__VALUE:
+				return getValue();
+			case _0Package.ID_PROPERTY_DEFINITION_T__ID_TYPE:
+				return getIdType();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.ID_PROPERTY_DEFINITION_T__VALUE:
+				setValue((String)newValue);
+				return;
+			case _0Package.ID_PROPERTY_DEFINITION_T__ID_TYPE:
+				setIdType((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.ID_PROPERTY_DEFINITION_T__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case _0Package.ID_PROPERTY_DEFINITION_T__ID_TYPE:
+				setIdType(ID_TYPE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.ID_PROPERTY_DEFINITION_T__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+			case _0Package.ID_PROPERTY_DEFINITION_T__ID_TYPE:
+				return ID_TYPE_EDEFAULT == null ? idType != null : !ID_TYPE_EDEFAULT.equals(idType);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (value: ");
+		result.append(value);
+		result.append(", idType: ");
+		result.append(idType);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IdPropertyDefinitionTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/IdShortTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/IdShortTImpl.java
new file mode 100644
index 0000000..146b16c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/IdShortTImpl.java
@@ -0,0 +1,178 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.IdShortT;
+import io.shell.admin.aas._1._0._0Package;
+
+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.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Id Short T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.IdShortTImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IdShortTImpl extends MinimalEObjectImpl.Container implements IdShortT {
+	/**
+	 * 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;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IdShortTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.ID_SHORT_T;
+	}
+
+	/**
+	 * <!-- 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, _0Package.ID_SHORT_T__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.ID_SHORT_T__VALUE:
+				return getValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.ID_SHORT_T__VALUE:
+				setValue((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.ID_SHORT_T__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.ID_SHORT_T__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (value: ");
+		result.append(value);
+		result.append(')');
+		return result.toString();
+	}
+
+} //IdShortTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/IdentificationTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/IdentificationTImpl.java
new file mode 100644
index 0000000..c3050c6
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/IdentificationTImpl.java
@@ -0,0 +1,267 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.IdTypeType1;
+import io.shell.admin.aas._1._0.IdentificationT;
+import io.shell.admin.aas._1._0._0Package;
+
+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.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Identification T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.IdentificationTImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.IdentificationTImpl#getIdType <em>Id Type</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IdentificationTImpl extends MinimalEObjectImpl.Container implements IdentificationT {
+	/**
+	 * 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 #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final IdTypeType1 ID_TYPE_EDEFAULT = IdTypeType1.URI;
+
+	/**
+	 * The cached value of the '{@link #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdTypeType1 idType = ID_TYPE_EDEFAULT;
+
+	/**
+	 * This is true if the Id Type attribute has been set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean idTypeESet;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected IdentificationTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.IDENTIFICATION_T;
+	}
+
+	/**
+	 * <!-- 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, _0Package.IDENTIFICATION_T__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdTypeType1 getIdType() {
+		return idType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdType(IdTypeType1 newIdType) {
+		IdTypeType1 oldIdType = idType;
+		idType = newIdType == null ? ID_TYPE_EDEFAULT : newIdType;
+		boolean oldIdTypeESet = idTypeESet;
+		idTypeESet = true;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.IDENTIFICATION_T__ID_TYPE, oldIdType, idType, !oldIdTypeESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void unsetIdType() {
+		IdTypeType1 oldIdType = idType;
+		boolean oldIdTypeESet = idTypeESet;
+		idType = ID_TYPE_EDEFAULT;
+		idTypeESet = false;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.UNSET, _0Package.IDENTIFICATION_T__ID_TYPE, oldIdType, ID_TYPE_EDEFAULT, oldIdTypeESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isSetIdType() {
+		return idTypeESet;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.IDENTIFICATION_T__VALUE:
+				return getValue();
+			case _0Package.IDENTIFICATION_T__ID_TYPE:
+				return getIdType();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.IDENTIFICATION_T__VALUE:
+				setValue((String)newValue);
+				return;
+			case _0Package.IDENTIFICATION_T__ID_TYPE:
+				setIdType((IdTypeType1)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.IDENTIFICATION_T__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case _0Package.IDENTIFICATION_T__ID_TYPE:
+				unsetIdType();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.IDENTIFICATION_T__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+			case _0Package.IDENTIFICATION_T__ID_TYPE:
+				return isSetIdType();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (value: ");
+		result.append(value);
+		result.append(", idType: ");
+		if (idTypeESet) result.append(idType); else result.append("<unset>");
+		result.append(')');
+		return result.toString();
+	}
+
+} //IdentificationTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/KeyTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/KeyTImpl.java
new file mode 100644
index 0000000..62e0530
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/KeyTImpl.java
@@ -0,0 +1,444 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.IdTypeType;
+import io.shell.admin.aas._1._0.KeyT;
+import io.shell.admin.aas._1._0.TypeType;
+import io.shell.admin.aas._1._0._0Package;
+
+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.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Key T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.KeyTImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.KeyTImpl#getIdType <em>Id Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.KeyTImpl#isLocal <em>Local</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.KeyTImpl#getType <em>Type</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class KeyTImpl extends MinimalEObjectImpl.Container implements KeyT {
+	/**
+	 * 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 #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final IdTypeType ID_TYPE_EDEFAULT = IdTypeType.ID_SHORT;
+
+	/**
+	 * The cached value of the '{@link #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdTypeType idType = ID_TYPE_EDEFAULT;
+
+	/**
+	 * This is true if the Id Type attribute has been set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean idTypeESet;
+
+	/**
+	 * The default value of the '{@link #isLocal() <em>Local</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isLocal()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final boolean LOCAL_EDEFAULT = false;
+
+	/**
+	 * The cached value of the '{@link #isLocal() <em>Local</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isLocal()
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean local = LOCAL_EDEFAULT;
+
+	/**
+	 * This is true if the Local attribute has been set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean localESet;
+
+	/**
+	 * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final TypeType TYPE_EDEFAULT = TypeType.GLOBAL_REFERENCE;
+
+	/**
+	 * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getType()
+	 * @generated
+	 * @ordered
+	 */
+	protected TypeType type = TYPE_EDEFAULT;
+
+	/**
+	 * This is true if the Type attribute has been set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean typeESet;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected KeyTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.KEY_T;
+	}
+
+	/**
+	 * <!-- 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, _0Package.KEY_T__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdTypeType getIdType() {
+		return idType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdType(IdTypeType newIdType) {
+		IdTypeType oldIdType = idType;
+		idType = newIdType == null ? ID_TYPE_EDEFAULT : newIdType;
+		boolean oldIdTypeESet = idTypeESet;
+		idTypeESet = true;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.KEY_T__ID_TYPE, oldIdType, idType, !oldIdTypeESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void unsetIdType() {
+		IdTypeType oldIdType = idType;
+		boolean oldIdTypeESet = idTypeESet;
+		idType = ID_TYPE_EDEFAULT;
+		idTypeESet = false;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.UNSET, _0Package.KEY_T__ID_TYPE, oldIdType, ID_TYPE_EDEFAULT, oldIdTypeESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isSetIdType() {
+		return idTypeESet;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isLocal() {
+		return local;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLocal(boolean newLocal) {
+		boolean oldLocal = local;
+		local = newLocal;
+		boolean oldLocalESet = localESet;
+		localESet = true;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.KEY_T__LOCAL, oldLocal, local, !oldLocalESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void unsetLocal() {
+		boolean oldLocal = local;
+		boolean oldLocalESet = localESet;
+		local = LOCAL_EDEFAULT;
+		localESet = false;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.UNSET, _0Package.KEY_T__LOCAL, oldLocal, LOCAL_EDEFAULT, oldLocalESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isSetLocal() {
+		return localESet;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TypeType getType() {
+		return type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setType(TypeType newType) {
+		TypeType oldType = type;
+		type = newType == null ? TYPE_EDEFAULT : newType;
+		boolean oldTypeESet = typeESet;
+		typeESet = true;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.KEY_T__TYPE, oldType, type, !oldTypeESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void unsetType() {
+		TypeType oldType = type;
+		boolean oldTypeESet = typeESet;
+		type = TYPE_EDEFAULT;
+		typeESet = false;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.UNSET, _0Package.KEY_T__TYPE, oldType, TYPE_EDEFAULT, oldTypeESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isSetType() {
+		return typeESet;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.KEY_T__VALUE:
+				return getValue();
+			case _0Package.KEY_T__ID_TYPE:
+				return getIdType();
+			case _0Package.KEY_T__LOCAL:
+				return isLocal();
+			case _0Package.KEY_T__TYPE:
+				return getType();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.KEY_T__VALUE:
+				setValue((String)newValue);
+				return;
+			case _0Package.KEY_T__ID_TYPE:
+				setIdType((IdTypeType)newValue);
+				return;
+			case _0Package.KEY_T__LOCAL:
+				setLocal((Boolean)newValue);
+				return;
+			case _0Package.KEY_T__TYPE:
+				setType((TypeType)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.KEY_T__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case _0Package.KEY_T__ID_TYPE:
+				unsetIdType();
+				return;
+			case _0Package.KEY_T__LOCAL:
+				unsetLocal();
+				return;
+			case _0Package.KEY_T__TYPE:
+				unsetType();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.KEY_T__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+			case _0Package.KEY_T__ID_TYPE:
+				return isSetIdType();
+			case _0Package.KEY_T__LOCAL:
+				return isSetLocal();
+			case _0Package.KEY_T__TYPE:
+				return isSetType();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (value: ");
+		result.append(value);
+		result.append(", idType: ");
+		if (idTypeESet) result.append(idType); else result.append("<unset>");
+		result.append(", local: ");
+		if (localESet) result.append(local); else result.append("<unset>");
+		result.append(", type: ");
+		if (typeESet) result.append(type); else result.append("<unset>");
+		result.append(')');
+		return result.toString();
+	}
+
+} //KeyTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/KeysTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/KeysTImpl.java
new file mode 100644
index 0000000..9a73a7f
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/KeysTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.KeyT;
+import io.shell.admin.aas._1._0.KeysT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Keys T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.KeysTImpl#getKey <em>Key</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class KeysTImpl extends MinimalEObjectImpl.Container implements KeysT {
+	/**
+	 * The cached value of the '{@link #getKey() <em>Key</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKey()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<KeyT> key;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected KeysTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.KEYS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<KeyT> getKey() {
+		if (key == null) {
+			key = new EObjectContainmentEList<KeyT>(KeyT.class, this, _0Package.KEYS_T__KEY);
+		}
+		return key;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.KEYS_T__KEY:
+				return ((InternalEList<?>)getKey()).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 _0Package.KEYS_T__KEY:
+				return getKey();
+		}
+		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 _0Package.KEYS_T__KEY:
+				getKey().clear();
+				getKey().addAll((Collection<? extends KeyT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.KEYS_T__KEY:
+				getKey().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.KEYS_T__KEY:
+				return key != null && !key.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //KeysTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/LangStringTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/LangStringTImpl.java
new file mode 100644
index 0000000..d51ac5f
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/LangStringTImpl.java
@@ -0,0 +1,232 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.LangStringT;
+import io.shell.admin.aas._1._0._0Package;
+
+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.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Lang String T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.LangStringTImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.LangStringTImpl#getLang <em>Lang</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class LangStringTImpl extends MinimalEObjectImpl.Container implements LangStringT {
+	/**
+	 * 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 #getLang() <em>Lang</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLang()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String LANG_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getLang() <em>Lang</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLang()
+	 * @generated
+	 * @ordered
+	 */
+	protected String lang = LANG_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected LangStringTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.LANG_STRING_T;
+	}
+
+	/**
+	 * <!-- 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, _0Package.LANG_STRING_T__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getLang() {
+		return lang;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setLang(String newLang) {
+		String oldLang = lang;
+		lang = newLang;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.LANG_STRING_T__LANG, oldLang, lang));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.LANG_STRING_T__VALUE:
+				return getValue();
+			case _0Package.LANG_STRING_T__LANG:
+				return getLang();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.LANG_STRING_T__VALUE:
+				setValue((String)newValue);
+				return;
+			case _0Package.LANG_STRING_T__LANG:
+				setLang((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.LANG_STRING_T__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+			case _0Package.LANG_STRING_T__LANG:
+				setLang(LANG_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.LANG_STRING_T__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+			case _0Package.LANG_STRING_T__LANG:
+				return LANG_EDEFAULT == null ? lang != null : !LANG_EDEFAULT.equals(lang);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (value: ");
+		result.append(value);
+		result.append(", lang: ");
+		result.append(lang);
+		result.append(')');
+		return result.toString();
+	}
+
+} //LangStringTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/LangStringsTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/LangStringsTImpl.java
new file mode 100644
index 0000000..1adca69
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/LangStringsTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.LangStringT;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Lang Strings T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.LangStringsTImpl#getLangString <em>Lang String</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class LangStringsTImpl extends MinimalEObjectImpl.Container implements LangStringsT {
+	/**
+	 * The cached value of the '{@link #getLangString() <em>Lang String</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getLangString()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<LangStringT> langString;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected LangStringsTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.LANG_STRINGS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<LangStringT> getLangString() {
+		if (langString == null) {
+			langString = new EObjectContainmentEList<LangStringT>(LangStringT.class, this, _0Package.LANG_STRINGS_T__LANG_STRING);
+		}
+		return langString;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.LANG_STRINGS_T__LANG_STRING:
+				return ((InternalEList<?>)getLangString()).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 _0Package.LANG_STRINGS_T__LANG_STRING:
+				return getLangString();
+		}
+		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 _0Package.LANG_STRINGS_T__LANG_STRING:
+				getLangString().clear();
+				getLangString().addAll((Collection<? extends LangStringT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.LANG_STRINGS_T__LANG_STRING:
+				getLangString().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.LANG_STRINGS_T__LANG_STRING:
+				return langString != null && !langString.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //LangStringsTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/OperationTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/OperationTImpl.java
new file mode 100644
index 0000000..0fa7bdd
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/OperationTImpl.java
@@ -0,0 +1,201 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.OperationT;
+import io.shell.admin.aas._1._0.OperationVariableT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Operation T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.OperationTImpl#getIn <em>In</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.OperationTImpl#getOut <em>Out</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class OperationTImpl extends SubmodelElementAbstractTImpl implements OperationT {
+	/**
+	 * The cached value of the '{@link #getIn() <em>In</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIn()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<OperationVariableT> in;
+
+	/**
+	 * The cached value of the '{@link #getOut() <em>Out</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOut()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<OperationVariableT> out;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected OperationTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.OPERATION_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<OperationVariableT> getIn() {
+		if (in == null) {
+			in = new EObjectContainmentEList<OperationVariableT>(OperationVariableT.class, this, _0Package.OPERATION_T__IN);
+		}
+		return in;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<OperationVariableT> getOut() {
+		if (out == null) {
+			out = new EObjectContainmentEList<OperationVariableT>(OperationVariableT.class, this, _0Package.OPERATION_T__OUT);
+		}
+		return out;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.OPERATION_T__IN:
+				return ((InternalEList<?>)getIn()).basicRemove(otherEnd, msgs);
+			case _0Package.OPERATION_T__OUT:
+				return ((InternalEList<?>)getOut()).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 _0Package.OPERATION_T__IN:
+				return getIn();
+			case _0Package.OPERATION_T__OUT:
+				return getOut();
+		}
+		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 _0Package.OPERATION_T__IN:
+				getIn().clear();
+				getIn().addAll((Collection<? extends OperationVariableT>)newValue);
+				return;
+			case _0Package.OPERATION_T__OUT:
+				getOut().clear();
+				getOut().addAll((Collection<? extends OperationVariableT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.OPERATION_T__IN:
+				getIn().clear();
+				return;
+			case _0Package.OPERATION_T__OUT:
+				getOut().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.OPERATION_T__IN:
+				return in != null && !in.isEmpty();
+			case _0Package.OPERATION_T__OUT:
+				return out != null && !out.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //OperationTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/OperationVariableTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/OperationVariableTImpl.java
new file mode 100644
index 0000000..3e68a63
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/OperationVariableTImpl.java
@@ -0,0 +1,190 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.OperationVariableT;
+import io.shell.admin.aas._1._0.SubmodelElementT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Operation Variable T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.OperationVariableTImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class OperationVariableTImpl extends SubmodelElementAbstractTImpl implements OperationVariableT {
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected SubmodelElementT value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected OperationVariableTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.OPERATION_VARIABLE_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelElementT getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValue(SubmodelElementT newValue, NotificationChain msgs) {
+		SubmodelElementT oldValue = value;
+		value = newValue;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.OPERATION_VARIABLE_T__VALUE, oldValue, newValue);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(SubmodelElementT newValue) {
+		if (newValue != value) {
+			NotificationChain msgs = null;
+			if (value != null)
+				msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.OPERATION_VARIABLE_T__VALUE, null, msgs);
+			if (newValue != null)
+				msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.OPERATION_VARIABLE_T__VALUE, null, msgs);
+			msgs = basicSetValue(newValue, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.OPERATION_VARIABLE_T__VALUE, newValue, newValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.OPERATION_VARIABLE_T__VALUE:
+				return basicSetValue(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.OPERATION_VARIABLE_T__VALUE:
+				return getValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.OPERATION_VARIABLE_T__VALUE:
+				setValue((SubmodelElementT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.OPERATION_VARIABLE_T__VALUE:
+				setValue((SubmodelElementT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.OPERATION_VARIABLE_T__VALUE:
+				return value != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //OperationVariableTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PathTypeTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PathTypeTImpl.java
new file mode 100644
index 0000000..77205ef
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PathTypeTImpl.java
@@ -0,0 +1,178 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.PathTypeT;
+import io.shell.admin.aas._1._0._0Package;
+
+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.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Path Type T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.PathTypeTImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class PathTypeTImpl extends MinimalEObjectImpl.Container implements PathTypeT {
+	/**
+	 * 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;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected PathTypeTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.PATH_TYPE_T;
+	}
+
+	/**
+	 * <!-- 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, _0Package.PATH_TYPE_T__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.PATH_TYPE_T__VALUE:
+				return getValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.PATH_TYPE_T__VALUE:
+				setValue((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.PATH_TYPE_T__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.PATH_TYPE_T__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (value: ");
+		result.append(value);
+		result.append(')');
+		return result.toString();
+	}
+
+} //PathTypeTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PropertyTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PropertyTImpl.java
new file mode 100644
index 0000000..b504027
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PropertyTImpl.java
@@ -0,0 +1,325 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.PropertyT;
+import io.shell.admin.aas._1._0.PropertyValueTypeT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Property T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.PropertyTImpl#getValueType <em>Value Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.PropertyTImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.PropertyTImpl#getValueId <em>Value Id</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class PropertyTImpl extends SubmodelElementAbstractTImpl implements PropertyT {
+	/**
+	 * The default value of the '{@link #getValueType() <em>Value Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VALUE_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getValueType() <em>Value Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String valueType = VALUE_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected PropertyValueTypeT value;
+
+	/**
+	 * The cached value of the '{@link #getValueId() <em>Value Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueId()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT valueId;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected PropertyTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.PROPERTY_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getValueType() {
+		return valueType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValueType(String newValueType) {
+		String oldValueType = valueType;
+		valueType = newValueType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.PROPERTY_T__VALUE_TYPE, oldValueType, valueType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertyValueTypeT getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValue(PropertyValueTypeT newValue, NotificationChain msgs) {
+		PropertyValueTypeT oldValue = value;
+		value = newValue;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.PROPERTY_T__VALUE, oldValue, newValue);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(PropertyValueTypeT newValue) {
+		if (newValue != value) {
+			NotificationChain msgs = null;
+			if (value != null)
+				msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.PROPERTY_T__VALUE, null, msgs);
+			if (newValue != null)
+				msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.PROPERTY_T__VALUE, null, msgs);
+			msgs = basicSetValue(newValue, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.PROPERTY_T__VALUE, newValue, newValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getValueId() {
+		return valueId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValueId(ReferenceT newValueId, NotificationChain msgs) {
+		ReferenceT oldValueId = valueId;
+		valueId = newValueId;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.PROPERTY_T__VALUE_ID, oldValueId, newValueId);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValueId(ReferenceT newValueId) {
+		if (newValueId != valueId) {
+			NotificationChain msgs = null;
+			if (valueId != null)
+				msgs = ((InternalEObject)valueId).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.PROPERTY_T__VALUE_ID, null, msgs);
+			if (newValueId != null)
+				msgs = ((InternalEObject)newValueId).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.PROPERTY_T__VALUE_ID, null, msgs);
+			msgs = basicSetValueId(newValueId, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.PROPERTY_T__VALUE_ID, newValueId, newValueId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.PROPERTY_T__VALUE:
+				return basicSetValue(null, msgs);
+			case _0Package.PROPERTY_T__VALUE_ID:
+				return basicSetValueId(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 _0Package.PROPERTY_T__VALUE_TYPE:
+				return getValueType();
+			case _0Package.PROPERTY_T__VALUE:
+				return getValue();
+			case _0Package.PROPERTY_T__VALUE_ID:
+				return getValueId();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.PROPERTY_T__VALUE_TYPE:
+				setValueType((String)newValue);
+				return;
+			case _0Package.PROPERTY_T__VALUE:
+				setValue((PropertyValueTypeT)newValue);
+				return;
+			case _0Package.PROPERTY_T__VALUE_ID:
+				setValueId((ReferenceT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.PROPERTY_T__VALUE_TYPE:
+				setValueType(VALUE_TYPE_EDEFAULT);
+				return;
+			case _0Package.PROPERTY_T__VALUE:
+				setValue((PropertyValueTypeT)null);
+				return;
+			case _0Package.PROPERTY_T__VALUE_ID:
+				setValueId((ReferenceT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.PROPERTY_T__VALUE_TYPE:
+				return VALUE_TYPE_EDEFAULT == null ? valueType != null : !VALUE_TYPE_EDEFAULT.equals(valueType);
+			case _0Package.PROPERTY_T__VALUE:
+				return value != null;
+			case _0Package.PROPERTY_T__VALUE_ID:
+				return valueId != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (valueType: ");
+		result.append(valueType);
+		result.append(')');
+		return result.toString();
+	}
+
+} //PropertyTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PropertyValueTypeTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PropertyValueTypeTImpl.java
new file mode 100644
index 0000000..07fa4b5
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PropertyValueTypeTImpl.java
@@ -0,0 +1,178 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.PropertyValueTypeT;
+import io.shell.admin.aas._1._0._0Package;
+
+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.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Property Value Type T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.PropertyValueTypeTImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class PropertyValueTypeTImpl extends MinimalEObjectImpl.Container implements PropertyValueTypeT {
+	/**
+	 * 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;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected PropertyValueTypeTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.PROPERTY_VALUE_TYPE_T;
+	}
+
+	/**
+	 * <!-- 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, _0Package.PROPERTY_VALUE_TYPE_T__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.PROPERTY_VALUE_TYPE_T__VALUE:
+				return getValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.PROPERTY_VALUE_TYPE_T__VALUE:
+				setValue((String)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.PROPERTY_VALUE_TYPE_T__VALUE:
+				setValue(VALUE_EDEFAULT);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.PROPERTY_VALUE_TYPE_T__VALUE:
+				return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (value: ");
+		result.append(value);
+		result.append(')');
+		return result.toString();
+	}
+
+} //PropertyValueTypeTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PrvalueTypeTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PrvalueTypeTImpl.java
new file mode 100644
index 0000000..fb35748
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/PrvalueTypeTImpl.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.PrvalueTypeT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Prvalue Type T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class PrvalueTypeTImpl extends MinimalEObjectImpl.Container implements PrvalueTypeT {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected PrvalueTypeTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.PRVALUE_TYPE_T;
+	}
+
+} //PrvalueTypeTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/QualifierTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/QualifierTImpl.java
new file mode 100644
index 0000000..81cb2dd
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/QualifierTImpl.java
@@ -0,0 +1,380 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.QualifierT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0.SemanticIdT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Qualifier T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.QualifierTImpl#getSemanticId <em>Semantic Id</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.QualifierTImpl#getQualifierType <em>Qualifier Type</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.QualifierTImpl#getQualifierValue <em>Qualifier Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.QualifierTImpl#getQualifierValueId <em>Qualifier Value Id</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class QualifierTImpl extends MinimalEObjectImpl.Container implements QualifierT {
+	/**
+	 * The cached value of the '{@link #getSemanticId() <em>Semantic Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSemanticId()
+	 * @generated
+	 * @ordered
+	 */
+	protected SemanticIdT semanticId;
+
+	/**
+	 * The default value of the '{@link #getQualifierType() <em>Qualifier Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifierType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String QUALIFIER_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getQualifierType() <em>Qualifier Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifierType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String qualifierType = QUALIFIER_TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getQualifierValue() <em>Qualifier Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifierValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String QUALIFIER_VALUE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getQualifierValue() <em>Qualifier Value</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifierValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected String qualifierValue = QUALIFIER_VALUE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getQualifierValueId() <em>Qualifier Value Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifierValueId()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT qualifierValueId;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected QualifierTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.QUALIFIER_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SemanticIdT getSemanticId() {
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSemanticId(SemanticIdT newSemanticId, NotificationChain msgs) {
+		SemanticIdT oldSemanticId = semanticId;
+		semanticId = newSemanticId;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.QUALIFIER_T__SEMANTIC_ID, oldSemanticId, newSemanticId);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSemanticId(SemanticIdT newSemanticId) {
+		if (newSemanticId != semanticId) {
+			NotificationChain msgs = null;
+			if (semanticId != null)
+				msgs = ((InternalEObject)semanticId).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.QUALIFIER_T__SEMANTIC_ID, null, msgs);
+			if (newSemanticId != null)
+				msgs = ((InternalEObject)newSemanticId).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.QUALIFIER_T__SEMANTIC_ID, null, msgs);
+			msgs = basicSetSemanticId(newSemanticId, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.QUALIFIER_T__SEMANTIC_ID, newSemanticId, newSemanticId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getQualifierType() {
+		return qualifierType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setQualifierType(String newQualifierType) {
+		String oldQualifierType = qualifierType;
+		qualifierType = newQualifierType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.QUALIFIER_T__QUALIFIER_TYPE, oldQualifierType, qualifierType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getQualifierValue() {
+		return qualifierValue;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setQualifierValue(String newQualifierValue) {
+		String oldQualifierValue = qualifierValue;
+		qualifierValue = newQualifierValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.QUALIFIER_T__QUALIFIER_VALUE, oldQualifierValue, qualifierValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getQualifierValueId() {
+		return qualifierValueId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetQualifierValueId(ReferenceT newQualifierValueId, NotificationChain msgs) {
+		ReferenceT oldQualifierValueId = qualifierValueId;
+		qualifierValueId = newQualifierValueId;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.QUALIFIER_T__QUALIFIER_VALUE_ID, oldQualifierValueId, newQualifierValueId);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setQualifierValueId(ReferenceT newQualifierValueId) {
+		if (newQualifierValueId != qualifierValueId) {
+			NotificationChain msgs = null;
+			if (qualifierValueId != null)
+				msgs = ((InternalEObject)qualifierValueId).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.QUALIFIER_T__QUALIFIER_VALUE_ID, null, msgs);
+			if (newQualifierValueId != null)
+				msgs = ((InternalEObject)newQualifierValueId).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.QUALIFIER_T__QUALIFIER_VALUE_ID, null, msgs);
+			msgs = basicSetQualifierValueId(newQualifierValueId, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.QUALIFIER_T__QUALIFIER_VALUE_ID, newQualifierValueId, newQualifierValueId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.QUALIFIER_T__SEMANTIC_ID:
+				return basicSetSemanticId(null, msgs);
+			case _0Package.QUALIFIER_T__QUALIFIER_VALUE_ID:
+				return basicSetQualifierValueId(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 _0Package.QUALIFIER_T__SEMANTIC_ID:
+				return getSemanticId();
+			case _0Package.QUALIFIER_T__QUALIFIER_TYPE:
+				return getQualifierType();
+			case _0Package.QUALIFIER_T__QUALIFIER_VALUE:
+				return getQualifierValue();
+			case _0Package.QUALIFIER_T__QUALIFIER_VALUE_ID:
+				return getQualifierValueId();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.QUALIFIER_T__SEMANTIC_ID:
+				setSemanticId((SemanticIdT)newValue);
+				return;
+			case _0Package.QUALIFIER_T__QUALIFIER_TYPE:
+				setQualifierType((String)newValue);
+				return;
+			case _0Package.QUALIFIER_T__QUALIFIER_VALUE:
+				setQualifierValue((String)newValue);
+				return;
+			case _0Package.QUALIFIER_T__QUALIFIER_VALUE_ID:
+				setQualifierValueId((ReferenceT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.QUALIFIER_T__SEMANTIC_ID:
+				setSemanticId((SemanticIdT)null);
+				return;
+			case _0Package.QUALIFIER_T__QUALIFIER_TYPE:
+				setQualifierType(QUALIFIER_TYPE_EDEFAULT);
+				return;
+			case _0Package.QUALIFIER_T__QUALIFIER_VALUE:
+				setQualifierValue(QUALIFIER_VALUE_EDEFAULT);
+				return;
+			case _0Package.QUALIFIER_T__QUALIFIER_VALUE_ID:
+				setQualifierValueId((ReferenceT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.QUALIFIER_T__SEMANTIC_ID:
+				return semanticId != null;
+			case _0Package.QUALIFIER_T__QUALIFIER_TYPE:
+				return QUALIFIER_TYPE_EDEFAULT == null ? qualifierType != null : !QUALIFIER_TYPE_EDEFAULT.equals(qualifierType);
+			case _0Package.QUALIFIER_T__QUALIFIER_VALUE:
+				return QUALIFIER_VALUE_EDEFAULT == null ? qualifierValue != null : !QUALIFIER_VALUE_EDEFAULT.equals(qualifierValue);
+			case _0Package.QUALIFIER_T__QUALIFIER_VALUE_ID:
+				return qualifierValueId != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (qualifierType: ");
+		result.append(qualifierType);
+		result.append(", qualifierValue: ");
+		result.append(qualifierValue);
+		result.append(')');
+		return result.toString();
+	}
+
+} //QualifierTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/QualifiersTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/QualifiersTImpl.java
new file mode 100644
index 0000000..015125a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/QualifiersTImpl.java
@@ -0,0 +1,164 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.QualifiersT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EDataTypeEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Qualifiers T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.QualifiersTImpl#getQualifier <em>Qualifier</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class QualifiersTImpl extends MinimalEObjectImpl.Container implements QualifiersT {
+	/**
+	 * The cached value of the '{@link #getQualifier() <em>Qualifier</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<String> qualifier;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected QualifiersTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.QUALIFIERS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<String> getQualifier() {
+		if (qualifier == null) {
+			qualifier = new EDataTypeEList<String>(String.class, this, _0Package.QUALIFIERS_T__QUALIFIER);
+		}
+		return qualifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.QUALIFIERS_T__QUALIFIER:
+				return getQualifier();
+		}
+		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 _0Package.QUALIFIERS_T__QUALIFIER:
+				getQualifier().clear();
+				getQualifier().addAll((Collection<? extends String>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.QUALIFIERS_T__QUALIFIER:
+				getQualifier().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.QUALIFIERS_T__QUALIFIER:
+				return qualifier != null && !qualifier.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (qualifier: ");
+		result.append(qualifier);
+		result.append(')');
+		return result.toString();
+	}
+
+} //QualifiersTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ReferenceElementTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ReferenceElementTImpl.java
new file mode 100644
index 0000000..4ce95dd
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ReferenceElementTImpl.java
@@ -0,0 +1,190 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ReferenceElementT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Reference Element T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ReferenceElementTImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ReferenceElementTImpl extends SubmodelElementAbstractTImpl implements ReferenceElementT {
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ReferenceElementTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.REFERENCE_ELEMENT_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValue(ReferenceT newValue, NotificationChain msgs) {
+		ReferenceT oldValue = value;
+		value = newValue;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.REFERENCE_ELEMENT_T__VALUE, oldValue, newValue);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(ReferenceT newValue) {
+		if (newValue != value) {
+			NotificationChain msgs = null;
+			if (value != null)
+				msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.REFERENCE_ELEMENT_T__VALUE, null, msgs);
+			if (newValue != null)
+				msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.REFERENCE_ELEMENT_T__VALUE, null, msgs);
+			msgs = basicSetValue(newValue, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.REFERENCE_ELEMENT_T__VALUE, newValue, newValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.REFERENCE_ELEMENT_T__VALUE:
+				return basicSetValue(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.REFERENCE_ELEMENT_T__VALUE:
+				return getValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.REFERENCE_ELEMENT_T__VALUE:
+				setValue((ReferenceT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.REFERENCE_ELEMENT_T__VALUE:
+				setValue((ReferenceT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.REFERENCE_ELEMENT_T__VALUE:
+				return value != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ReferenceElementTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ReferenceTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ReferenceTImpl.java
new file mode 100644
index 0000000..8152386
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ReferenceTImpl.java
@@ -0,0 +1,191 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.KeysT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Reference T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ReferenceTImpl#getKeys <em>Keys</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ReferenceTImpl extends MinimalEObjectImpl.Container implements ReferenceT {
+	/**
+	 * The cached value of the '{@link #getKeys() <em>Keys</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKeys()
+	 * @generated
+	 * @ordered
+	 */
+	protected KeysT keys;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ReferenceTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.REFERENCE_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public KeysT getKeys() {
+		return keys;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetKeys(KeysT newKeys, NotificationChain msgs) {
+		KeysT oldKeys = keys;
+		keys = newKeys;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.REFERENCE_T__KEYS, oldKeys, newKeys);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setKeys(KeysT newKeys) {
+		if (newKeys != keys) {
+			NotificationChain msgs = null;
+			if (keys != null)
+				msgs = ((InternalEObject)keys).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.REFERENCE_T__KEYS, null, msgs);
+			if (newKeys != null)
+				msgs = ((InternalEObject)newKeys).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.REFERENCE_T__KEYS, null, msgs);
+			msgs = basicSetKeys(newKeys, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.REFERENCE_T__KEYS, newKeys, newKeys));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.REFERENCE_T__KEYS:
+				return basicSetKeys(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 _0Package.REFERENCE_T__KEYS:
+				return getKeys();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.REFERENCE_T__KEYS:
+				setKeys((KeysT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.REFERENCE_T__KEYS:
+				setKeys((KeysT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.REFERENCE_T__KEYS:
+				return keys != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ReferenceTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ReferencesTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ReferencesTImpl.java
new file mode 100644
index 0000000..f78192c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ReferencesTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0.ReferencesT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>References T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ReferencesTImpl#getReference <em>Reference</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ReferencesTImpl extends MinimalEObjectImpl.Container implements ReferencesT {
+	/**
+	 * The cached value of the '{@link #getReference() <em>Reference</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReference()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ReferenceT> reference;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ReferencesTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.REFERENCES_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ReferenceT> getReference() {
+		if (reference == null) {
+			reference = new EObjectContainmentEList<ReferenceT>(ReferenceT.class, this, _0Package.REFERENCES_T__REFERENCE);
+		}
+		return reference;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.REFERENCES_T__REFERENCE:
+				return ((InternalEList<?>)getReference()).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 _0Package.REFERENCES_T__REFERENCE:
+				return getReference();
+		}
+		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 _0Package.REFERENCES_T__REFERENCE:
+				getReference().clear();
+				getReference().addAll((Collection<? extends ReferenceT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.REFERENCES_T__REFERENCE:
+				getReference().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.REFERENCES_T__REFERENCE:
+				return reference != null && !reference.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ReferencesTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/RelationshipElementTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/RelationshipElementTImpl.java
new file mode 100644
index 0000000..243bf54
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/RelationshipElementTImpl.java
@@ -0,0 +1,256 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0.RelationshipElementT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Relationship Element T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.RelationshipElementTImpl#getFirst <em>First</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.RelationshipElementTImpl#getSecond <em>Second</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class RelationshipElementTImpl extends SubmodelElementAbstractTImpl implements RelationshipElementT {
+	/**
+	 * The cached value of the '{@link #getFirst() <em>First</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFirst()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT first;
+
+	/**
+	 * The cached value of the '{@link #getSecond() <em>Second</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSecond()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT second;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected RelationshipElementTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.RELATIONSHIP_ELEMENT_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getFirst() {
+		return first;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetFirst(ReferenceT newFirst, NotificationChain msgs) {
+		ReferenceT oldFirst = first;
+		first = newFirst;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.RELATIONSHIP_ELEMENT_T__FIRST, oldFirst, newFirst);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFirst(ReferenceT newFirst) {
+		if (newFirst != first) {
+			NotificationChain msgs = null;
+			if (first != null)
+				msgs = ((InternalEObject)first).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.RELATIONSHIP_ELEMENT_T__FIRST, null, msgs);
+			if (newFirst != null)
+				msgs = ((InternalEObject)newFirst).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.RELATIONSHIP_ELEMENT_T__FIRST, null, msgs);
+			msgs = basicSetFirst(newFirst, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.RELATIONSHIP_ELEMENT_T__FIRST, newFirst, newFirst));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getSecond() {
+		return second;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSecond(ReferenceT newSecond, NotificationChain msgs) {
+		ReferenceT oldSecond = second;
+		second = newSecond;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.RELATIONSHIP_ELEMENT_T__SECOND, oldSecond, newSecond);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSecond(ReferenceT newSecond) {
+		if (newSecond != second) {
+			NotificationChain msgs = null;
+			if (second != null)
+				msgs = ((InternalEObject)second).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.RELATIONSHIP_ELEMENT_T__SECOND, null, msgs);
+			if (newSecond != null)
+				msgs = ((InternalEObject)newSecond).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.RELATIONSHIP_ELEMENT_T__SECOND, null, msgs);
+			msgs = basicSetSecond(newSecond, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.RELATIONSHIP_ELEMENT_T__SECOND, newSecond, newSecond));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.RELATIONSHIP_ELEMENT_T__FIRST:
+				return basicSetFirst(null, msgs);
+			case _0Package.RELATIONSHIP_ELEMENT_T__SECOND:
+				return basicSetSecond(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 _0Package.RELATIONSHIP_ELEMENT_T__FIRST:
+				return getFirst();
+			case _0Package.RELATIONSHIP_ELEMENT_T__SECOND:
+				return getSecond();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.RELATIONSHIP_ELEMENT_T__FIRST:
+				setFirst((ReferenceT)newValue);
+				return;
+			case _0Package.RELATIONSHIP_ELEMENT_T__SECOND:
+				setSecond((ReferenceT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.RELATIONSHIP_ELEMENT_T__FIRST:
+				setFirst((ReferenceT)null);
+				return;
+			case _0Package.RELATIONSHIP_ELEMENT_T__SECOND:
+				setSecond((ReferenceT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.RELATIONSHIP_ELEMENT_T__FIRST:
+				return first != null;
+			case _0Package.RELATIONSHIP_ELEMENT_T__SECOND:
+				return second != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //RelationshipElementTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SemanticIdTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SemanticIdTImpl.java
new file mode 100644
index 0000000..c917537
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SemanticIdTImpl.java
@@ -0,0 +1,52 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.SemanticIdT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.ecore.EClass;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Semantic Id T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SemanticIdTImpl extends ReferenceTImpl implements SemanticIdT {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SemanticIdTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.SEMANTIC_ID_T;
+	}
+
+} //SemanticIdTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementAbstractTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementAbstractTImpl.java
new file mode 100644
index 0000000..e0b1b62
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementAbstractTImpl.java
@@ -0,0 +1,648 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ConstraintT;
+import io.shell.admin.aas._1._0.EmbeddedDataSpecificationT;
+import io.shell.admin.aas._1._0.IdShortT;
+import io.shell.admin.aas._1._0.KindType;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.SemanticIdT;
+import io.shell.admin.aas._1._0.SubmodelElementAbstractT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+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>Submodel Element Abstract T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl#getSemanticId <em>Semantic Id</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl#getKind <em>Kind</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementAbstractTImpl#getQualifier <em>Qualifier</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SubmodelElementAbstractTImpl extends MinimalEObjectImpl.Container implements SubmodelElementAbstractT {
+	/**
+	 * The cached value of the '{@link #getIdShort() <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdShort()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdShortT idShort;
+
+	/**
+	 * The default value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CATEGORY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected String category = CATEGORY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT description;
+
+	/**
+	 * The default value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String parent = PARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getSemanticId() <em>Semantic Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSemanticId()
+	 * @generated
+	 * @ordered
+	 */
+	protected SemanticIdT semanticId;
+
+	/**
+	 * The cached value of the '{@link #getEmbeddedDataSpecification() <em>Embedded Data Specification</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbeddedDataSpecification()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EmbeddedDataSpecificationT> embeddedDataSpecification;
+
+	/**
+	 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final KindType KIND_EDEFAULT = KindType.TYPE;
+
+	/**
+	 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected KindType kind = KIND_EDEFAULT;
+
+	/**
+	 * This is true if the Kind attribute has been set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean kindESet;
+
+	/**
+	 * The cached value of the '{@link #getQualifier() <em>Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected ConstraintT qualifier;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SubmodelElementAbstractTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.SUBMODEL_ELEMENT_ABSTRACT_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdShortT getIdShort() {
+		return idShort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdShort(IdShortT newIdShort, NotificationChain msgs) {
+		IdShortT oldIdShort = idShort;
+		idShort = newIdShort;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT, oldIdShort, newIdShort);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdShort(IdShortT newIdShort) {
+		if (newIdShort != idShort) {
+			NotificationChain msgs = null;
+			if (idShort != null)
+				msgs = ((InternalEObject)idShort).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT, null, msgs);
+			if (newIdShort != null)
+				msgs = ((InternalEObject)newIdShort).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT, null, msgs);
+			msgs = basicSetIdShort(newIdShort, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT, newIdShort, newIdShort));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCategory() {
+		return category;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCategory(String newCategory) {
+		String oldCategory = category;
+		category = newCategory;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY, oldCategory, category));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(LangStringsT newDescription, NotificationChain msgs) {
+		LangStringsT oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(LangStringsT newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(String newParent) {
+		String oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SemanticIdT getSemanticId() {
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSemanticId(SemanticIdT newSemanticId, NotificationChain msgs) {
+		SemanticIdT oldSemanticId = semanticId;
+		semanticId = newSemanticId;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID, oldSemanticId, newSemanticId);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSemanticId(SemanticIdT newSemanticId) {
+		if (newSemanticId != semanticId) {
+			NotificationChain msgs = null;
+			if (semanticId != null)
+				msgs = ((InternalEObject)semanticId).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID, null, msgs);
+			if (newSemanticId != null)
+				msgs = ((InternalEObject)newSemanticId).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID, null, msgs);
+			msgs = basicSetSemanticId(newSemanticId, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID, newSemanticId, newSemanticId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification() {
+		if (embeddedDataSpecification == null) {
+			embeddedDataSpecification = new EObjectContainmentEList<EmbeddedDataSpecificationT>(EmbeddedDataSpecificationT.class, this, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION);
+		}
+		return embeddedDataSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public KindType getKind() {
+		return kind;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setKind(KindType newKind) {
+		KindType oldKind = kind;
+		kind = newKind == null ? KIND_EDEFAULT : newKind;
+		boolean oldKindESet = kindESet;
+		kindESet = true;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__KIND, oldKind, kind, !oldKindESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void unsetKind() {
+		KindType oldKind = kind;
+		boolean oldKindESet = kindESet;
+		kind = KIND_EDEFAULT;
+		kindESet = false;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.UNSET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__KIND, oldKind, KIND_EDEFAULT, oldKindESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isSetKind() {
+		return kindESet;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConstraintT getQualifier() {
+		return qualifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetQualifier(ConstraintT newQualifier, NotificationChain msgs) {
+		ConstraintT oldQualifier = qualifier;
+		qualifier = newQualifier;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER, oldQualifier, newQualifier);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setQualifier(ConstraintT newQualifier) {
+		if (newQualifier != qualifier) {
+			NotificationChain msgs = null;
+			if (qualifier != null)
+				msgs = ((InternalEObject)qualifier).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER, null, msgs);
+			if (newQualifier != null)
+				msgs = ((InternalEObject)newQualifier).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER, null, msgs);
+			msgs = basicSetQualifier(newQualifier, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER, newQualifier, newQualifier));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT:
+				return basicSetIdShort(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID:
+				return basicSetSemanticId(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION:
+				return ((InternalEList<?>)getEmbeddedDataSpecification()).basicRemove(otherEnd, msgs);
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER:
+				return basicSetQualifier(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 _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT:
+				return getIdShort();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY:
+				return getCategory();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION:
+				return getDescription();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__PARENT:
+				return getParent();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID:
+				return getSemanticId();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION:
+				return getEmbeddedDataSpecification();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__KIND:
+				return getKind();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER:
+				return getQualifier();
+		}
+		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 _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT:
+				setIdShort((IdShortT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY:
+				setCategory((String)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION:
+				setDescription((LangStringsT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__PARENT:
+				setParent((String)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID:
+				setSemanticId((SemanticIdT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				getEmbeddedDataSpecification().addAll((Collection<? extends EmbeddedDataSpecificationT>)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__KIND:
+				setKind((KindType)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER:
+				setQualifier((ConstraintT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT:
+				setIdShort((IdShortT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY:
+				setCategory(CATEGORY_EDEFAULT);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION:
+				setDescription((LangStringsT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__PARENT:
+				setParent(PARENT_EDEFAULT);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID:
+				setSemanticId((SemanticIdT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__KIND:
+				unsetKind();
+				return;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER:
+				setQualifier((ConstraintT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT:
+				return idShort != null;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY:
+				return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION:
+				return description != null;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__PARENT:
+				return PARENT_EDEFAULT == null ? parent != null : !PARENT_EDEFAULT.equals(parent);
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID:
+				return semanticId != null;
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION:
+				return embeddedDataSpecification != null && !embeddedDataSpecification.isEmpty();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__KIND:
+				return isSetKind();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER:
+				return qualifier != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (category: ");
+		result.append(category);
+		result.append(", parent: ");
+		result.append(parent);
+		result.append(", kind: ");
+		if (kindESet) result.append(kind); else result.append("<unset>");
+		result.append(')');
+		return result.toString();
+	}
+
+} //SubmodelElementAbstractTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementCollectionTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementCollectionTImpl.java
new file mode 100644
index 0000000..aed0e82
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementCollectionTImpl.java
@@ -0,0 +1,380 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.SubmodelElementCollectionT;
+import io.shell.admin.aas._1._0.SubmodelElementsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Submodel Element Collection T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementCollectionTImpl#getValue <em>Value</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementCollectionTImpl#isOrdered <em>Ordered</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementCollectionTImpl#isAllowDuplicates <em>Allow Duplicates</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SubmodelElementCollectionTImpl extends SubmodelElementAbstractTImpl implements SubmodelElementCollectionT {
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected SubmodelElementsT value;
+
+	/**
+	 * The default value of the '{@link #isOrdered() <em>Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isOrdered()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final boolean ORDERED_EDEFAULT = false;
+
+	/**
+	 * The cached value of the '{@link #isOrdered() <em>Ordered</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isOrdered()
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean ordered = ORDERED_EDEFAULT;
+
+	/**
+	 * This is true if the Ordered attribute has been set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean orderedESet;
+
+	/**
+	 * The default value of the '{@link #isAllowDuplicates() <em>Allow Duplicates</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isAllowDuplicates()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final boolean ALLOW_DUPLICATES_EDEFAULT = false;
+
+	/**
+	 * The cached value of the '{@link #isAllowDuplicates() <em>Allow Duplicates</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #isAllowDuplicates()
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean allowDuplicates = ALLOW_DUPLICATES_EDEFAULT;
+
+	/**
+	 * This is true if the Allow Duplicates attribute has been set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean allowDuplicatesESet;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SubmodelElementCollectionTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.SUBMODEL_ELEMENT_COLLECTION_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelElementsT getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValue(SubmodelElementsT newValue, NotificationChain msgs) {
+		SubmodelElementsT oldValue = value;
+		value = newValue;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_COLLECTION_T__VALUE, oldValue, newValue);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValue(SubmodelElementsT newValue) {
+		if (newValue != value) {
+			NotificationChain msgs = null;
+			if (value != null)
+				msgs = ((InternalEObject)value).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_COLLECTION_T__VALUE, null, msgs);
+			if (newValue != null)
+				msgs = ((InternalEObject)newValue).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_COLLECTION_T__VALUE, null, msgs);
+			msgs = basicSetValue(newValue, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_COLLECTION_T__VALUE, newValue, newValue));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isOrdered() {
+		return ordered;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOrdered(boolean newOrdered) {
+		boolean oldOrdered = ordered;
+		ordered = newOrdered;
+		boolean oldOrderedESet = orderedESet;
+		orderedESet = true;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ORDERED, oldOrdered, ordered, !oldOrderedESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void unsetOrdered() {
+		boolean oldOrdered = ordered;
+		boolean oldOrderedESet = orderedESet;
+		ordered = ORDERED_EDEFAULT;
+		orderedESet = false;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.UNSET, _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ORDERED, oldOrdered, ORDERED_EDEFAULT, oldOrderedESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isSetOrdered() {
+		return orderedESet;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isAllowDuplicates() {
+		return allowDuplicates;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAllowDuplicates(boolean newAllowDuplicates) {
+		boolean oldAllowDuplicates = allowDuplicates;
+		allowDuplicates = newAllowDuplicates;
+		boolean oldAllowDuplicatesESet = allowDuplicatesESet;
+		allowDuplicatesESet = true;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ALLOW_DUPLICATES, oldAllowDuplicates, allowDuplicates, !oldAllowDuplicatesESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void unsetAllowDuplicates() {
+		boolean oldAllowDuplicates = allowDuplicates;
+		boolean oldAllowDuplicatesESet = allowDuplicatesESet;
+		allowDuplicates = ALLOW_DUPLICATES_EDEFAULT;
+		allowDuplicatesESet = false;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.UNSET, _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ALLOW_DUPLICATES, oldAllowDuplicates, ALLOW_DUPLICATES_EDEFAULT, oldAllowDuplicatesESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isSetAllowDuplicates() {
+		return allowDuplicatesESet;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__VALUE:
+				return basicSetValue(null, msgs);
+		}
+		return super.eInverseRemove(otherEnd, featureID, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__VALUE:
+				return getValue();
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ORDERED:
+				return isOrdered();
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ALLOW_DUPLICATES:
+				return isAllowDuplicates();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__VALUE:
+				setValue((SubmodelElementsT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ORDERED:
+				setOrdered((Boolean)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ALLOW_DUPLICATES:
+				setAllowDuplicates((Boolean)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__VALUE:
+				setValue((SubmodelElementsT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ORDERED:
+				unsetOrdered();
+				return;
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ALLOW_DUPLICATES:
+				unsetAllowDuplicates();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__VALUE:
+				return value != null;
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ORDERED:
+				return isSetOrdered();
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T__ALLOW_DUPLICATES:
+				return isSetAllowDuplicates();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (ordered: ");
+		if (orderedESet) result.append(ordered); else result.append("<unset>");
+		result.append(", allowDuplicates: ");
+		if (allowDuplicatesESet) result.append(allowDuplicates); else result.append("<unset>");
+		result.append(')');
+		return result.toString();
+	}
+
+} //SubmodelElementCollectionTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementTImpl.java
new file mode 100644
index 0000000..0287a25
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementTImpl.java
@@ -0,0 +1,727 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.BlobT;
+import io.shell.admin.aas._1._0.EventT;
+import io.shell.admin.aas._1._0.FileT;
+import io.shell.admin.aas._1._0.OperationT;
+import io.shell.admin.aas._1._0.OperationVariableT;
+import io.shell.admin.aas._1._0.PropertyT;
+import io.shell.admin.aas._1._0.ReferenceElementT;
+import io.shell.admin.aas._1._0.RelationshipElementT;
+import io.shell.admin.aas._1._0.SubmodelElementCollectionT;
+import io.shell.admin.aas._1._0.SubmodelElementT;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Submodel Element T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl#getProperty <em>Property</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl#getFile <em>File</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl#getBlob <em>Blob</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl#getReferenceElement <em>Reference Element</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl#getSubmodelElementCollection <em>Submodel Element Collection</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl#getRelationshipElement <em>Relationship Element</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl#getOperation <em>Operation</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl#getOperationVariable <em>Operation Variable</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementTImpl#getEvent <em>Event</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SubmodelElementTImpl extends MinimalEObjectImpl.Container implements SubmodelElementT {
+	/**
+	 * The cached value of the '{@link #getProperty() <em>Property</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getProperty()
+	 * @generated
+	 * @ordered
+	 */
+	protected PropertyT property;
+
+	/**
+	 * The cached value of the '{@link #getFile() <em>File</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getFile()
+	 * @generated
+	 * @ordered
+	 */
+	protected FileT file;
+
+	/**
+	 * The cached value of the '{@link #getBlob() <em>Blob</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getBlob()
+	 * @generated
+	 * @ordered
+	 */
+	protected BlobT blob;
+
+	/**
+	 * The cached value of the '{@link #getReferenceElement() <em>Reference Element</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getReferenceElement()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceElementT referenceElement;
+
+	/**
+	 * The cached value of the '{@link #getSubmodelElementCollection() <em>Submodel Element Collection</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubmodelElementCollection()
+	 * @generated
+	 * @ordered
+	 */
+	protected SubmodelElementCollectionT submodelElementCollection;
+
+	/**
+	 * The cached value of the '{@link #getRelationshipElement() <em>Relationship Element</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getRelationshipElement()
+	 * @generated
+	 * @ordered
+	 */
+	protected RelationshipElementT relationshipElement;
+
+	/**
+	 * The cached value of the '{@link #getOperation() <em>Operation</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOperation()
+	 * @generated
+	 * @ordered
+	 */
+	protected OperationT operation;
+
+	/**
+	 * The cached value of the '{@link #getOperationVariable() <em>Operation Variable</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getOperationVariable()
+	 * @generated
+	 * @ordered
+	 */
+	protected OperationVariableT operationVariable;
+
+	/**
+	 * The cached value of the '{@link #getEvent() <em>Event</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEvent()
+	 * @generated
+	 * @ordered
+	 */
+	protected EventT event;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SubmodelElementTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.SUBMODEL_ELEMENT_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertyT getProperty() {
+		return property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetProperty(PropertyT newProperty, NotificationChain msgs) {
+		PropertyT oldProperty = property;
+		property = newProperty;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__PROPERTY, oldProperty, newProperty);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setProperty(PropertyT newProperty) {
+		if (newProperty != property) {
+			NotificationChain msgs = null;
+			if (property != null)
+				msgs = ((InternalEObject)property).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__PROPERTY, null, msgs);
+			if (newProperty != null)
+				msgs = ((InternalEObject)newProperty).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__PROPERTY, null, msgs);
+			msgs = basicSetProperty(newProperty, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__PROPERTY, newProperty, newProperty));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FileT getFile() {
+		return file;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetFile(FileT newFile, NotificationChain msgs) {
+		FileT oldFile = file;
+		file = newFile;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__FILE, oldFile, newFile);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setFile(FileT newFile) {
+		if (newFile != file) {
+			NotificationChain msgs = null;
+			if (file != null)
+				msgs = ((InternalEObject)file).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__FILE, null, msgs);
+			if (newFile != null)
+				msgs = ((InternalEObject)newFile).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__FILE, null, msgs);
+			msgs = basicSetFile(newFile, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__FILE, newFile, newFile));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BlobT getBlob() {
+		return blob;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetBlob(BlobT newBlob, NotificationChain msgs) {
+		BlobT oldBlob = blob;
+		blob = newBlob;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__BLOB, oldBlob, newBlob);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setBlob(BlobT newBlob) {
+		if (newBlob != blob) {
+			NotificationChain msgs = null;
+			if (blob != null)
+				msgs = ((InternalEObject)blob).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__BLOB, null, msgs);
+			if (newBlob != null)
+				msgs = ((InternalEObject)newBlob).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__BLOB, null, msgs);
+			msgs = basicSetBlob(newBlob, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__BLOB, newBlob, newBlob));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceElementT getReferenceElement() {
+		return referenceElement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetReferenceElement(ReferenceElementT newReferenceElement, NotificationChain msgs) {
+		ReferenceElementT oldReferenceElement = referenceElement;
+		referenceElement = newReferenceElement;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT, oldReferenceElement, newReferenceElement);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setReferenceElement(ReferenceElementT newReferenceElement) {
+		if (newReferenceElement != referenceElement) {
+			NotificationChain msgs = null;
+			if (referenceElement != null)
+				msgs = ((InternalEObject)referenceElement).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT, null, msgs);
+			if (newReferenceElement != null)
+				msgs = ((InternalEObject)newReferenceElement).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT, null, msgs);
+			msgs = basicSetReferenceElement(newReferenceElement, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT, newReferenceElement, newReferenceElement));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelElementCollectionT getSubmodelElementCollection() {
+		return submodelElementCollection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSubmodelElementCollection(SubmodelElementCollectionT newSubmodelElementCollection, NotificationChain msgs) {
+		SubmodelElementCollectionT oldSubmodelElementCollection = submodelElementCollection;
+		submodelElementCollection = newSubmodelElementCollection;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION, oldSubmodelElementCollection, newSubmodelElementCollection);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubmodelElementCollection(SubmodelElementCollectionT newSubmodelElementCollection) {
+		if (newSubmodelElementCollection != submodelElementCollection) {
+			NotificationChain msgs = null;
+			if (submodelElementCollection != null)
+				msgs = ((InternalEObject)submodelElementCollection).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION, null, msgs);
+			if (newSubmodelElementCollection != null)
+				msgs = ((InternalEObject)newSubmodelElementCollection).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION, null, msgs);
+			msgs = basicSetSubmodelElementCollection(newSubmodelElementCollection, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION, newSubmodelElementCollection, newSubmodelElementCollection));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public RelationshipElementT getRelationshipElement() {
+		return relationshipElement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetRelationshipElement(RelationshipElementT newRelationshipElement, NotificationChain msgs) {
+		RelationshipElementT oldRelationshipElement = relationshipElement;
+		relationshipElement = newRelationshipElement;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT, oldRelationshipElement, newRelationshipElement);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setRelationshipElement(RelationshipElementT newRelationshipElement) {
+		if (newRelationshipElement != relationshipElement) {
+			NotificationChain msgs = null;
+			if (relationshipElement != null)
+				msgs = ((InternalEObject)relationshipElement).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT, null, msgs);
+			if (newRelationshipElement != null)
+				msgs = ((InternalEObject)newRelationshipElement).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT, null, msgs);
+			msgs = basicSetRelationshipElement(newRelationshipElement, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT, newRelationshipElement, newRelationshipElement));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OperationT getOperation() {
+		return operation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetOperation(OperationT newOperation, NotificationChain msgs) {
+		OperationT oldOperation = operation;
+		operation = newOperation;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__OPERATION, oldOperation, newOperation);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOperation(OperationT newOperation) {
+		if (newOperation != operation) {
+			NotificationChain msgs = null;
+			if (operation != null)
+				msgs = ((InternalEObject)operation).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__OPERATION, null, msgs);
+			if (newOperation != null)
+				msgs = ((InternalEObject)newOperation).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__OPERATION, null, msgs);
+			msgs = basicSetOperation(newOperation, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__OPERATION, newOperation, newOperation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OperationVariableT getOperationVariable() {
+		return operationVariable;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetOperationVariable(OperationVariableT newOperationVariable, NotificationChain msgs) {
+		OperationVariableT oldOperationVariable = operationVariable;
+		operationVariable = newOperationVariable;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__OPERATION_VARIABLE, oldOperationVariable, newOperationVariable);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setOperationVariable(OperationVariableT newOperationVariable) {
+		if (newOperationVariable != operationVariable) {
+			NotificationChain msgs = null;
+			if (operationVariable != null)
+				msgs = ((InternalEObject)operationVariable).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__OPERATION_VARIABLE, null, msgs);
+			if (newOperationVariable != null)
+				msgs = ((InternalEObject)newOperationVariable).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__OPERATION_VARIABLE, null, msgs);
+			msgs = basicSetOperationVariable(newOperationVariable, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__OPERATION_VARIABLE, newOperationVariable, newOperationVariable));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EventT getEvent() {
+		return event;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetEvent(EventT newEvent, NotificationChain msgs) {
+		EventT oldEvent = event;
+		event = newEvent;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__EVENT, oldEvent, newEvent);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setEvent(EventT newEvent) {
+		if (newEvent != event) {
+			NotificationChain msgs = null;
+			if (event != null)
+				msgs = ((InternalEObject)event).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__EVENT, null, msgs);
+			if (newEvent != null)
+				msgs = ((InternalEObject)newEvent).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_ELEMENT_T__EVENT, null, msgs);
+			msgs = basicSetEvent(newEvent, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_ELEMENT_T__EVENT, newEvent, newEvent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_T__PROPERTY:
+				return basicSetProperty(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_T__FILE:
+				return basicSetFile(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_T__BLOB:
+				return basicSetBlob(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT:
+				return basicSetReferenceElement(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION:
+				return basicSetSubmodelElementCollection(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT:
+				return basicSetRelationshipElement(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION:
+				return basicSetOperation(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION_VARIABLE:
+				return basicSetOperationVariable(null, msgs);
+			case _0Package.SUBMODEL_ELEMENT_T__EVENT:
+				return basicSetEvent(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 _0Package.SUBMODEL_ELEMENT_T__PROPERTY:
+				return getProperty();
+			case _0Package.SUBMODEL_ELEMENT_T__FILE:
+				return getFile();
+			case _0Package.SUBMODEL_ELEMENT_T__BLOB:
+				return getBlob();
+			case _0Package.SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT:
+				return getReferenceElement();
+			case _0Package.SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION:
+				return getSubmodelElementCollection();
+			case _0Package.SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT:
+				return getRelationshipElement();
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION:
+				return getOperation();
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION_VARIABLE:
+				return getOperationVariable();
+			case _0Package.SUBMODEL_ELEMENT_T__EVENT:
+				return getEvent();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_T__PROPERTY:
+				setProperty((PropertyT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__FILE:
+				setFile((FileT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__BLOB:
+				setBlob((BlobT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT:
+				setReferenceElement((ReferenceElementT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION:
+				setSubmodelElementCollection((SubmodelElementCollectionT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT:
+				setRelationshipElement((RelationshipElementT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION:
+				setOperation((OperationT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION_VARIABLE:
+				setOperationVariable((OperationVariableT)newValue);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__EVENT:
+				setEvent((EventT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_T__PROPERTY:
+				setProperty((PropertyT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__FILE:
+				setFile((FileT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__BLOB:
+				setBlob((BlobT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT:
+				setReferenceElement((ReferenceElementT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION:
+				setSubmodelElementCollection((SubmodelElementCollectionT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT:
+				setRelationshipElement((RelationshipElementT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION:
+				setOperation((OperationT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION_VARIABLE:
+				setOperationVariable((OperationVariableT)null);
+				return;
+			case _0Package.SUBMODEL_ELEMENT_T__EVENT:
+				setEvent((EventT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENT_T__PROPERTY:
+				return property != null;
+			case _0Package.SUBMODEL_ELEMENT_T__FILE:
+				return file != null;
+			case _0Package.SUBMODEL_ELEMENT_T__BLOB:
+				return blob != null;
+			case _0Package.SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT:
+				return referenceElement != null;
+			case _0Package.SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION:
+				return submodelElementCollection != null;
+			case _0Package.SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT:
+				return relationshipElement != null;
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION:
+				return operation != null;
+			case _0Package.SUBMODEL_ELEMENT_T__OPERATION_VARIABLE:
+				return operationVariable != null;
+			case _0Package.SUBMODEL_ELEMENT_T__EVENT:
+				return event != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //SubmodelElementTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementsTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementsTImpl.java
new file mode 100644
index 0000000..11c1f00
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelElementsTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.SubmodelElementT;
+import io.shell.admin.aas._1._0.SubmodelElementsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Submodel Elements T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelElementsTImpl#getSubmodelElement <em>Submodel Element</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SubmodelElementsTImpl extends MinimalEObjectImpl.Container implements SubmodelElementsT {
+	/**
+	 * The cached value of the '{@link #getSubmodelElement() <em>Submodel Element</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubmodelElement()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<SubmodelElementT> submodelElement;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SubmodelElementsTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.SUBMODEL_ELEMENTS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<SubmodelElementT> getSubmodelElement() {
+		if (submodelElement == null) {
+			submodelElement = new EObjectContainmentEList<SubmodelElementT>(SubmodelElementT.class, this, _0Package.SUBMODEL_ELEMENTS_T__SUBMODEL_ELEMENT);
+		}
+		return submodelElement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENTS_T__SUBMODEL_ELEMENT:
+				return ((InternalEList<?>)getSubmodelElement()).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 _0Package.SUBMODEL_ELEMENTS_T__SUBMODEL_ELEMENT:
+				return getSubmodelElement();
+		}
+		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 _0Package.SUBMODEL_ELEMENTS_T__SUBMODEL_ELEMENT:
+				getSubmodelElement().clear();
+				getSubmodelElement().addAll((Collection<? extends SubmodelElementT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENTS_T__SUBMODEL_ELEMENT:
+				getSubmodelElement().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_ELEMENTS_T__SUBMODEL_ELEMENT:
+				return submodelElement != null && !submodelElement.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //SubmodelElementsTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelRefsTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelRefsTImpl.java
new file mode 100644
index 0000000..f9be673
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelRefsTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0.SubmodelRefsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Submodel Refs T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelRefsTImpl#getSubmodelRef <em>Submodel Ref</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SubmodelRefsTImpl extends MinimalEObjectImpl.Container implements SubmodelRefsT {
+	/**
+	 * The cached value of the '{@link #getSubmodelRef() <em>Submodel Ref</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubmodelRef()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ReferenceT> submodelRef;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SubmodelRefsTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.SUBMODEL_REFS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ReferenceT> getSubmodelRef() {
+		if (submodelRef == null) {
+			submodelRef = new EObjectContainmentEList<ReferenceT>(ReferenceT.class, this, _0Package.SUBMODEL_REFS_T__SUBMODEL_REF);
+		}
+		return submodelRef;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_REFS_T__SUBMODEL_REF:
+				return ((InternalEList<?>)getSubmodelRef()).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 _0Package.SUBMODEL_REFS_T__SUBMODEL_REF:
+				return getSubmodelRef();
+		}
+		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 _0Package.SUBMODEL_REFS_T__SUBMODEL_REF:
+				getSubmodelRef().clear();
+				getSubmodelRef().addAll((Collection<? extends ReferenceT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_REFS_T__SUBMODEL_REF:
+				getSubmodelRef().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_REFS_T__SUBMODEL_REF:
+				return submodelRef != null && !submodelRef.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //SubmodelRefsTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelTImpl.java
new file mode 100644
index 0000000..cd132db
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelTImpl.java
@@ -0,0 +1,849 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AdministrationT;
+import io.shell.admin.aas._1._0.ConstraintT;
+import io.shell.admin.aas._1._0.EmbeddedDataSpecificationT;
+import io.shell.admin.aas._1._0.IdShortT;
+import io.shell.admin.aas._1._0.IdentificationT;
+import io.shell.admin.aas._1._0.KindType;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.SemanticIdT;
+import io.shell.admin.aas._1._0.SubmodelElementsT;
+import io.shell.admin.aas._1._0.SubmodelT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+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>Submodel T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getIdentification <em>Identification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getAdministration <em>Administration</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getSemanticId <em>Semantic Id</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getKind <em>Kind</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getQualifier <em>Qualifier</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelTImpl#getSubmodelElements <em>Submodel Elements</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SubmodelTImpl extends MinimalEObjectImpl.Container implements SubmodelT {
+	/**
+	 * The cached value of the '{@link #getIdShort() <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdShort()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdShortT idShort;
+
+	/**
+	 * The default value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CATEGORY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected String category = CATEGORY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT description;
+
+	/**
+	 * The default value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String parent = PARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getIdentification() <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdentification()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdentificationT identification;
+
+	/**
+	 * The cached value of the '{@link #getAdministration() <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getAdministration()
+	 * @generated
+	 * @ordered
+	 */
+	protected AdministrationT administration;
+
+	/**
+	 * The cached value of the '{@link #getEmbeddedDataSpecification() <em>Embedded Data Specification</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbeddedDataSpecification()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EmbeddedDataSpecificationT> embeddedDataSpecification;
+
+	/**
+	 * The cached value of the '{@link #getSemanticId() <em>Semantic Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSemanticId()
+	 * @generated
+	 * @ordered
+	 */
+	protected SemanticIdT semanticId;
+
+	/**
+	 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final KindType KIND_EDEFAULT = KindType.TYPE;
+
+	/**
+	 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected KindType kind = KIND_EDEFAULT;
+
+	/**
+	 * This is true if the Kind attribute has been set.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean kindESet;
+
+	/**
+	 * The cached value of the '{@link #getQualifier() <em>Qualifier</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getQualifier()
+	 * @generated
+	 * @ordered
+	 */
+	protected ConstraintT qualifier;
+
+	/**
+	 * The cached value of the '{@link #getSubmodelElements() <em>Submodel Elements</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubmodelElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected SubmodelElementsT submodelElements;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SubmodelTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.SUBMODEL_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdShortT getIdShort() {
+		return idShort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdShort(IdShortT newIdShort, NotificationChain msgs) {
+		IdShortT oldIdShort = idShort;
+		idShort = newIdShort;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__ID_SHORT, oldIdShort, newIdShort);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdShort(IdShortT newIdShort) {
+		if (newIdShort != idShort) {
+			NotificationChain msgs = null;
+			if (idShort != null)
+				msgs = ((InternalEObject)idShort).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__ID_SHORT, null, msgs);
+			if (newIdShort != null)
+				msgs = ((InternalEObject)newIdShort).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__ID_SHORT, null, msgs);
+			msgs = basicSetIdShort(newIdShort, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__ID_SHORT, newIdShort, newIdShort));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCategory() {
+		return category;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCategory(String newCategory) {
+		String oldCategory = category;
+		category = newCategory;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__CATEGORY, oldCategory, category));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(LangStringsT newDescription, NotificationChain msgs) {
+		LangStringsT oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(LangStringsT newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(String newParent) {
+		String oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdentificationT getIdentification() {
+		return identification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdentification(IdentificationT newIdentification, NotificationChain msgs) {
+		IdentificationT oldIdentification = identification;
+		identification = newIdentification;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__IDENTIFICATION, oldIdentification, newIdentification);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdentification(IdentificationT newIdentification) {
+		if (newIdentification != identification) {
+			NotificationChain msgs = null;
+			if (identification != null)
+				msgs = ((InternalEObject)identification).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__IDENTIFICATION, null, msgs);
+			if (newIdentification != null)
+				msgs = ((InternalEObject)newIdentification).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__IDENTIFICATION, null, msgs);
+			msgs = basicSetIdentification(newIdentification, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__IDENTIFICATION, newIdentification, newIdentification));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AdministrationT getAdministration() {
+		return administration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetAdministration(AdministrationT newAdministration, NotificationChain msgs) {
+		AdministrationT oldAdministration = administration;
+		administration = newAdministration;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__ADMINISTRATION, oldAdministration, newAdministration);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setAdministration(AdministrationT newAdministration) {
+		if (newAdministration != administration) {
+			NotificationChain msgs = null;
+			if (administration != null)
+				msgs = ((InternalEObject)administration).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__ADMINISTRATION, null, msgs);
+			if (newAdministration != null)
+				msgs = ((InternalEObject)newAdministration).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__ADMINISTRATION, null, msgs);
+			msgs = basicSetAdministration(newAdministration, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__ADMINISTRATION, newAdministration, newAdministration));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification() {
+		if (embeddedDataSpecification == null) {
+			embeddedDataSpecification = new EObjectContainmentEList<EmbeddedDataSpecificationT>(EmbeddedDataSpecificationT.class, this, _0Package.SUBMODEL_T__EMBEDDED_DATA_SPECIFICATION);
+		}
+		return embeddedDataSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SemanticIdT getSemanticId() {
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSemanticId(SemanticIdT newSemanticId, NotificationChain msgs) {
+		SemanticIdT oldSemanticId = semanticId;
+		semanticId = newSemanticId;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__SEMANTIC_ID, oldSemanticId, newSemanticId);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSemanticId(SemanticIdT newSemanticId) {
+		if (newSemanticId != semanticId) {
+			NotificationChain msgs = null;
+			if (semanticId != null)
+				msgs = ((InternalEObject)semanticId).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__SEMANTIC_ID, null, msgs);
+			if (newSemanticId != null)
+				msgs = ((InternalEObject)newSemanticId).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__SEMANTIC_ID, null, msgs);
+			msgs = basicSetSemanticId(newSemanticId, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__SEMANTIC_ID, newSemanticId, newSemanticId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public KindType getKind() {
+		return kind;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setKind(KindType newKind) {
+		KindType oldKind = kind;
+		kind = newKind == null ? KIND_EDEFAULT : newKind;
+		boolean oldKindESet = kindESet;
+		kindESet = true;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__KIND, oldKind, kind, !oldKindESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void unsetKind() {
+		KindType oldKind = kind;
+		boolean oldKindESet = kindESet;
+		kind = KIND_EDEFAULT;
+		kindESet = false;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.UNSET, _0Package.SUBMODEL_T__KIND, oldKind, KIND_EDEFAULT, oldKindESet));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public boolean isSetKind() {
+		return kindESet;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConstraintT getQualifier() {
+		return qualifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetQualifier(ConstraintT newQualifier, NotificationChain msgs) {
+		ConstraintT oldQualifier = qualifier;
+		qualifier = newQualifier;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__QUALIFIER, oldQualifier, newQualifier);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setQualifier(ConstraintT newQualifier) {
+		if (newQualifier != qualifier) {
+			NotificationChain msgs = null;
+			if (qualifier != null)
+				msgs = ((InternalEObject)qualifier).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__QUALIFIER, null, msgs);
+			if (newQualifier != null)
+				msgs = ((InternalEObject)newQualifier).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__QUALIFIER, null, msgs);
+			msgs = basicSetQualifier(newQualifier, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__QUALIFIER, newQualifier, newQualifier));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelElementsT getSubmodelElements() {
+		return submodelElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSubmodelElements(SubmodelElementsT newSubmodelElements, NotificationChain msgs) {
+		SubmodelElementsT oldSubmodelElements = submodelElements;
+		submodelElements = newSubmodelElements;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__SUBMODEL_ELEMENTS, oldSubmodelElements, newSubmodelElements);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSubmodelElements(SubmodelElementsT newSubmodelElements) {
+		if (newSubmodelElements != submodelElements) {
+			NotificationChain msgs = null;
+			if (submodelElements != null)
+				msgs = ((InternalEObject)submodelElements).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__SUBMODEL_ELEMENTS, null, msgs);
+			if (newSubmodelElements != null)
+				msgs = ((InternalEObject)newSubmodelElements).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.SUBMODEL_T__SUBMODEL_ELEMENTS, null, msgs);
+			msgs = basicSetSubmodelElements(newSubmodelElements, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.SUBMODEL_T__SUBMODEL_ELEMENTS, newSubmodelElements, newSubmodelElements));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_T__ID_SHORT:
+				return basicSetIdShort(null, msgs);
+			case _0Package.SUBMODEL_T__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case _0Package.SUBMODEL_T__IDENTIFICATION:
+				return basicSetIdentification(null, msgs);
+			case _0Package.SUBMODEL_T__ADMINISTRATION:
+				return basicSetAdministration(null, msgs);
+			case _0Package.SUBMODEL_T__EMBEDDED_DATA_SPECIFICATION:
+				return ((InternalEList<?>)getEmbeddedDataSpecification()).basicRemove(otherEnd, msgs);
+			case _0Package.SUBMODEL_T__SEMANTIC_ID:
+				return basicSetSemanticId(null, msgs);
+			case _0Package.SUBMODEL_T__QUALIFIER:
+				return basicSetQualifier(null, msgs);
+			case _0Package.SUBMODEL_T__SUBMODEL_ELEMENTS:
+				return basicSetSubmodelElements(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 _0Package.SUBMODEL_T__ID_SHORT:
+				return getIdShort();
+			case _0Package.SUBMODEL_T__CATEGORY:
+				return getCategory();
+			case _0Package.SUBMODEL_T__DESCRIPTION:
+				return getDescription();
+			case _0Package.SUBMODEL_T__PARENT:
+				return getParent();
+			case _0Package.SUBMODEL_T__IDENTIFICATION:
+				return getIdentification();
+			case _0Package.SUBMODEL_T__ADMINISTRATION:
+				return getAdministration();
+			case _0Package.SUBMODEL_T__EMBEDDED_DATA_SPECIFICATION:
+				return getEmbeddedDataSpecification();
+			case _0Package.SUBMODEL_T__SEMANTIC_ID:
+				return getSemanticId();
+			case _0Package.SUBMODEL_T__KIND:
+				return getKind();
+			case _0Package.SUBMODEL_T__QUALIFIER:
+				return getQualifier();
+			case _0Package.SUBMODEL_T__SUBMODEL_ELEMENTS:
+				return getSubmodelElements();
+		}
+		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 _0Package.SUBMODEL_T__ID_SHORT:
+				setIdShort((IdShortT)newValue);
+				return;
+			case _0Package.SUBMODEL_T__CATEGORY:
+				setCategory((String)newValue);
+				return;
+			case _0Package.SUBMODEL_T__DESCRIPTION:
+				setDescription((LangStringsT)newValue);
+				return;
+			case _0Package.SUBMODEL_T__PARENT:
+				setParent((String)newValue);
+				return;
+			case _0Package.SUBMODEL_T__IDENTIFICATION:
+				setIdentification((IdentificationT)newValue);
+				return;
+			case _0Package.SUBMODEL_T__ADMINISTRATION:
+				setAdministration((AdministrationT)newValue);
+				return;
+			case _0Package.SUBMODEL_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				getEmbeddedDataSpecification().addAll((Collection<? extends EmbeddedDataSpecificationT>)newValue);
+				return;
+			case _0Package.SUBMODEL_T__SEMANTIC_ID:
+				setSemanticId((SemanticIdT)newValue);
+				return;
+			case _0Package.SUBMODEL_T__KIND:
+				setKind((KindType)newValue);
+				return;
+			case _0Package.SUBMODEL_T__QUALIFIER:
+				setQualifier((ConstraintT)newValue);
+				return;
+			case _0Package.SUBMODEL_T__SUBMODEL_ELEMENTS:
+				setSubmodelElements((SubmodelElementsT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_T__ID_SHORT:
+				setIdShort((IdShortT)null);
+				return;
+			case _0Package.SUBMODEL_T__CATEGORY:
+				setCategory(CATEGORY_EDEFAULT);
+				return;
+			case _0Package.SUBMODEL_T__DESCRIPTION:
+				setDescription((LangStringsT)null);
+				return;
+			case _0Package.SUBMODEL_T__PARENT:
+				setParent(PARENT_EDEFAULT);
+				return;
+			case _0Package.SUBMODEL_T__IDENTIFICATION:
+				setIdentification((IdentificationT)null);
+				return;
+			case _0Package.SUBMODEL_T__ADMINISTRATION:
+				setAdministration((AdministrationT)null);
+				return;
+			case _0Package.SUBMODEL_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				return;
+			case _0Package.SUBMODEL_T__SEMANTIC_ID:
+				setSemanticId((SemanticIdT)null);
+				return;
+			case _0Package.SUBMODEL_T__KIND:
+				unsetKind();
+				return;
+			case _0Package.SUBMODEL_T__QUALIFIER:
+				setQualifier((ConstraintT)null);
+				return;
+			case _0Package.SUBMODEL_T__SUBMODEL_ELEMENTS:
+				setSubmodelElements((SubmodelElementsT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODEL_T__ID_SHORT:
+				return idShort != null;
+			case _0Package.SUBMODEL_T__CATEGORY:
+				return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+			case _0Package.SUBMODEL_T__DESCRIPTION:
+				return description != null;
+			case _0Package.SUBMODEL_T__PARENT:
+				return PARENT_EDEFAULT == null ? parent != null : !PARENT_EDEFAULT.equals(parent);
+			case _0Package.SUBMODEL_T__IDENTIFICATION:
+				return identification != null;
+			case _0Package.SUBMODEL_T__ADMINISTRATION:
+				return administration != null;
+			case _0Package.SUBMODEL_T__EMBEDDED_DATA_SPECIFICATION:
+				return embeddedDataSpecification != null && !embeddedDataSpecification.isEmpty();
+			case _0Package.SUBMODEL_T__SEMANTIC_ID:
+				return semanticId != null;
+			case _0Package.SUBMODEL_T__KIND:
+				return isSetKind();
+			case _0Package.SUBMODEL_T__QUALIFIER:
+				return qualifier != null;
+			case _0Package.SUBMODEL_T__SUBMODEL_ELEMENTS:
+				return submodelElements != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (category: ");
+		result.append(category);
+		result.append(", parent: ");
+		result.append(parent);
+		result.append(", kind: ");
+		if (kindESet) result.append(kind); else result.append("<unset>");
+		result.append(')');
+		return result.toString();
+	}
+
+} //SubmodelTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelsTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelsTImpl.java
new file mode 100644
index 0000000..176fc13
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/SubmodelsTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.SubmodelT;
+import io.shell.admin.aas._1._0.SubmodelsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Submodels T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.SubmodelsTImpl#getSubmodel <em>Submodel</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SubmodelsTImpl extends MinimalEObjectImpl.Container implements SubmodelsT {
+	/**
+	 * The cached value of the '{@link #getSubmodel() <em>Submodel</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSubmodel()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<SubmodelT> submodel;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected SubmodelsTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.SUBMODELS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<SubmodelT> getSubmodel() {
+		if (submodel == null) {
+			submodel = new EObjectContainmentEList<SubmodelT>(SubmodelT.class, this, _0Package.SUBMODELS_T__SUBMODEL);
+		}
+		return submodel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.SUBMODELS_T__SUBMODEL:
+				return ((InternalEList<?>)getSubmodel()).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 _0Package.SUBMODELS_T__SUBMODEL:
+				return getSubmodel();
+		}
+		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 _0Package.SUBMODELS_T__SUBMODEL:
+				getSubmodel().clear();
+				getSubmodel().addAll((Collection<? extends SubmodelT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODELS_T__SUBMODEL:
+				getSubmodel().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.SUBMODELS_T__SUBMODEL:
+				return submodel != null && !submodel.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //SubmodelsTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ViewTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ViewTImpl.java
new file mode 100644
index 0000000..0b7e231
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ViewTImpl.java
@@ -0,0 +1,559 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ContainedElementsT;
+import io.shell.admin.aas._1._0.EmbeddedDataSpecificationT;
+import io.shell.admin.aas._1._0.IdShortT;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.SemanticIdT;
+import io.shell.admin.aas._1._0.ViewT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+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>View T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ViewTImpl#getIdShort <em>Id Short</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ViewTImpl#getCategory <em>Category</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ViewTImpl#getDescription <em>Description</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ViewTImpl#getParent <em>Parent</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ViewTImpl#getSemanticId <em>Semantic Id</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ViewTImpl#getEmbeddedDataSpecification <em>Embedded Data Specification</em>}</li>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ViewTImpl#getContainedElements <em>Contained Elements</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ViewTImpl extends MinimalEObjectImpl.Container implements ViewT {
+	/**
+	 * The cached value of the '{@link #getIdShort() <em>Id Short</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getIdShort()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdShortT idShort;
+
+	/**
+	 * The default value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CATEGORY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected String category = CATEGORY_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT description;
+
+	/**
+	 * The default value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PARENT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected String parent = PARENT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getSemanticId() <em>Semantic Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSemanticId()
+	 * @generated
+	 * @ordered
+	 */
+	protected SemanticIdT semanticId;
+
+	/**
+	 * The cached value of the '{@link #getEmbeddedDataSpecification() <em>Embedded Data Specification</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getEmbeddedDataSpecification()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<EmbeddedDataSpecificationT> embeddedDataSpecification;
+
+	/**
+	 * The cached value of the '{@link #getContainedElements() <em>Contained Elements</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getContainedElements()
+	 * @generated
+	 * @ordered
+	 */
+	protected ContainedElementsT containedElements;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ViewTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.VIEW_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdShortT getIdShort() {
+		return idShort;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetIdShort(IdShortT newIdShort, NotificationChain msgs) {
+		IdShortT oldIdShort = idShort;
+		idShort = newIdShort;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__ID_SHORT, oldIdShort, newIdShort);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setIdShort(IdShortT newIdShort) {
+		if (newIdShort != idShort) {
+			NotificationChain msgs = null;
+			if (idShort != null)
+				msgs = ((InternalEObject)idShort).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.VIEW_T__ID_SHORT, null, msgs);
+			if (newIdShort != null)
+				msgs = ((InternalEObject)newIdShort).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.VIEW_T__ID_SHORT, null, msgs);
+			msgs = basicSetIdShort(newIdShort, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__ID_SHORT, newIdShort, newIdShort));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getCategory() {
+		return category;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCategory(String newCategory) {
+		String oldCategory = category;
+		category = newCategory;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__CATEGORY, oldCategory, category));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDescription(LangStringsT newDescription, NotificationChain msgs) {
+		LangStringsT oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__DESCRIPTION, oldDescription, newDescription);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDescription(LangStringsT newDescription) {
+		if (newDescription != description) {
+			NotificationChain msgs = null;
+			if (description != null)
+				msgs = ((InternalEObject)description).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.VIEW_T__DESCRIPTION, null, msgs);
+			if (newDescription != null)
+				msgs = ((InternalEObject)newDescription).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.VIEW_T__DESCRIPTION, null, msgs);
+			msgs = basicSetDescription(newDescription, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__DESCRIPTION, newDescription, newDescription));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setParent(String newParent) {
+		String oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SemanticIdT getSemanticId() {
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSemanticId(SemanticIdT newSemanticId, NotificationChain msgs) {
+		SemanticIdT oldSemanticId = semanticId;
+		semanticId = newSemanticId;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__SEMANTIC_ID, oldSemanticId, newSemanticId);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSemanticId(SemanticIdT newSemanticId) {
+		if (newSemanticId != semanticId) {
+			NotificationChain msgs = null;
+			if (semanticId != null)
+				msgs = ((InternalEObject)semanticId).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.VIEW_T__SEMANTIC_ID, null, msgs);
+			if (newSemanticId != null)
+				msgs = ((InternalEObject)newSemanticId).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.VIEW_T__SEMANTIC_ID, null, msgs);
+			msgs = basicSetSemanticId(newSemanticId, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__SEMANTIC_ID, newSemanticId, newSemanticId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<EmbeddedDataSpecificationT> getEmbeddedDataSpecification() {
+		if (embeddedDataSpecification == null) {
+			embeddedDataSpecification = new EObjectContainmentEList<EmbeddedDataSpecificationT>(EmbeddedDataSpecificationT.class, this, _0Package.VIEW_T__EMBEDDED_DATA_SPECIFICATION);
+		}
+		return embeddedDataSpecification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ContainedElementsT getContainedElements() {
+		return containedElements;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetContainedElements(ContainedElementsT newContainedElements, NotificationChain msgs) {
+		ContainedElementsT oldContainedElements = containedElements;
+		containedElements = newContainedElements;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__CONTAINED_ELEMENTS, oldContainedElements, newContainedElements);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setContainedElements(ContainedElementsT newContainedElements) {
+		if (newContainedElements != containedElements) {
+			NotificationChain msgs = null;
+			if (containedElements != null)
+				msgs = ((InternalEObject)containedElements).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.VIEW_T__CONTAINED_ELEMENTS, null, msgs);
+			if (newContainedElements != null)
+				msgs = ((InternalEObject)newContainedElements).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.VIEW_T__CONTAINED_ELEMENTS, null, msgs);
+			msgs = basicSetContainedElements(newContainedElements, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.VIEW_T__CONTAINED_ELEMENTS, newContainedElements, newContainedElements));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.VIEW_T__ID_SHORT:
+				return basicSetIdShort(null, msgs);
+			case _0Package.VIEW_T__DESCRIPTION:
+				return basicSetDescription(null, msgs);
+			case _0Package.VIEW_T__SEMANTIC_ID:
+				return basicSetSemanticId(null, msgs);
+			case _0Package.VIEW_T__EMBEDDED_DATA_SPECIFICATION:
+				return ((InternalEList<?>)getEmbeddedDataSpecification()).basicRemove(otherEnd, msgs);
+			case _0Package.VIEW_T__CONTAINED_ELEMENTS:
+				return basicSetContainedElements(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 _0Package.VIEW_T__ID_SHORT:
+				return getIdShort();
+			case _0Package.VIEW_T__CATEGORY:
+				return getCategory();
+			case _0Package.VIEW_T__DESCRIPTION:
+				return getDescription();
+			case _0Package.VIEW_T__PARENT:
+				return getParent();
+			case _0Package.VIEW_T__SEMANTIC_ID:
+				return getSemanticId();
+			case _0Package.VIEW_T__EMBEDDED_DATA_SPECIFICATION:
+				return getEmbeddedDataSpecification();
+			case _0Package.VIEW_T__CONTAINED_ELEMENTS:
+				return getContainedElements();
+		}
+		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 _0Package.VIEW_T__ID_SHORT:
+				setIdShort((IdShortT)newValue);
+				return;
+			case _0Package.VIEW_T__CATEGORY:
+				setCategory((String)newValue);
+				return;
+			case _0Package.VIEW_T__DESCRIPTION:
+				setDescription((LangStringsT)newValue);
+				return;
+			case _0Package.VIEW_T__PARENT:
+				setParent((String)newValue);
+				return;
+			case _0Package.VIEW_T__SEMANTIC_ID:
+				setSemanticId((SemanticIdT)newValue);
+				return;
+			case _0Package.VIEW_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				getEmbeddedDataSpecification().addAll((Collection<? extends EmbeddedDataSpecificationT>)newValue);
+				return;
+			case _0Package.VIEW_T__CONTAINED_ELEMENTS:
+				setContainedElements((ContainedElementsT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.VIEW_T__ID_SHORT:
+				setIdShort((IdShortT)null);
+				return;
+			case _0Package.VIEW_T__CATEGORY:
+				setCategory(CATEGORY_EDEFAULT);
+				return;
+			case _0Package.VIEW_T__DESCRIPTION:
+				setDescription((LangStringsT)null);
+				return;
+			case _0Package.VIEW_T__PARENT:
+				setParent(PARENT_EDEFAULT);
+				return;
+			case _0Package.VIEW_T__SEMANTIC_ID:
+				setSemanticId((SemanticIdT)null);
+				return;
+			case _0Package.VIEW_T__EMBEDDED_DATA_SPECIFICATION:
+				getEmbeddedDataSpecification().clear();
+				return;
+			case _0Package.VIEW_T__CONTAINED_ELEMENTS:
+				setContainedElements((ContainedElementsT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.VIEW_T__ID_SHORT:
+				return idShort != null;
+			case _0Package.VIEW_T__CATEGORY:
+				return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+			case _0Package.VIEW_T__DESCRIPTION:
+				return description != null;
+			case _0Package.VIEW_T__PARENT:
+				return PARENT_EDEFAULT == null ? parent != null : !PARENT_EDEFAULT.equals(parent);
+			case _0Package.VIEW_T__SEMANTIC_ID:
+				return semanticId != null;
+			case _0Package.VIEW_T__EMBEDDED_DATA_SPECIFICATION:
+				return embeddedDataSpecification != null && !embeddedDataSpecification.isEmpty();
+			case _0Package.VIEW_T__CONTAINED_ELEMENTS:
+				return containedElements != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (category: ");
+		result.append(category);
+		result.append(", parent: ");
+		result.append(parent);
+		result.append(')');
+		return result.toString();
+	}
+
+} //ViewTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ViewsTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ViewsTImpl.java
new file mode 100644
index 0000000..67f8434
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/ViewsTImpl.java
@@ -0,0 +1,167 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.ViewT;
+import io.shell.admin.aas._1._0.ViewsT;
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Collection;
+
+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.MinimalEObjectImpl;
+
+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>Views T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.aas._1._0.impl.ViewsTImpl#getView <em>View</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ViewsTImpl extends MinimalEObjectImpl.Container implements ViewsT {
+	/**
+	 * The cached value of the '{@link #getView() <em>View</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getView()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<ViewT> view;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ViewsTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.VIEWS_T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EList<ViewT> getView() {
+		if (view == null) {
+			view = new EObjectContainmentEList<ViewT>(ViewT.class, this, _0Package.VIEWS_T__VIEW);
+		}
+		return view;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.VIEWS_T__VIEW:
+				return ((InternalEList<?>)getView()).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 _0Package.VIEWS_T__VIEW:
+				return getView();
+		}
+		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 _0Package.VIEWS_T__VIEW:
+				getView().clear();
+				getView().addAll((Collection<? extends ViewT>)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.VIEWS_T__VIEW:
+				getView().clear();
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.VIEWS_T__VIEW:
+				return view != null && !view.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} //ViewsTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/_0FactoryImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/_0FactoryImpl.java
new file mode 100644
index 0000000..dd63dd4
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/_0FactoryImpl.java
@@ -0,0 +1,860 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.*;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class _0FactoryImpl extends EFactoryImpl implements _0Factory {
+	/**
+	 * Creates the default factory implementation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static _0Factory init() {
+		try {
+			_0Factory the_0Factory = (_0Factory)EPackage.Registry.INSTANCE.getEFactory(_0Package.eNS_URI);
+			if (the_0Factory != null) {
+				return the_0Factory;
+			}
+		}
+		catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new _0FactoryImpl();
+	}
+
+	/**
+	 * Creates an instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0FactoryImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public EObject create(EClass eClass) {
+		switch (eClass.getClassifierID()) {
+			case _0Package.AASENV_T: return createAasenvT();
+			case _0Package.ADMINISTRATION_T: return createAdministrationT();
+			case _0Package.ASSET_ADMINISTRATION_SHELLS_T: return createAssetAdministrationShellsT();
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T: return createAssetAdministrationShellT();
+			case _0Package.ASSETS_T: return createAssetsT();
+			case _0Package.ASSET_T: return createAssetT();
+			case _0Package.BLOB_T: return createBlobT();
+			case _0Package.BLOB_TYPE_T: return createBlobTypeT();
+			case _0Package.CONCEPT_DESCRIPTIONS_REF_T: return createConceptDescriptionsRefT();
+			case _0Package.CONCEPT_DESCRIPTIONS_T: return createConceptDescriptionsT();
+			case _0Package.CONCEPT_DESCRIPTION_T: return createConceptDescriptionT();
+			case _0Package.CONCEPT_DICTIONARIES_T: return createConceptDictionariesT();
+			case _0Package.CONCEPT_DICTIONARY_T: return createConceptDictionaryT();
+			case _0Package.CONSTRAINT_T: return createConstraintT();
+			case _0Package.CONTAINED_ELEMENTS_T: return createContainedElementsT();
+			case _0Package.DATA_SPECIFICATION_CONTENT_T: return createDataSpecificationContentT();
+			case _0Package.DOCUMENT_ROOT: return createDocumentRoot();
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T: return createEmbeddedDataSpecificationT();
+			case _0Package.EVENT_T: return createEventT();
+			case _0Package.FILE_T: return createFileT();
+			case _0Package.FORMULA_T: return createFormulaT();
+			case _0Package.IDENTIFICATION_T: return createIdentificationT();
+			case _0Package.ID_PROPERTY_DEFINITION_T: return createIdPropertyDefinitionT();
+			case _0Package.ID_SHORT_T: return createIdShortT();
+			case _0Package.KEYS_T: return createKeysT();
+			case _0Package.KEY_T: return createKeyT();
+			case _0Package.LANG_STRINGS_T: return createLangStringsT();
+			case _0Package.LANG_STRING_T: return createLangStringT();
+			case _0Package.OPERATION_T: return createOperationT();
+			case _0Package.OPERATION_VARIABLE_T: return createOperationVariableT();
+			case _0Package.PATH_TYPE_T: return createPathTypeT();
+			case _0Package.PROPERTY_T: return createPropertyT();
+			case _0Package.PROPERTY_VALUE_TYPE_T: return createPropertyValueTypeT();
+			case _0Package.PRVALUE_TYPE_T: return createPrvalueTypeT();
+			case _0Package.QUALIFIERS_T: return createQualifiersT();
+			case _0Package.QUALIFIER_T: return createQualifierT();
+			case _0Package.REFERENCE_ELEMENT_T: return createReferenceElementT();
+			case _0Package.REFERENCES_T: return createReferencesT();
+			case _0Package.REFERENCE_T: return createReferenceT();
+			case _0Package.RELATIONSHIP_ELEMENT_T: return createRelationshipElementT();
+			case _0Package.SEMANTIC_ID_T: return createSemanticIdT();
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T: return createSubmodelElementAbstractT();
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T: return createSubmodelElementCollectionT();
+			case _0Package.SUBMODEL_ELEMENTS_T: return createSubmodelElementsT();
+			case _0Package.SUBMODEL_ELEMENT_T: return createSubmodelElementT();
+			case _0Package.SUBMODEL_REFS_T: return createSubmodelRefsT();
+			case _0Package.SUBMODELS_T: return createSubmodelsT();
+			case _0Package.SUBMODEL_T: return createSubmodelT();
+			case _0Package.VIEWS_T: return createViewsT();
+			case _0Package.VIEW_T: return createViewT();
+			default:
+				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Object createFromString(EDataType eDataType, String initialValue) {
+		switch (eDataType.getClassifierID()) {
+			case _0Package.ID_TYPE_TYPE:
+				return createIdTypeTypeFromString(eDataType, initialValue);
+			case _0Package.ID_TYPE_TYPE1:
+				return createIdTypeType1FromString(eDataType, initialValue);
+			case _0Package.KIND_TYPE:
+				return createKindTypeFromString(eDataType, initialValue);
+			case _0Package.TYPE_TYPE:
+				return createTypeTypeFromString(eDataType, initialValue);
+			case _0Package.ID_TYPE_TYPE_OBJECT:
+				return createIdTypeTypeObjectFromString(eDataType, initialValue);
+			case _0Package.ID_TYPE_TYPE_OBJECT1:
+				return createIdTypeTypeObject1FromString(eDataType, initialValue);
+			case _0Package.KIND_TYPE_OBJECT:
+				return createKindTypeObjectFromString(eDataType, initialValue);
+			case _0Package.TYPE_TYPE_OBJECT:
+				return createTypeTypeObjectFromString(eDataType, initialValue);
+			default:
+				throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String convertToString(EDataType eDataType, Object instanceValue) {
+		switch (eDataType.getClassifierID()) {
+			case _0Package.ID_TYPE_TYPE:
+				return convertIdTypeTypeToString(eDataType, instanceValue);
+			case _0Package.ID_TYPE_TYPE1:
+				return convertIdTypeType1ToString(eDataType, instanceValue);
+			case _0Package.KIND_TYPE:
+				return convertKindTypeToString(eDataType, instanceValue);
+			case _0Package.TYPE_TYPE:
+				return convertTypeTypeToString(eDataType, instanceValue);
+			case _0Package.ID_TYPE_TYPE_OBJECT:
+				return convertIdTypeTypeObjectToString(eDataType, instanceValue);
+			case _0Package.ID_TYPE_TYPE_OBJECT1:
+				return convertIdTypeTypeObject1ToString(eDataType, instanceValue);
+			case _0Package.KIND_TYPE_OBJECT:
+				return convertKindTypeObjectToString(eDataType, instanceValue);
+			case _0Package.TYPE_TYPE_OBJECT:
+				return convertTypeTypeObjectToString(eDataType, instanceValue);
+			default:
+				throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AasenvT createAasenvT() {
+		AasenvTImpl aasenvT = new AasenvTImpl();
+		return aasenvT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AdministrationT createAdministrationT() {
+		AdministrationTImpl administrationT = new AdministrationTImpl();
+		return administrationT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssetAdministrationShellsT createAssetAdministrationShellsT() {
+		AssetAdministrationShellsTImpl assetAdministrationShellsT = new AssetAdministrationShellsTImpl();
+		return assetAdministrationShellsT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssetAdministrationShellT createAssetAdministrationShellT() {
+		AssetAdministrationShellTImpl assetAdministrationShellT = new AssetAdministrationShellTImpl();
+		return assetAdministrationShellT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssetsT createAssetsT() {
+		AssetsTImpl assetsT = new AssetsTImpl();
+		return assetsT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public AssetT createAssetT() {
+		AssetTImpl assetT = new AssetTImpl();
+		return assetT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BlobT createBlobT() {
+		BlobTImpl blobT = new BlobTImpl();
+		return blobT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public BlobTypeT createBlobTypeT() {
+		BlobTypeTImpl blobTypeT = new BlobTypeTImpl();
+		return blobTypeT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConceptDescriptionsRefT createConceptDescriptionsRefT() {
+		ConceptDescriptionsRefTImpl conceptDescriptionsRefT = new ConceptDescriptionsRefTImpl();
+		return conceptDescriptionsRefT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConceptDescriptionsT createConceptDescriptionsT() {
+		ConceptDescriptionsTImpl conceptDescriptionsT = new ConceptDescriptionsTImpl();
+		return conceptDescriptionsT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConceptDescriptionT createConceptDescriptionT() {
+		ConceptDescriptionTImpl conceptDescriptionT = new ConceptDescriptionTImpl();
+		return conceptDescriptionT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConceptDictionariesT createConceptDictionariesT() {
+		ConceptDictionariesTImpl conceptDictionariesT = new ConceptDictionariesTImpl();
+		return conceptDictionariesT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConceptDictionaryT createConceptDictionaryT() {
+		ConceptDictionaryTImpl conceptDictionaryT = new ConceptDictionaryTImpl();
+		return conceptDictionaryT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ConstraintT createConstraintT() {
+		ConstraintTImpl constraintT = new ConstraintTImpl();
+		return constraintT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ContainedElementsT createContainedElementsT() {
+		ContainedElementsTImpl containedElementsT = new ContainedElementsTImpl();
+		return containedElementsT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DataSpecificationContentT createDataSpecificationContentT() {
+		DataSpecificationContentTImpl dataSpecificationContentT = new DataSpecificationContentTImpl();
+		return dataSpecificationContentT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DocumentRoot createDocumentRoot() {
+		DocumentRootImpl documentRoot = new DocumentRootImpl();
+		return documentRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EmbeddedDataSpecificationT createEmbeddedDataSpecificationT() {
+		EmbeddedDataSpecificationTImpl embeddedDataSpecificationT = new EmbeddedDataSpecificationTImpl();
+		return embeddedDataSpecificationT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EventT createEventT() {
+		EventTImpl eventT = new EventTImpl();
+		return eventT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FileT createFileT() {
+		FileTImpl fileT = new FileTImpl();
+		return fileT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FormulaT createFormulaT() {
+		FormulaTImpl formulaT = new FormulaTImpl();
+		return formulaT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdentificationT createIdentificationT() {
+		IdentificationTImpl identificationT = new IdentificationTImpl();
+		return identificationT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdPropertyDefinitionT createIdPropertyDefinitionT() {
+		IdPropertyDefinitionTImpl idPropertyDefinitionT = new IdPropertyDefinitionTImpl();
+		return idPropertyDefinitionT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdShortT createIdShortT() {
+		IdShortTImpl idShortT = new IdShortTImpl();
+		return idShortT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public KeysT createKeysT() {
+		KeysTImpl keysT = new KeysTImpl();
+		return keysT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public KeyT createKeyT() {
+		KeyTImpl keyT = new KeyTImpl();
+		return keyT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT createLangStringsT() {
+		LangStringsTImpl langStringsT = new LangStringsTImpl();
+		return langStringsT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringT createLangStringT() {
+		LangStringTImpl langStringT = new LangStringTImpl();
+		return langStringT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OperationT createOperationT() {
+		OperationTImpl operationT = new OperationTImpl();
+		return operationT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public OperationVariableT createOperationVariableT() {
+		OperationVariableTImpl operationVariableT = new OperationVariableTImpl();
+		return operationVariableT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PathTypeT createPathTypeT() {
+		PathTypeTImpl pathTypeT = new PathTypeTImpl();
+		return pathTypeT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertyT createPropertyT() {
+		PropertyTImpl propertyT = new PropertyTImpl();
+		return propertyT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PropertyValueTypeT createPropertyValueTypeT() {
+		PropertyValueTypeTImpl propertyValueTypeT = new PropertyValueTypeTImpl();
+		return propertyValueTypeT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public PrvalueTypeT createPrvalueTypeT() {
+		PrvalueTypeTImpl prvalueTypeT = new PrvalueTypeTImpl();
+		return prvalueTypeT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public QualifiersT createQualifiersT() {
+		QualifiersTImpl qualifiersT = new QualifiersTImpl();
+		return qualifiersT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public QualifierT createQualifierT() {
+		QualifierTImpl qualifierT = new QualifierTImpl();
+		return qualifierT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceElementT createReferenceElementT() {
+		ReferenceElementTImpl referenceElementT = new ReferenceElementTImpl();
+		return referenceElementT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferencesT createReferencesT() {
+		ReferencesTImpl referencesT = new ReferencesTImpl();
+		return referencesT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT createReferenceT() {
+		ReferenceTImpl referenceT = new ReferenceTImpl();
+		return referenceT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public RelationshipElementT createRelationshipElementT() {
+		RelationshipElementTImpl relationshipElementT = new RelationshipElementTImpl();
+		return relationshipElementT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SemanticIdT createSemanticIdT() {
+		SemanticIdTImpl semanticIdT = new SemanticIdTImpl();
+		return semanticIdT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelElementAbstractT createSubmodelElementAbstractT() {
+		SubmodelElementAbstractTImpl submodelElementAbstractT = new SubmodelElementAbstractTImpl();
+		return submodelElementAbstractT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelElementCollectionT createSubmodelElementCollectionT() {
+		SubmodelElementCollectionTImpl submodelElementCollectionT = new SubmodelElementCollectionTImpl();
+		return submodelElementCollectionT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelElementsT createSubmodelElementsT() {
+		SubmodelElementsTImpl submodelElementsT = new SubmodelElementsTImpl();
+		return submodelElementsT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelElementT createSubmodelElementT() {
+		SubmodelElementTImpl submodelElementT = new SubmodelElementTImpl();
+		return submodelElementT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelRefsT createSubmodelRefsT() {
+		SubmodelRefsTImpl submodelRefsT = new SubmodelRefsTImpl();
+		return submodelRefsT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelsT createSubmodelsT() {
+		SubmodelsTImpl submodelsT = new SubmodelsTImpl();
+		return submodelsT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public SubmodelT createSubmodelT() {
+		SubmodelTImpl submodelT = new SubmodelTImpl();
+		return submodelT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ViewsT createViewsT() {
+		ViewsTImpl viewsT = new ViewsTImpl();
+		return viewsT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ViewT createViewT() {
+		ViewTImpl viewT = new ViewTImpl();
+		return viewT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdTypeType createIdTypeTypeFromString(EDataType eDataType, String initialValue) {
+		IdTypeType result = IdTypeType.get(initialValue);
+		if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String convertIdTypeTypeToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdTypeType1 createIdTypeType1FromString(EDataType eDataType, String initialValue) {
+		IdTypeType1 result = IdTypeType1.get(initialValue);
+		if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String convertIdTypeType1ToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public KindType createKindTypeFromString(EDataType eDataType, String initialValue) {
+		KindType result = KindType.get(initialValue);
+		if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String convertKindTypeToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TypeType createTypeTypeFromString(EDataType eDataType, String initialValue) {
+		TypeType result = TypeType.get(initialValue);
+		if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String convertTypeTypeToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdTypeType createIdTypeTypeObjectFromString(EDataType eDataType, String initialValue) {
+		return createIdTypeTypeFromString(_0Package.Literals.ID_TYPE_TYPE, initialValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String convertIdTypeTypeObjectToString(EDataType eDataType, Object instanceValue) {
+		return convertIdTypeTypeToString(_0Package.Literals.ID_TYPE_TYPE, instanceValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public IdTypeType1 createIdTypeTypeObject1FromString(EDataType eDataType, String initialValue) {
+		return createIdTypeType1FromString(_0Package.Literals.ID_TYPE_TYPE1, initialValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String convertIdTypeTypeObject1ToString(EDataType eDataType, Object instanceValue) {
+		return convertIdTypeType1ToString(_0Package.Literals.ID_TYPE_TYPE1, instanceValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public KindType createKindTypeObjectFromString(EDataType eDataType, String initialValue) {
+		return createKindTypeFromString(_0Package.Literals.KIND_TYPE, initialValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String convertKindTypeObjectToString(EDataType eDataType, Object instanceValue) {
+		return convertKindTypeToString(_0Package.Literals.KIND_TYPE, instanceValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public TypeType createTypeTypeObjectFromString(EDataType eDataType, String initialValue) {
+		return createTypeTypeFromString(_0Package.Literals.TYPE_TYPE, initialValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String convertTypeTypeObjectToString(EDataType eDataType, Object instanceValue) {
+		return convertTypeTypeToString(_0Package.Literals.TYPE_TYPE, instanceValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0Package get_0Package() {
+		return (_0Package)getEPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @deprecated
+	 * @generated
+	 */
+	@Deprecated
+	public static _0Package getPackage() {
+		return _0Package.eINSTANCE;
+	}
+
+} //_0FactoryImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/_0PackageImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/_0PackageImpl.java
new file mode 100644
index 0000000..8d669fe
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/impl/_0PackageImpl.java
@@ -0,0 +1,4389 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.impl;
+
+import io.shell.admin.aas._1._0.AasenvT;
+import io.shell.admin.aas._1._0.AdministrationT;
+import io.shell.admin.aas._1._0.AssetAdministrationShellT;
+import io.shell.admin.aas._1._0.AssetAdministrationShellsT;
+import io.shell.admin.aas._1._0.AssetT;
+import io.shell.admin.aas._1._0.AssetsT;
+import io.shell.admin.aas._1._0.BlobT;
+import io.shell.admin.aas._1._0.BlobTypeT;
+import io.shell.admin.aas._1._0.ConceptDescriptionT;
+import io.shell.admin.aas._1._0.ConceptDescriptionsRefT;
+import io.shell.admin.aas._1._0.ConceptDescriptionsT;
+import io.shell.admin.aas._1._0.ConceptDictionariesT;
+import io.shell.admin.aas._1._0.ConceptDictionaryT;
+import io.shell.admin.aas._1._0.ConstraintT;
+import io.shell.admin.aas._1._0.ContainedElementsT;
+import io.shell.admin.aas._1._0.DataSpecificationContentT;
+import io.shell.admin.aas._1._0.DocumentRoot;
+import io.shell.admin.aas._1._0.EmbeddedDataSpecificationT;
+import io.shell.admin.aas._1._0.EventT;
+import io.shell.admin.aas._1._0.FileT;
+import io.shell.admin.aas._1._0.FormulaT;
+import io.shell.admin.aas._1._0.IdPropertyDefinitionT;
+import io.shell.admin.aas._1._0.IdShortT;
+import io.shell.admin.aas._1._0.IdTypeType;
+import io.shell.admin.aas._1._0.IdTypeType1;
+import io.shell.admin.aas._1._0.IdentificationT;
+import io.shell.admin.aas._1._0.KeyT;
+import io.shell.admin.aas._1._0.KeysT;
+import io.shell.admin.aas._1._0.KindType;
+import io.shell.admin.aas._1._0.LangStringT;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.OperationT;
+import io.shell.admin.aas._1._0.OperationVariableT;
+import io.shell.admin.aas._1._0.PathTypeT;
+import io.shell.admin.aas._1._0.PropertyT;
+import io.shell.admin.aas._1._0.PropertyValueTypeT;
+import io.shell.admin.aas._1._0.PrvalueTypeT;
+import io.shell.admin.aas._1._0.QualifierT;
+import io.shell.admin.aas._1._0.QualifiersT;
+import io.shell.admin.aas._1._0.ReferenceElementT;
+import io.shell.admin.aas._1._0.ReferenceT;
+import io.shell.admin.aas._1._0.ReferencesT;
+import io.shell.admin.aas._1._0.RelationshipElementT;
+import io.shell.admin.aas._1._0.SemanticIdT;
+import io.shell.admin.aas._1._0.SubmodelElementAbstractT;
+import io.shell.admin.aas._1._0.SubmodelElementCollectionT;
+import io.shell.admin.aas._1._0.SubmodelElementT;
+import io.shell.admin.aas._1._0.SubmodelElementsT;
+import io.shell.admin.aas._1._0.SubmodelRefsT;
+import io.shell.admin.aas._1._0.SubmodelT;
+import io.shell.admin.aas._1._0.SubmodelsT;
+import io.shell.admin.aas._1._0.TypeType;
+import io.shell.admin.aas._1._0.ViewT;
+import io.shell.admin.aas._1._0.ViewsT;
+import io.shell.admin.aas._1._0._0Factory;
+import io.shell.admin.aas._1._0._0Package;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.emf.ecore.xml.type.XMLTypePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class _0PackageImpl extends EPackageImpl implements _0Package {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass aasenvTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass administrationTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass assetAdministrationShellsTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass assetAdministrationShellTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass assetsTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass assetTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass blobTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass blobTypeTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass conceptDescriptionsRefTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass conceptDescriptionsTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass conceptDescriptionTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass conceptDictionariesTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass conceptDictionaryTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass constraintTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass containedElementsTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass dataSpecificationContentTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass documentRootEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass embeddedDataSpecificationTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass eventTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass fileTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass formulaTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass identificationTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass idPropertyDefinitionTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass idShortTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass keysTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass keyTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass langStringsTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass langStringTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass operationTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass operationVariableTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass pathTypeTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass propertyTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass propertyValueTypeTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass prvalueTypeTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass qualifiersTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass qualifierTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass referenceElementTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass referencesTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass referenceTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass relationshipElementTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass semanticIdTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass submodelElementAbstractTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass submodelElementCollectionTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass submodelElementsTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass submodelElementTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass submodelRefsTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass submodelsTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass submodelTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass viewsTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass viewTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EEnum idTypeTypeEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EEnum idTypeType1EEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EEnum kindTypeEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EEnum typeTypeEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EDataType idTypeTypeObjectEDataType = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EDataType idTypeTypeObject1EDataType = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EDataType kindTypeObjectEDataType = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EDataType typeTypeObjectEDataType = null;
+
+	/**
+	 * Creates an instance of the model <b>Package</b>, registered with
+	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+	 * package URI value.
+	 * <p>Note: the correct way to create the package is via the static
+	 * factory method {@link #init init()}, which also performs
+	 * initialization of the package, or returns the registered package,
+	 * if one already exists.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see io.shell.admin.aas._1._0._0Package#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
+	private _0PackageImpl() {
+		super(eNS_URI, _0Factory.eINSTANCE);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static boolean isInited = false;
+
+	/**
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+	 *
+	 * <p>This method is used to initialize {@link _0Package#eINSTANCE} when that field is accessed.
+	 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #eNS_URI
+	 * @see #createPackageContents()
+	 * @see #initializePackageContents()
+	 * @generated
+	 */
+	public static _0Package init() {
+		if (isInited) return (_0Package)EPackage.Registry.INSTANCE.getEPackage(_0Package.eNS_URI);
+
+		// Obtain or create and register package
+		Object registered_0Package = EPackage.Registry.INSTANCE.get(eNS_URI);
+		_0PackageImpl the_0Package = registered_0Package instanceof _0PackageImpl ? (_0PackageImpl)registered_0Package : new _0PackageImpl();
+
+		isInited = true;
+
+		// Initialize simple dependencies
+		XMLTypePackage.eINSTANCE.eClass();
+
+		// Obtain or create and register interdependencies
+		Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(io.shell.admin.iec61360._1._0._0Package.eNS_URI);
+		io.shell.admin.iec61360._1._0.impl._0PackageImpl the_0Package_1 = (io.shell.admin.iec61360._1._0.impl._0PackageImpl)(registeredPackage instanceof io.shell.admin.iec61360._1._0.impl._0PackageImpl ? registeredPackage : io.shell.admin.iec61360._1._0._0Package.eINSTANCE);
+
+		// Create package meta-data objects
+		the_0Package.createPackageContents();
+		the_0Package_1.createPackageContents();
+
+		// Initialize created meta-data
+		the_0Package.initializePackageContents();
+		the_0Package_1.initializePackageContents();
+
+		// Mark meta-data to indicate it can't be changed
+		the_0Package.freeze();
+
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(_0Package.eNS_URI, the_0Package);
+		return the_0Package;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getAasenvT() {
+		return aasenvTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAasenvT_AssetAdministrationShells() {
+		return (EReference)aasenvTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAasenvT_Assets() {
+		return (EReference)aasenvTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAasenvT_Submodels() {
+		return (EReference)aasenvTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAasenvT_ConceptDescriptions() {
+		return (EReference)aasenvTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getAdministrationT() {
+		return administrationTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getAdministrationT_Version() {
+		return (EAttribute)administrationTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getAdministrationT_Revision() {
+		return (EAttribute)administrationTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getAssetAdministrationShellsT() {
+		return assetAdministrationShellsTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellsT_AssetAdministrationShell() {
+		return (EReference)assetAdministrationShellsTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getAssetAdministrationShellT() {
+		return assetAdministrationShellTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_IdShort() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getAssetAdministrationShellT_Category() {
+		return (EAttribute)assetAdministrationShellTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_Description() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getAssetAdministrationShellT_Parent() {
+		return (EAttribute)assetAdministrationShellTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_Identification() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_Administration() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_EmbeddedDataSpecification() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_DerivedFrom() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_AssetRef() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_SubmodelRefs() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_Views() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShellT_ConceptDictionaries() {
+		return (EReference)assetAdministrationShellTEClass.getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getAssetsT() {
+		return assetsTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetsT_Asset() {
+		return (EReference)assetsTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getAssetT() {
+		return assetTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetT_IdShort() {
+		return (EReference)assetTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getAssetT_Category() {
+		return (EAttribute)assetTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetT_Description() {
+		return (EReference)assetTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getAssetT_Parent() {
+		return (EAttribute)assetTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetT_Identification() {
+		return (EReference)assetTEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetT_Administration() {
+		return (EReference)assetTEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetT_EmbeddedDataSpecification() {
+		return (EReference)assetTEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getAssetT_Kind() {
+		return (EAttribute)assetTEClass.getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getAssetT_AssetIdentificationModelRef() {
+		return (EReference)assetTEClass.getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getBlobT() {
+		return blobTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getBlobT_MimeType() {
+		return (EAttribute)blobTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getBlobT_Value() {
+		return (EReference)blobTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getBlobTypeT() {
+		return blobTypeTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getBlobTypeT_Value() {
+		return (EAttribute)blobTypeTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getConceptDescriptionsRefT() {
+		return conceptDescriptionsRefTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDescriptionsRefT_ConceptDescriptionRef() {
+		return (EReference)conceptDescriptionsRefTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getConceptDescriptionsT() {
+		return conceptDescriptionsTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDescriptionsT_ConceptDescription() {
+		return (EReference)conceptDescriptionsTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getConceptDescriptionT() {
+		return conceptDescriptionTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDescriptionT_IdShort() {
+		return (EReference)conceptDescriptionTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getConceptDescriptionT_Category() {
+		return (EAttribute)conceptDescriptionTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDescriptionT_Description() {
+		return (EReference)conceptDescriptionTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getConceptDescriptionT_Parent() {
+		return (EAttribute)conceptDescriptionTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDescriptionT_Identification() {
+		return (EReference)conceptDescriptionTEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDescriptionT_Administration() {
+		return (EReference)conceptDescriptionTEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDescriptionT_EmbeddedDataSpecification() {
+		return (EReference)conceptDescriptionTEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDescriptionT_IsCaseOf() {
+		return (EReference)conceptDescriptionTEClass.getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getConceptDictionariesT() {
+		return conceptDictionariesTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDictionariesT_ConceptDictionary() {
+		return (EReference)conceptDictionariesTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getConceptDictionaryT() {
+		return conceptDictionaryTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDictionaryT_IdShort() {
+		return (EReference)conceptDictionaryTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getConceptDictionaryT_Category() {
+		return (EAttribute)conceptDictionaryTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDictionaryT_Description() {
+		return (EReference)conceptDictionaryTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getConceptDictionaryT_Parent() {
+		return (EAttribute)conceptDictionaryTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConceptDictionaryT_ConceptDescriptionRefs() {
+		return (EReference)conceptDictionaryTEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getConstraintT() {
+		return constraintTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConstraintT_Qualifier() {
+		return (EReference)constraintTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getConstraintT_Formula() {
+		return (EReference)constraintTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getContainedElementsT() {
+		return containedElementsTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getContainedElementsT_ContainedElementRef() {
+		return (EReference)containedElementsTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getDataSpecificationContentT() {
+		return dataSpecificationContentTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDataSpecificationContentT_DataSpecificationIEC61360() {
+		return (EReference)dataSpecificationContentTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getDocumentRoot() {
+		return documentRootEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDocumentRoot_Mixed() {
+		return (EAttribute)documentRootEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_XMLNSPrefixMap() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_XSISchemaLocation() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_Aasenv() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_Key() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getEmbeddedDataSpecificationT() {
+		return embeddedDataSpecificationTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getEmbeddedDataSpecificationT_HasDataSpecification() {
+		return (EReference)embeddedDataSpecificationTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getEmbeddedDataSpecificationT_DataSpecificationContent() {
+		return (EReference)embeddedDataSpecificationTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getEventT() {
+		return eventTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getFileT() {
+		return fileTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getFileT_MimeType() {
+		return (EAttribute)fileTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getFileT_Value() {
+		return (EReference)fileTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getFormulaT() {
+		return formulaTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getFormulaT_DependsOn() {
+		return (EReference)formulaTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIdentificationT() {
+		return identificationTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIdentificationT_Value() {
+		return (EAttribute)identificationTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIdentificationT_IdType() {
+		return (EAttribute)identificationTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIdPropertyDefinitionT() {
+		return idPropertyDefinitionTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIdPropertyDefinitionT_Value() {
+		return (EAttribute)idPropertyDefinitionTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIdPropertyDefinitionT_IdType() {
+		return (EAttribute)idPropertyDefinitionTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getIdShortT() {
+		return idShortTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getIdShortT_Value() {
+		return (EAttribute)idShortTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getKeysT() {
+		return keysTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getKeysT_Key() {
+		return (EReference)keysTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getKeyT() {
+		return keyTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getKeyT_Value() {
+		return (EAttribute)keyTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getKeyT_IdType() {
+		return (EAttribute)keyTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getKeyT_Local() {
+		return (EAttribute)keyTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getKeyT_Type() {
+		return (EAttribute)keyTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getLangStringsT() {
+		return langStringsTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getLangStringsT_LangString() {
+		return (EReference)langStringsTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getLangStringT() {
+		return langStringTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getLangStringT_Value() {
+		return (EAttribute)langStringTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getLangStringT_Lang() {
+		return (EAttribute)langStringTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getOperationT() {
+		return operationTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getOperationT_In() {
+		return (EReference)operationTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getOperationT_Out() {
+		return (EReference)operationTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getOperationVariableT() {
+		return operationVariableTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getOperationVariableT_Value() {
+		return (EReference)operationVariableTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getPathTypeT() {
+		return pathTypeTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getPathTypeT_Value() {
+		return (EAttribute)pathTypeTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getPropertyT() {
+		return propertyTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getPropertyT_ValueType() {
+		return (EAttribute)propertyTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getPropertyT_Value() {
+		return (EReference)propertyTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getPropertyT_ValueId() {
+		return (EReference)propertyTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getPropertyValueTypeT() {
+		return propertyValueTypeTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getPropertyValueTypeT_Value() {
+		return (EAttribute)propertyValueTypeTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getPrvalueTypeT() {
+		return prvalueTypeTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getQualifiersT() {
+		return qualifiersTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getQualifiersT_Qualifier() {
+		return (EAttribute)qualifiersTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getQualifierT() {
+		return qualifierTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getQualifierT_SemanticId() {
+		return (EReference)qualifierTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getQualifierT_QualifierType() {
+		return (EAttribute)qualifierTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getQualifierT_QualifierValue() {
+		return (EAttribute)qualifierTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getQualifierT_QualifierValueId() {
+		return (EReference)qualifierTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getReferenceElementT() {
+		return referenceElementTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getReferenceElementT_Value() {
+		return (EReference)referenceElementTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getReferencesT() {
+		return referencesTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getReferencesT_Reference() {
+		return (EReference)referencesTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getReferenceT() {
+		return referenceTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getReferenceT_Keys() {
+		return (EReference)referenceTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getRelationshipElementT() {
+		return relationshipElementTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getRelationshipElementT_First() {
+		return (EReference)relationshipElementTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getRelationshipElementT_Second() {
+		return (EReference)relationshipElementTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSemanticIdT() {
+		return semanticIdTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSubmodelElementAbstractT() {
+		return submodelElementAbstractTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementAbstractT_IdShort() {
+		return (EReference)submodelElementAbstractTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getSubmodelElementAbstractT_Category() {
+		return (EAttribute)submodelElementAbstractTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementAbstractT_Description() {
+		return (EReference)submodelElementAbstractTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getSubmodelElementAbstractT_Parent() {
+		return (EAttribute)submodelElementAbstractTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementAbstractT_SemanticId() {
+		return (EReference)submodelElementAbstractTEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementAbstractT_EmbeddedDataSpecification() {
+		return (EReference)submodelElementAbstractTEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getSubmodelElementAbstractT_Kind() {
+		return (EAttribute)submodelElementAbstractTEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementAbstractT_Qualifier() {
+		return (EReference)submodelElementAbstractTEClass.getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSubmodelElementCollectionT() {
+		return submodelElementCollectionTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementCollectionT_Value() {
+		return (EReference)submodelElementCollectionTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getSubmodelElementCollectionT_Ordered() {
+		return (EAttribute)submodelElementCollectionTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getSubmodelElementCollectionT_AllowDuplicates() {
+		return (EAttribute)submodelElementCollectionTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSubmodelElementsT() {
+		return submodelElementsTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementsT_SubmodelElement() {
+		return (EReference)submodelElementsTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSubmodelElementT() {
+		return submodelElementTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementT_Property() {
+		return (EReference)submodelElementTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementT_File() {
+		return (EReference)submodelElementTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementT_Blob() {
+		return (EReference)submodelElementTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementT_ReferenceElement() {
+		return (EReference)submodelElementTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementT_SubmodelElementCollection() {
+		return (EReference)submodelElementTEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementT_RelationshipElement() {
+		return (EReference)submodelElementTEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementT_Operation() {
+		return (EReference)submodelElementTEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementT_OperationVariable() {
+		return (EReference)submodelElementTEClass.getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelElementT_Event() {
+		return (EReference)submodelElementTEClass.getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSubmodelRefsT() {
+		return submodelRefsTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelRefsT_SubmodelRef() {
+		return (EReference)submodelRefsTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSubmodelsT() {
+		return submodelsTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelsT_Submodel() {
+		return (EReference)submodelsTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getSubmodelT() {
+		return submodelTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelT_IdShort() {
+		return (EReference)submodelTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getSubmodelT_Category() {
+		return (EAttribute)submodelTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelT_Description() {
+		return (EReference)submodelTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getSubmodelT_Parent() {
+		return (EAttribute)submodelTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelT_Identification() {
+		return (EReference)submodelTEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelT_Administration() {
+		return (EReference)submodelTEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelT_EmbeddedDataSpecification() {
+		return (EReference)submodelTEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelT_SemanticId() {
+		return (EReference)submodelTEClass.getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getSubmodelT_Kind() {
+		return (EAttribute)submodelTEClass.getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelT_Qualifier() {
+		return (EReference)submodelTEClass.getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getSubmodelT_SubmodelElements() {
+		return (EReference)submodelTEClass.getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getViewsT() {
+		return viewsTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getViewsT_View() {
+		return (EReference)viewsTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getViewT() {
+		return viewTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getViewT_IdShort() {
+		return (EReference)viewTEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getViewT_Category() {
+		return (EAttribute)viewTEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getViewT_Description() {
+		return (EReference)viewTEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getViewT_Parent() {
+		return (EAttribute)viewTEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getViewT_SemanticId() {
+		return (EReference)viewTEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getViewT_EmbeddedDataSpecification() {
+		return (EReference)viewTEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getViewT_ContainedElements() {
+		return (EReference)viewTEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EEnum getIdTypeType() {
+		return idTypeTypeEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EEnum getIdTypeType1() {
+		return idTypeType1EEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EEnum getKindType() {
+		return kindTypeEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EEnum getTypeType() {
+		return typeTypeEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EDataType getIdTypeTypeObject() {
+		return idTypeTypeObjectEDataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EDataType getIdTypeTypeObject1() {
+		return idTypeTypeObject1EDataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EDataType getKindTypeObject() {
+		return kindTypeObjectEDataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EDataType getTypeTypeObject() {
+		return typeTypeObjectEDataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0Factory get_0Factory() {
+		return (_0Factory)getEFactoryInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private boolean isCreated = false;
+
+	/**
+	 * Creates the meta-model objects for the package.  This method is
+	 * guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void createPackageContents() {
+		if (isCreated) return;
+		isCreated = true;
+
+		// Create classes and their features
+		aasenvTEClass = createEClass(AASENV_T);
+		createEReference(aasenvTEClass, AASENV_T__ASSET_ADMINISTRATION_SHELLS);
+		createEReference(aasenvTEClass, AASENV_T__ASSETS);
+		createEReference(aasenvTEClass, AASENV_T__SUBMODELS);
+		createEReference(aasenvTEClass, AASENV_T__CONCEPT_DESCRIPTIONS);
+
+		administrationTEClass = createEClass(ADMINISTRATION_T);
+		createEAttribute(administrationTEClass, ADMINISTRATION_T__VERSION);
+		createEAttribute(administrationTEClass, ADMINISTRATION_T__REVISION);
+
+		assetAdministrationShellsTEClass = createEClass(ASSET_ADMINISTRATION_SHELLS_T);
+		createEReference(assetAdministrationShellsTEClass, ASSET_ADMINISTRATION_SHELLS_T__ASSET_ADMINISTRATION_SHELL);
+
+		assetAdministrationShellTEClass = createEClass(ASSET_ADMINISTRATION_SHELL_T);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__ID_SHORT);
+		createEAttribute(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__CATEGORY);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION);
+		createEAttribute(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__PARENT);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__IDENTIFICATION);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__ADMINISTRATION);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__EMBEDDED_DATA_SPECIFICATION);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__DERIVED_FROM);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__ASSET_REF);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__SUBMODEL_REFS);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__VIEWS);
+		createEReference(assetAdministrationShellTEClass, ASSET_ADMINISTRATION_SHELL_T__CONCEPT_DICTIONARIES);
+
+		assetsTEClass = createEClass(ASSETS_T);
+		createEReference(assetsTEClass, ASSETS_T__ASSET);
+
+		assetTEClass = createEClass(ASSET_T);
+		createEReference(assetTEClass, ASSET_T__ID_SHORT);
+		createEAttribute(assetTEClass, ASSET_T__CATEGORY);
+		createEReference(assetTEClass, ASSET_T__DESCRIPTION);
+		createEAttribute(assetTEClass, ASSET_T__PARENT);
+		createEReference(assetTEClass, ASSET_T__IDENTIFICATION);
+		createEReference(assetTEClass, ASSET_T__ADMINISTRATION);
+		createEReference(assetTEClass, ASSET_T__EMBEDDED_DATA_SPECIFICATION);
+		createEAttribute(assetTEClass, ASSET_T__KIND);
+		createEReference(assetTEClass, ASSET_T__ASSET_IDENTIFICATION_MODEL_REF);
+
+		blobTEClass = createEClass(BLOB_T);
+		createEAttribute(blobTEClass, BLOB_T__MIME_TYPE);
+		createEReference(blobTEClass, BLOB_T__VALUE);
+
+		blobTypeTEClass = createEClass(BLOB_TYPE_T);
+		createEAttribute(blobTypeTEClass, BLOB_TYPE_T__VALUE);
+
+		conceptDescriptionsRefTEClass = createEClass(CONCEPT_DESCRIPTIONS_REF_T);
+		createEReference(conceptDescriptionsRefTEClass, CONCEPT_DESCRIPTIONS_REF_T__CONCEPT_DESCRIPTION_REF);
+
+		conceptDescriptionsTEClass = createEClass(CONCEPT_DESCRIPTIONS_T);
+		createEReference(conceptDescriptionsTEClass, CONCEPT_DESCRIPTIONS_T__CONCEPT_DESCRIPTION);
+
+		conceptDescriptionTEClass = createEClass(CONCEPT_DESCRIPTION_T);
+		createEReference(conceptDescriptionTEClass, CONCEPT_DESCRIPTION_T__ID_SHORT);
+		createEAttribute(conceptDescriptionTEClass, CONCEPT_DESCRIPTION_T__CATEGORY);
+		createEReference(conceptDescriptionTEClass, CONCEPT_DESCRIPTION_T__DESCRIPTION);
+		createEAttribute(conceptDescriptionTEClass, CONCEPT_DESCRIPTION_T__PARENT);
+		createEReference(conceptDescriptionTEClass, CONCEPT_DESCRIPTION_T__IDENTIFICATION);
+		createEReference(conceptDescriptionTEClass, CONCEPT_DESCRIPTION_T__ADMINISTRATION);
+		createEReference(conceptDescriptionTEClass, CONCEPT_DESCRIPTION_T__EMBEDDED_DATA_SPECIFICATION);
+		createEReference(conceptDescriptionTEClass, CONCEPT_DESCRIPTION_T__IS_CASE_OF);
+
+		conceptDictionariesTEClass = createEClass(CONCEPT_DICTIONARIES_T);
+		createEReference(conceptDictionariesTEClass, CONCEPT_DICTIONARIES_T__CONCEPT_DICTIONARY);
+
+		conceptDictionaryTEClass = createEClass(CONCEPT_DICTIONARY_T);
+		createEReference(conceptDictionaryTEClass, CONCEPT_DICTIONARY_T__ID_SHORT);
+		createEAttribute(conceptDictionaryTEClass, CONCEPT_DICTIONARY_T__CATEGORY);
+		createEReference(conceptDictionaryTEClass, CONCEPT_DICTIONARY_T__DESCRIPTION);
+		createEAttribute(conceptDictionaryTEClass, CONCEPT_DICTIONARY_T__PARENT);
+		createEReference(conceptDictionaryTEClass, CONCEPT_DICTIONARY_T__CONCEPT_DESCRIPTION_REFS);
+
+		constraintTEClass = createEClass(CONSTRAINT_T);
+		createEReference(constraintTEClass, CONSTRAINT_T__QUALIFIER);
+		createEReference(constraintTEClass, CONSTRAINT_T__FORMULA);
+
+		containedElementsTEClass = createEClass(CONTAINED_ELEMENTS_T);
+		createEReference(containedElementsTEClass, CONTAINED_ELEMENTS_T__CONTAINED_ELEMENT_REF);
+
+		dataSpecificationContentTEClass = createEClass(DATA_SPECIFICATION_CONTENT_T);
+		createEReference(dataSpecificationContentTEClass, DATA_SPECIFICATION_CONTENT_T__DATA_SPECIFICATION_IEC61360);
+
+		documentRootEClass = createEClass(DOCUMENT_ROOT);
+		createEAttribute(documentRootEClass, DOCUMENT_ROOT__MIXED);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__XMLNS_PREFIX_MAP);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__XSI_SCHEMA_LOCATION);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__AASENV);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__KEY);
+
+		embeddedDataSpecificationTEClass = createEClass(EMBEDDED_DATA_SPECIFICATION_T);
+		createEReference(embeddedDataSpecificationTEClass, EMBEDDED_DATA_SPECIFICATION_T__HAS_DATA_SPECIFICATION);
+		createEReference(embeddedDataSpecificationTEClass, EMBEDDED_DATA_SPECIFICATION_T__DATA_SPECIFICATION_CONTENT);
+
+		eventTEClass = createEClass(EVENT_T);
+
+		fileTEClass = createEClass(FILE_T);
+		createEAttribute(fileTEClass, FILE_T__MIME_TYPE);
+		createEReference(fileTEClass, FILE_T__VALUE);
+
+		formulaTEClass = createEClass(FORMULA_T);
+		createEReference(formulaTEClass, FORMULA_T__DEPENDS_ON);
+
+		identificationTEClass = createEClass(IDENTIFICATION_T);
+		createEAttribute(identificationTEClass, IDENTIFICATION_T__VALUE);
+		createEAttribute(identificationTEClass, IDENTIFICATION_T__ID_TYPE);
+
+		idPropertyDefinitionTEClass = createEClass(ID_PROPERTY_DEFINITION_T);
+		createEAttribute(idPropertyDefinitionTEClass, ID_PROPERTY_DEFINITION_T__VALUE);
+		createEAttribute(idPropertyDefinitionTEClass, ID_PROPERTY_DEFINITION_T__ID_TYPE);
+
+		idShortTEClass = createEClass(ID_SHORT_T);
+		createEAttribute(idShortTEClass, ID_SHORT_T__VALUE);
+
+		keysTEClass = createEClass(KEYS_T);
+		createEReference(keysTEClass, KEYS_T__KEY);
+
+		keyTEClass = createEClass(KEY_T);
+		createEAttribute(keyTEClass, KEY_T__VALUE);
+		createEAttribute(keyTEClass, KEY_T__ID_TYPE);
+		createEAttribute(keyTEClass, KEY_T__LOCAL);
+		createEAttribute(keyTEClass, KEY_T__TYPE);
+
+		langStringsTEClass = createEClass(LANG_STRINGS_T);
+		createEReference(langStringsTEClass, LANG_STRINGS_T__LANG_STRING);
+
+		langStringTEClass = createEClass(LANG_STRING_T);
+		createEAttribute(langStringTEClass, LANG_STRING_T__VALUE);
+		createEAttribute(langStringTEClass, LANG_STRING_T__LANG);
+
+		operationTEClass = createEClass(OPERATION_T);
+		createEReference(operationTEClass, OPERATION_T__IN);
+		createEReference(operationTEClass, OPERATION_T__OUT);
+
+		operationVariableTEClass = createEClass(OPERATION_VARIABLE_T);
+		createEReference(operationVariableTEClass, OPERATION_VARIABLE_T__VALUE);
+
+		pathTypeTEClass = createEClass(PATH_TYPE_T);
+		createEAttribute(pathTypeTEClass, PATH_TYPE_T__VALUE);
+
+		propertyTEClass = createEClass(PROPERTY_T);
+		createEAttribute(propertyTEClass, PROPERTY_T__VALUE_TYPE);
+		createEReference(propertyTEClass, PROPERTY_T__VALUE);
+		createEReference(propertyTEClass, PROPERTY_T__VALUE_ID);
+
+		propertyValueTypeTEClass = createEClass(PROPERTY_VALUE_TYPE_T);
+		createEAttribute(propertyValueTypeTEClass, PROPERTY_VALUE_TYPE_T__VALUE);
+
+		prvalueTypeTEClass = createEClass(PRVALUE_TYPE_T);
+
+		qualifiersTEClass = createEClass(QUALIFIERS_T);
+		createEAttribute(qualifiersTEClass, QUALIFIERS_T__QUALIFIER);
+
+		qualifierTEClass = createEClass(QUALIFIER_T);
+		createEReference(qualifierTEClass, QUALIFIER_T__SEMANTIC_ID);
+		createEAttribute(qualifierTEClass, QUALIFIER_T__QUALIFIER_TYPE);
+		createEAttribute(qualifierTEClass, QUALIFIER_T__QUALIFIER_VALUE);
+		createEReference(qualifierTEClass, QUALIFIER_T__QUALIFIER_VALUE_ID);
+
+		referenceElementTEClass = createEClass(REFERENCE_ELEMENT_T);
+		createEReference(referenceElementTEClass, REFERENCE_ELEMENT_T__VALUE);
+
+		referencesTEClass = createEClass(REFERENCES_T);
+		createEReference(referencesTEClass, REFERENCES_T__REFERENCE);
+
+		referenceTEClass = createEClass(REFERENCE_T);
+		createEReference(referenceTEClass, REFERENCE_T__KEYS);
+
+		relationshipElementTEClass = createEClass(RELATIONSHIP_ELEMENT_T);
+		createEReference(relationshipElementTEClass, RELATIONSHIP_ELEMENT_T__FIRST);
+		createEReference(relationshipElementTEClass, RELATIONSHIP_ELEMENT_T__SECOND);
+
+		semanticIdTEClass = createEClass(SEMANTIC_ID_T);
+
+		submodelElementAbstractTEClass = createEClass(SUBMODEL_ELEMENT_ABSTRACT_T);
+		createEReference(submodelElementAbstractTEClass, SUBMODEL_ELEMENT_ABSTRACT_T__ID_SHORT);
+		createEAttribute(submodelElementAbstractTEClass, SUBMODEL_ELEMENT_ABSTRACT_T__CATEGORY);
+		createEReference(submodelElementAbstractTEClass, SUBMODEL_ELEMENT_ABSTRACT_T__DESCRIPTION);
+		createEAttribute(submodelElementAbstractTEClass, SUBMODEL_ELEMENT_ABSTRACT_T__PARENT);
+		createEReference(submodelElementAbstractTEClass, SUBMODEL_ELEMENT_ABSTRACT_T__SEMANTIC_ID);
+		createEReference(submodelElementAbstractTEClass, SUBMODEL_ELEMENT_ABSTRACT_T__EMBEDDED_DATA_SPECIFICATION);
+		createEAttribute(submodelElementAbstractTEClass, SUBMODEL_ELEMENT_ABSTRACT_T__KIND);
+		createEReference(submodelElementAbstractTEClass, SUBMODEL_ELEMENT_ABSTRACT_T__QUALIFIER);
+
+		submodelElementCollectionTEClass = createEClass(SUBMODEL_ELEMENT_COLLECTION_T);
+		createEReference(submodelElementCollectionTEClass, SUBMODEL_ELEMENT_COLLECTION_T__VALUE);
+		createEAttribute(submodelElementCollectionTEClass, SUBMODEL_ELEMENT_COLLECTION_T__ORDERED);
+		createEAttribute(submodelElementCollectionTEClass, SUBMODEL_ELEMENT_COLLECTION_T__ALLOW_DUPLICATES);
+
+		submodelElementsTEClass = createEClass(SUBMODEL_ELEMENTS_T);
+		createEReference(submodelElementsTEClass, SUBMODEL_ELEMENTS_T__SUBMODEL_ELEMENT);
+
+		submodelElementTEClass = createEClass(SUBMODEL_ELEMENT_T);
+		createEReference(submodelElementTEClass, SUBMODEL_ELEMENT_T__PROPERTY);
+		createEReference(submodelElementTEClass, SUBMODEL_ELEMENT_T__FILE);
+		createEReference(submodelElementTEClass, SUBMODEL_ELEMENT_T__BLOB);
+		createEReference(submodelElementTEClass, SUBMODEL_ELEMENT_T__REFERENCE_ELEMENT);
+		createEReference(submodelElementTEClass, SUBMODEL_ELEMENT_T__SUBMODEL_ELEMENT_COLLECTION);
+		createEReference(submodelElementTEClass, SUBMODEL_ELEMENT_T__RELATIONSHIP_ELEMENT);
+		createEReference(submodelElementTEClass, SUBMODEL_ELEMENT_T__OPERATION);
+		createEReference(submodelElementTEClass, SUBMODEL_ELEMENT_T__OPERATION_VARIABLE);
+		createEReference(submodelElementTEClass, SUBMODEL_ELEMENT_T__EVENT);
+
+		submodelRefsTEClass = createEClass(SUBMODEL_REFS_T);
+		createEReference(submodelRefsTEClass, SUBMODEL_REFS_T__SUBMODEL_REF);
+
+		submodelsTEClass = createEClass(SUBMODELS_T);
+		createEReference(submodelsTEClass, SUBMODELS_T__SUBMODEL);
+
+		submodelTEClass = createEClass(SUBMODEL_T);
+		createEReference(submodelTEClass, SUBMODEL_T__ID_SHORT);
+		createEAttribute(submodelTEClass, SUBMODEL_T__CATEGORY);
+		createEReference(submodelTEClass, SUBMODEL_T__DESCRIPTION);
+		createEAttribute(submodelTEClass, SUBMODEL_T__PARENT);
+		createEReference(submodelTEClass, SUBMODEL_T__IDENTIFICATION);
+		createEReference(submodelTEClass, SUBMODEL_T__ADMINISTRATION);
+		createEReference(submodelTEClass, SUBMODEL_T__EMBEDDED_DATA_SPECIFICATION);
+		createEReference(submodelTEClass, SUBMODEL_T__SEMANTIC_ID);
+		createEAttribute(submodelTEClass, SUBMODEL_T__KIND);
+		createEReference(submodelTEClass, SUBMODEL_T__QUALIFIER);
+		createEReference(submodelTEClass, SUBMODEL_T__SUBMODEL_ELEMENTS);
+
+		viewsTEClass = createEClass(VIEWS_T);
+		createEReference(viewsTEClass, VIEWS_T__VIEW);
+
+		viewTEClass = createEClass(VIEW_T);
+		createEReference(viewTEClass, VIEW_T__ID_SHORT);
+		createEAttribute(viewTEClass, VIEW_T__CATEGORY);
+		createEReference(viewTEClass, VIEW_T__DESCRIPTION);
+		createEAttribute(viewTEClass, VIEW_T__PARENT);
+		createEReference(viewTEClass, VIEW_T__SEMANTIC_ID);
+		createEReference(viewTEClass, VIEW_T__EMBEDDED_DATA_SPECIFICATION);
+		createEReference(viewTEClass, VIEW_T__CONTAINED_ELEMENTS);
+
+		// Create enums
+		idTypeTypeEEnum = createEEnum(ID_TYPE_TYPE);
+		idTypeType1EEnum = createEEnum(ID_TYPE_TYPE1);
+		kindTypeEEnum = createEEnum(KIND_TYPE);
+		typeTypeEEnum = createEEnum(TYPE_TYPE);
+
+		// Create data types
+		idTypeTypeObjectEDataType = createEDataType(ID_TYPE_TYPE_OBJECT);
+		idTypeTypeObject1EDataType = createEDataType(ID_TYPE_TYPE_OBJECT1);
+		kindTypeObjectEDataType = createEDataType(KIND_TYPE_OBJECT);
+		typeTypeObjectEDataType = createEDataType(TYPE_TYPE_OBJECT);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private boolean isInitialized = false;
+
+	/**
+	 * Complete the initialization of the package and its meta-model.  This
+	 * method is guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void initializePackageContents() {
+		if (isInitialized) return;
+		isInitialized = true;
+
+		// Initialize package
+		setName(eNAME);
+		setNsPrefix(eNS_PREFIX);
+		setNsURI(eNS_URI);
+
+		// Obtain other dependent packages
+		XMLTypePackage theXMLTypePackage = (XMLTypePackage)EPackage.Registry.INSTANCE.getEPackage(XMLTypePackage.eNS_URI);
+		io.shell.admin.iec61360._1._0._0Package the_0Package_1 = (io.shell.admin.iec61360._1._0._0Package)EPackage.Registry.INSTANCE.getEPackage(io.shell.admin.iec61360._1._0._0Package.eNS_URI);
+
+		// Create type parameters
+
+		// Set bounds for type parameters
+
+		// Add supertypes to classes
+		blobTEClass.getESuperTypes().add(this.getSubmodelElementAbstractT());
+		eventTEClass.getESuperTypes().add(this.getSubmodelElementAbstractT());
+		fileTEClass.getESuperTypes().add(this.getSubmodelElementAbstractT());
+		operationTEClass.getESuperTypes().add(this.getSubmodelElementAbstractT());
+		operationVariableTEClass.getESuperTypes().add(this.getSubmodelElementAbstractT());
+		propertyTEClass.getESuperTypes().add(this.getSubmodelElementAbstractT());
+		referenceElementTEClass.getESuperTypes().add(this.getSubmodelElementAbstractT());
+		relationshipElementTEClass.getESuperTypes().add(this.getSubmodelElementAbstractT());
+		semanticIdTEClass.getESuperTypes().add(this.getReferenceT());
+		submodelElementCollectionTEClass.getESuperTypes().add(this.getSubmodelElementAbstractT());
+
+		// Initialize classes, features, and operations; add parameters
+		initEClass(aasenvTEClass, AasenvT.class, "AasenvT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getAasenvT_AssetAdministrationShells(), this.getAssetAdministrationShellsT(), null, "assetAdministrationShells", null, 0, 1, AasenvT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAasenvT_Assets(), this.getAssetsT(), null, "assets", null, 0, 1, AasenvT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAasenvT_Submodels(), this.getSubmodelsT(), null, "submodels", null, 0, 1, AasenvT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAasenvT_ConceptDescriptions(), this.getConceptDescriptionsT(), null, "conceptDescriptions", null, 0, 1, AasenvT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(administrationTEClass, AdministrationT.class, "AdministrationT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getAdministrationT_Version(), theXMLTypePackage.getString(), "version", null, 0, 1, AdministrationT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getAdministrationT_Revision(), theXMLTypePackage.getString(), "revision", null, 0, 1, AdministrationT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(assetAdministrationShellsTEClass, AssetAdministrationShellsT.class, "AssetAdministrationShellsT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getAssetAdministrationShellsT_AssetAdministrationShell(), this.getAssetAdministrationShellT(), null, "assetAdministrationShell", null, 0, -1, AssetAdministrationShellsT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(assetAdministrationShellTEClass, AssetAdministrationShellT.class, "AssetAdministrationShellT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getAssetAdministrationShellT_IdShort(), this.getIdShortT(), null, "idShort", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getAssetAdministrationShellT_Category(), theXMLTypePackage.getString(), "category", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetAdministrationShellT_Description(), this.getLangStringsT(), null, "description", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getAssetAdministrationShellT_Parent(), theXMLTypePackage.getString(), "parent", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetAdministrationShellT_Identification(), this.getIdentificationT(), null, "identification", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetAdministrationShellT_Administration(), this.getAdministrationT(), null, "administration", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetAdministrationShellT_EmbeddedDataSpecification(), this.getEmbeddedDataSpecificationT(), null, "embeddedDataSpecification", null, 0, -1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetAdministrationShellT_DerivedFrom(), this.getReferenceT(), null, "derivedFrom", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetAdministrationShellT_AssetRef(), this.getReferenceT(), null, "assetRef", null, 1, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetAdministrationShellT_SubmodelRefs(), this.getSubmodelRefsT(), null, "submodelRefs", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetAdministrationShellT_Views(), this.getViewsT(), null, "views", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetAdministrationShellT_ConceptDictionaries(), this.getConceptDictionariesT(), null, "conceptDictionaries", null, 0, 1, AssetAdministrationShellT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(assetsTEClass, AssetsT.class, "AssetsT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getAssetsT_Asset(), this.getAssetT(), null, "asset", null, 0, -1, AssetsT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(assetTEClass, AssetT.class, "AssetT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getAssetT_IdShort(), this.getIdShortT(), null, "idShort", null, 0, 1, AssetT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getAssetT_Category(), theXMLTypePackage.getString(), "category", null, 0, 1, AssetT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetT_Description(), this.getLangStringsT(), null, "description", null, 0, 1, AssetT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getAssetT_Parent(), theXMLTypePackage.getString(), "parent", null, 0, 1, AssetT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetT_Identification(), this.getIdentificationT(), null, "identification", null, 0, 1, AssetT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetT_Administration(), this.getAdministrationT(), null, "administration", null, 0, 1, AssetT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetT_EmbeddedDataSpecification(), this.getEmbeddedDataSpecificationT(), null, "embeddedDataSpecification", null, 0, -1, AssetT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getAssetT_Kind(), this.getKindType(), "kind", null, 0, 1, AssetT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getAssetT_AssetIdentificationModelRef(), this.getReferenceT(), null, "assetIdentificationModelRef", null, 0, 1, AssetT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(blobTEClass, BlobT.class, "BlobT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getBlobT_MimeType(), theXMLTypePackage.getString(), "mimeType", null, 1, 1, BlobT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getBlobT_Value(), this.getBlobTypeT(), null, "value", null, 1, 1, BlobT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(blobTypeTEClass, BlobTypeT.class, "BlobTypeT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getBlobTypeT_Value(), theXMLTypePackage.getBase64Binary(), "value", null, 0, 1, BlobTypeT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(conceptDescriptionsRefTEClass, ConceptDescriptionsRefT.class, "ConceptDescriptionsRefT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getConceptDescriptionsRefT_ConceptDescriptionRef(), this.getReferenceT(), null, "conceptDescriptionRef", null, 0, -1, ConceptDescriptionsRefT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(conceptDescriptionsTEClass, ConceptDescriptionsT.class, "ConceptDescriptionsT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getConceptDescriptionsT_ConceptDescription(), this.getConceptDescriptionT(), null, "conceptDescription", null, 0, -1, ConceptDescriptionsT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(conceptDescriptionTEClass, ConceptDescriptionT.class, "ConceptDescriptionT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getConceptDescriptionT_IdShort(), this.getIdShortT(), null, "idShort", null, 0, 1, ConceptDescriptionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getConceptDescriptionT_Category(), theXMLTypePackage.getString(), "category", null, 0, 1, ConceptDescriptionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getConceptDescriptionT_Description(), this.getLangStringsT(), null, "description", null, 0, 1, ConceptDescriptionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getConceptDescriptionT_Parent(), theXMLTypePackage.getString(), "parent", null, 0, 1, ConceptDescriptionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getConceptDescriptionT_Identification(), this.getIdentificationT(), null, "identification", null, 0, 1, ConceptDescriptionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getConceptDescriptionT_Administration(), this.getAdministrationT(), null, "administration", null, 0, 1, ConceptDescriptionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getConceptDescriptionT_EmbeddedDataSpecification(), this.getEmbeddedDataSpecificationT(), null, "embeddedDataSpecification", null, 0, -1, ConceptDescriptionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getConceptDescriptionT_IsCaseOf(), this.getReferenceT(), null, "isCaseOf", null, 0, -1, ConceptDescriptionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(conceptDictionariesTEClass, ConceptDictionariesT.class, "ConceptDictionariesT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getConceptDictionariesT_ConceptDictionary(), this.getConceptDictionaryT(), null, "conceptDictionary", null, 0, -1, ConceptDictionariesT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(conceptDictionaryTEClass, ConceptDictionaryT.class, "ConceptDictionaryT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getConceptDictionaryT_IdShort(), this.getIdShortT(), null, "idShort", null, 0, 1, ConceptDictionaryT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getConceptDictionaryT_Category(), theXMLTypePackage.getString(), "category", null, 0, 1, ConceptDictionaryT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getConceptDictionaryT_Description(), this.getLangStringsT(), null, "description", null, 0, 1, ConceptDictionaryT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getConceptDictionaryT_Parent(), theXMLTypePackage.getString(), "parent", null, 0, 1, ConceptDictionaryT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getConceptDictionaryT_ConceptDescriptionRefs(), this.getConceptDescriptionsRefT(), null, "conceptDescriptionRefs", null, 0, 1, ConceptDictionaryT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(constraintTEClass, ConstraintT.class, "ConstraintT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getConstraintT_Qualifier(), this.getQualifierT(), null, "qualifier", null, 0, 1, ConstraintT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getConstraintT_Formula(), this.getFormulaT(), null, "formula", null, 0, 1, ConstraintT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(containedElementsTEClass, ContainedElementsT.class, "ContainedElementsT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getContainedElementsT_ContainedElementRef(), this.getReferenceT(), null, "containedElementRef", null, 0, -1, ContainedElementsT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(dataSpecificationContentTEClass, DataSpecificationContentT.class, "DataSpecificationContentT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getDataSpecificationContentT_DataSpecificationIEC61360(), the_0Package_1.getDataSpecificationIEC61630T(), null, "dataSpecificationIEC61360", null, 0, 1, DataSpecificationContentT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(documentRootEClass, DocumentRoot.class, "DocumentRoot", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getDocumentRoot_Mixed(), ecorePackage.getEFeatureMapEntry(), "mixed", null, 0, -1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_XMLNSPrefixMap(), ecorePackage.getEStringToStringMapEntry(), null, "xMLNSPrefixMap", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_XSISchemaLocation(), ecorePackage.getEStringToStringMapEntry(), null, "xSISchemaLocation", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_Aasenv(), this.getAasenvT(), null, "aasenv", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_Key(), this.getKeyT(), null, "key", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+
+		initEClass(embeddedDataSpecificationTEClass, EmbeddedDataSpecificationT.class, "EmbeddedDataSpecificationT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getEmbeddedDataSpecificationT_HasDataSpecification(), this.getReferenceT(), null, "hasDataSpecification", null, 0, 1, EmbeddedDataSpecificationT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getEmbeddedDataSpecificationT_DataSpecificationContent(), this.getDataSpecificationContentT(), null, "dataSpecificationContent", null, 0, 1, EmbeddedDataSpecificationT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(eventTEClass, EventT.class, "EventT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(fileTEClass, FileT.class, "FileT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getFileT_MimeType(), theXMLTypePackage.getString(), "mimeType", null, 1, 1, FileT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getFileT_Value(), this.getPathTypeT(), null, "value", null, 1, 1, FileT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(formulaTEClass, FormulaT.class, "FormulaT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getFormulaT_DependsOn(), this.getReferencesT(), null, "dependsOn", null, 1, 1, FormulaT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(identificationTEClass, IdentificationT.class, "IdentificationT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getIdentificationT_Value(), theXMLTypePackage.getString(), "value", null, 0, 1, IdentificationT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getIdentificationT_IdType(), this.getIdTypeType1(), "idType", null, 0, 1, IdentificationT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(idPropertyDefinitionTEClass, IdPropertyDefinitionT.class, "IdPropertyDefinitionT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getIdPropertyDefinitionT_Value(), theXMLTypePackage.getString(), "value", null, 0, 1, IdPropertyDefinitionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getIdPropertyDefinitionT_IdType(), theXMLTypePackage.getString(), "idType", null, 0, 1, IdPropertyDefinitionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(idShortTEClass, IdShortT.class, "IdShortT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getIdShortT_Value(), theXMLTypePackage.getString(), "value", null, 0, 1, IdShortT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(keysTEClass, KeysT.class, "KeysT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getKeysT_Key(), this.getKeyT(), null, "key", null, 0, -1, KeysT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(keyTEClass, KeyT.class, "KeyT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getKeyT_Value(), theXMLTypePackage.getString(), "value", null, 0, 1, KeyT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getKeyT_IdType(), this.getIdTypeType(), "idType", null, 0, 1, KeyT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getKeyT_Local(), theXMLTypePackage.getBoolean(), "local", null, 0, 1, KeyT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getKeyT_Type(), this.getTypeType(), "type", null, 0, 1, KeyT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(langStringsTEClass, LangStringsT.class, "LangStringsT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getLangStringsT_LangString(), this.getLangStringT(), null, "langString", null, 0, -1, LangStringsT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(langStringTEClass, LangStringT.class, "LangStringT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getLangStringT_Value(), theXMLTypePackage.getString(), "value", null, 0, 1, LangStringT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getLangStringT_Lang(), theXMLTypePackage.getString(), "lang", null, 0, 1, LangStringT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(operationTEClass, OperationT.class, "OperationT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getOperationT_In(), this.getOperationVariableT(), null, "in", null, 0, -1, OperationT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getOperationT_Out(), this.getOperationVariableT(), null, "out", null, 0, -1, OperationT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(operationVariableTEClass, OperationVariableT.class, "OperationVariableT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getOperationVariableT_Value(), this.getSubmodelElementT(), null, "value", null, 1, 1, OperationVariableT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(pathTypeTEClass, PathTypeT.class, "PathTypeT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getPathTypeT_Value(), theXMLTypePackage.getString(), "value", null, 0, 1, PathTypeT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(propertyTEClass, PropertyT.class, "PropertyT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getPropertyT_ValueType(), theXMLTypePackage.getString(), "valueType", null, 1, 1, PropertyT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getPropertyT_Value(), this.getPropertyValueTypeT(), null, "value", null, 0, 1, PropertyT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getPropertyT_ValueId(), this.getReferenceT(), null, "valueId", null, 0, 1, PropertyT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(propertyValueTypeTEClass, PropertyValueTypeT.class, "PropertyValueTypeT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getPropertyValueTypeT_Value(), theXMLTypePackage.getString(), "value", null, 0, 1, PropertyValueTypeT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(prvalueTypeTEClass, PrvalueTypeT.class, "PrvalueTypeT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(qualifiersTEClass, QualifiersT.class, "QualifiersT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getQualifiersT_Qualifier(), theXMLTypePackage.getString(), "qualifier", null, 0, -1, QualifiersT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(qualifierTEClass, QualifierT.class, "QualifierT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getQualifierT_SemanticId(), this.getSemanticIdT(), null, "semanticId", null, 0, 1, QualifierT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getQualifierT_QualifierType(), theXMLTypePackage.getString(), "qualifierType", null, 1, 1, QualifierT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getQualifierT_QualifierValue(), theXMLTypePackage.getString(), "qualifierValue", null, 0, 1, QualifierT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getQualifierT_QualifierValueId(), this.getReferenceT(), null, "qualifierValueId", null, 0, 1, QualifierT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(referenceElementTEClass, ReferenceElementT.class, "ReferenceElementT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getReferenceElementT_Value(), this.getReferenceT(), null, "value", null, 1, 1, ReferenceElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(referencesTEClass, ReferencesT.class, "ReferencesT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getReferencesT_Reference(), this.getReferenceT(), null, "reference", null, 0, -1, ReferencesT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(referenceTEClass, ReferenceT.class, "ReferenceT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getReferenceT_Keys(), this.getKeysT(), null, "keys", null, 1, 1, ReferenceT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(relationshipElementTEClass, RelationshipElementT.class, "RelationshipElementT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getRelationshipElementT_First(), this.getReferenceT(), null, "first", null, 1, 1, RelationshipElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getRelationshipElementT_Second(), this.getReferenceT(), null, "second", null, 1, 1, RelationshipElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(semanticIdTEClass, SemanticIdT.class, "SemanticIdT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(submodelElementAbstractTEClass, SubmodelElementAbstractT.class, "SubmodelElementAbstractT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSubmodelElementAbstractT_IdShort(), this.getIdShortT(), null, "idShort", null, 0, 1, SubmodelElementAbstractT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getSubmodelElementAbstractT_Category(), theXMLTypePackage.getString(), "category", null, 0, 1, SubmodelElementAbstractT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementAbstractT_Description(), this.getLangStringsT(), null, "description", null, 0, 1, SubmodelElementAbstractT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getSubmodelElementAbstractT_Parent(), theXMLTypePackage.getString(), "parent", null, 0, 1, SubmodelElementAbstractT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementAbstractT_SemanticId(), this.getSemanticIdT(), null, "semanticId", null, 0, 1, SubmodelElementAbstractT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementAbstractT_EmbeddedDataSpecification(), this.getEmbeddedDataSpecificationT(), null, "embeddedDataSpecification", null, 0, -1, SubmodelElementAbstractT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getSubmodelElementAbstractT_Kind(), this.getKindType(), "kind", null, 0, 1, SubmodelElementAbstractT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementAbstractT_Qualifier(), this.getConstraintT(), null, "qualifier", null, 0, 1, SubmodelElementAbstractT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(submodelElementCollectionTEClass, SubmodelElementCollectionT.class, "SubmodelElementCollectionT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSubmodelElementCollectionT_Value(), this.getSubmodelElementsT(), null, "value", null, 1, 1, SubmodelElementCollectionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getSubmodelElementCollectionT_Ordered(), theXMLTypePackage.getBoolean(), "ordered", null, 1, 1, SubmodelElementCollectionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getSubmodelElementCollectionT_AllowDuplicates(), theXMLTypePackage.getBoolean(), "allowDuplicates", null, 1, 1, SubmodelElementCollectionT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(submodelElementsTEClass, SubmodelElementsT.class, "SubmodelElementsT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSubmodelElementsT_SubmodelElement(), this.getSubmodelElementT(), null, "submodelElement", null, 0, -1, SubmodelElementsT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(submodelElementTEClass, SubmodelElementT.class, "SubmodelElementT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSubmodelElementT_Property(), this.getPropertyT(), null, "property", null, 0, 1, SubmodelElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementT_File(), this.getFileT(), null, "file", null, 0, 1, SubmodelElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementT_Blob(), this.getBlobT(), null, "blob", null, 0, 1, SubmodelElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementT_ReferenceElement(), this.getReferenceElementT(), null, "referenceElement", null, 0, 1, SubmodelElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementT_SubmodelElementCollection(), this.getSubmodelElementCollectionT(), null, "submodelElementCollection", null, 0, 1, SubmodelElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementT_RelationshipElement(), this.getRelationshipElementT(), null, "relationshipElement", null, 0, 1, SubmodelElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementT_Operation(), this.getOperationT(), null, "operation", null, 0, 1, SubmodelElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementT_OperationVariable(), this.getOperationVariableT(), null, "operationVariable", null, 0, 1, SubmodelElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementT_Event(), this.getEventT(), null, "event", null, 0, 1, SubmodelElementT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(submodelRefsTEClass, SubmodelRefsT.class, "SubmodelRefsT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSubmodelRefsT_SubmodelRef(), this.getReferenceT(), null, "submodelRef", null, 0, -1, SubmodelRefsT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(submodelsTEClass, SubmodelsT.class, "SubmodelsT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSubmodelsT_Submodel(), this.getSubmodelT(), null, "submodel", null, 0, -1, SubmodelsT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(submodelTEClass, SubmodelT.class, "SubmodelT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSubmodelT_IdShort(), this.getIdShortT(), null, "idShort", null, 0, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getSubmodelT_Category(), theXMLTypePackage.getString(), "category", null, 0, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelT_Description(), this.getLangStringsT(), null, "description", null, 0, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getSubmodelT_Parent(), theXMLTypePackage.getString(), "parent", null, 0, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelT_Identification(), this.getIdentificationT(), null, "identification", null, 0, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelT_Administration(), this.getAdministrationT(), null, "administration", null, 0, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelT_EmbeddedDataSpecification(), this.getEmbeddedDataSpecificationT(), null, "embeddedDataSpecification", null, 0, -1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelT_SemanticId(), this.getSemanticIdT(), null, "semanticId", null, 0, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getSubmodelT_Kind(), this.getKindType(), "kind", null, 0, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelT_Qualifier(), this.getConstraintT(), null, "qualifier", null, 0, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelT_SubmodelElements(), this.getSubmodelElementsT(), null, "submodelElements", null, 1, 1, SubmodelT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(viewsTEClass, ViewsT.class, "ViewsT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getViewsT_View(), this.getViewT(), null, "view", null, 0, -1, ViewsT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(viewTEClass, ViewT.class, "ViewT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getViewT_IdShort(), this.getIdShortT(), null, "idShort", null, 0, 1, ViewT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getViewT_Category(), theXMLTypePackage.getString(), "category", null, 0, 1, ViewT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getViewT_Description(), this.getLangStringsT(), null, "description", null, 0, 1, ViewT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getViewT_Parent(), theXMLTypePackage.getString(), "parent", null, 0, 1, ViewT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getViewT_SemanticId(), this.getSemanticIdT(), null, "semanticId", null, 0, 1, ViewT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getViewT_EmbeddedDataSpecification(), this.getEmbeddedDataSpecificationT(), null, "embeddedDataSpecification", null, 0, -1, ViewT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getViewT_ContainedElements(), this.getContainedElementsT(), null, "containedElements", null, 1, 1, ViewT.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		// Initialize enums and add enum literals
+		initEEnum(idTypeTypeEEnum, IdTypeType.class, "IdTypeType");
+		addEEnumLiteral(idTypeTypeEEnum, IdTypeType.ID_SHORT);
+		addEEnumLiteral(idTypeTypeEEnum, IdTypeType.IRDI);
+		addEEnumLiteral(idTypeTypeEEnum, IdTypeType.URI);
+		addEEnumLiteral(idTypeTypeEEnum, IdTypeType.CUSTOM);
+
+		initEEnum(idTypeType1EEnum, IdTypeType1.class, "IdTypeType1");
+		addEEnumLiteral(idTypeType1EEnum, IdTypeType1.URI);
+		addEEnumLiteral(idTypeType1EEnum, IdTypeType1.IRDI);
+		addEEnumLiteral(idTypeType1EEnum, IdTypeType1.CUSTOM);
+
+		initEEnum(kindTypeEEnum, KindType.class, "KindType");
+		addEEnumLiteral(kindTypeEEnum, KindType.TYPE);
+		addEEnumLiteral(kindTypeEEnum, KindType.INSTANCE);
+
+		initEEnum(typeTypeEEnum, TypeType.class, "TypeType");
+		addEEnumLiteral(typeTypeEEnum, TypeType.GLOBAL_REFERENCE);
+		addEEnumLiteral(typeTypeEEnum, TypeType.CONCEPT_DICTIONARY);
+		addEEnumLiteral(typeTypeEEnum, TypeType.ACCESS_PERMISSION_RULE);
+		addEEnumLiteral(typeTypeEEnum, TypeType.DATA_ELEMENT);
+		addEEnumLiteral(typeTypeEEnum, TypeType.VIEW);
+		addEEnumLiteral(typeTypeEEnum, TypeType.PROPERTY);
+		addEEnumLiteral(typeTypeEEnum, TypeType.SUBMODEL_ELEMENT);
+		addEEnumLiteral(typeTypeEEnum, TypeType.FILE);
+		addEEnumLiteral(typeTypeEEnum, TypeType.BLOB);
+		addEEnumLiteral(typeTypeEEnum, TypeType.REFERENCE_ELEMENT);
+		addEEnumLiteral(typeTypeEEnum, TypeType.SUBMODEL_ELEMENT_COLLECTION);
+		addEEnumLiteral(typeTypeEEnum, TypeType.RELATION_SHIP_ELEMENT);
+		addEEnumLiteral(typeTypeEEnum, TypeType.EVENT);
+		addEEnumLiteral(typeTypeEEnum, TypeType.OPERATION);
+		addEEnumLiteral(typeTypeEEnum, TypeType.OPERATION_VARIABLE);
+		addEEnumLiteral(typeTypeEEnum, TypeType.ASSET_ADMINISTRATION_SHELL);
+		addEEnumLiteral(typeTypeEEnum, TypeType.SUBMODEL);
+		addEEnumLiteral(typeTypeEEnum, TypeType.CONCEPT_DESCRIPTION);
+		addEEnumLiteral(typeTypeEEnum, TypeType.ASSET);
+
+		// Initialize data types
+		initEDataType(idTypeTypeObjectEDataType, IdTypeType.class, "IdTypeTypeObject", IS_SERIALIZABLE, IS_GENERATED_INSTANCE_CLASS);
+		initEDataType(idTypeTypeObject1EDataType, IdTypeType1.class, "IdTypeTypeObject1", IS_SERIALIZABLE, IS_GENERATED_INSTANCE_CLASS);
+		initEDataType(kindTypeObjectEDataType, KindType.class, "KindTypeObject", IS_SERIALIZABLE, IS_GENERATED_INSTANCE_CLASS);
+		initEDataType(typeTypeObjectEDataType, TypeType.class, "TypeTypeObject", IS_SERIALIZABLE, IS_GENERATED_INSTANCE_CLASS);
+
+		// Create resource
+		createResource(eNS_URI);
+
+		// Create annotations
+		// http:///org/eclipse/emf/ecore/util/ExtendedMetaData
+		createExtendedMetaDataAnnotations();
+	}
+
+	/**
+	 * Initializes the annotations for <b>http:///org/eclipse/emf/ecore/util/ExtendedMetaData</b>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void createExtendedMetaDataAnnotations() {
+		String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData";
+		addAnnotation
+		  (aasenvTEClass,
+		   source,
+		   new String[] {
+			   "name", "aasenv_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getAasenvT_AssetAdministrationShells(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "assetAdministrationShells",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAasenvT_Assets(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "assets",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAasenvT_Submodels(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "submodels",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAasenvT_ConceptDescriptions(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "conceptDescriptions",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (administrationTEClass,
+		   source,
+		   new String[] {
+			   "name", "administration_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getAdministrationT_Version(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "version",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAdministrationT_Revision(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "revision",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (assetAdministrationShellsTEClass,
+		   source,
+		   new String[] {
+			   "name", "assetAdministrationShells_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellsT_AssetAdministrationShell(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "assetAdministrationShell",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (assetAdministrationShellTEClass,
+		   source,
+		   new String[] {
+			   "name", "assetAdministrationShell_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_IdShort(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "idShort",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_Category(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "category",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_Description(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "description",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_Parent(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "parent",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_Identification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "identification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_Administration(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "administration",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_EmbeddedDataSpecification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "embeddedDataSpecification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_DerivedFrom(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "derivedFrom",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_AssetRef(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "assetRef",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_SubmodelRefs(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "submodelRefs",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_Views(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "views",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetAdministrationShellT_ConceptDictionaries(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "conceptDictionaries",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (assetsTEClass,
+		   source,
+		   new String[] {
+			   "name", "assets_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getAssetsT_Asset(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "asset",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (assetTEClass,
+		   source,
+		   new String[] {
+			   "name", "asset_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getAssetT_IdShort(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "idShort",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetT_Category(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "category",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetT_Description(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "description",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetT_Parent(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "parent",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetT_Identification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "identification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetT_Administration(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "administration",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetT_EmbeddedDataSpecification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "embeddedDataSpecification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetT_Kind(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "kind",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getAssetT_AssetIdentificationModelRef(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "assetIdentificationModelRef",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (blobTEClass,
+		   source,
+		   new String[] {
+			   "name", "blob_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getBlobT_MimeType(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "mimeType",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getBlobT_Value(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "value",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (blobTypeTEClass,
+		   source,
+		   new String[] {
+			   "name", "blobType_t",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getBlobTypeT_Value(),
+		   source,
+		   new String[] {
+			   "name", ":0",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (conceptDescriptionsRefTEClass,
+		   source,
+		   new String[] {
+			   "name", "conceptDescriptionsRef_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getConceptDescriptionsRefT_ConceptDescriptionRef(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "conceptDescriptionRef",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (conceptDescriptionsTEClass,
+		   source,
+		   new String[] {
+			   "name", "conceptDescriptions_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getConceptDescriptionsT_ConceptDescription(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "conceptDescription",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (conceptDescriptionTEClass,
+		   source,
+		   new String[] {
+			   "name", "conceptDescription_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getConceptDescriptionT_IdShort(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "idShort",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDescriptionT_Category(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "category",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDescriptionT_Description(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "description",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDescriptionT_Parent(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "parent",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDescriptionT_Identification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "identification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDescriptionT_Administration(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "administration",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDescriptionT_EmbeddedDataSpecification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "embeddedDataSpecification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDescriptionT_IsCaseOf(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "isCaseOf",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (conceptDictionariesTEClass,
+		   source,
+		   new String[] {
+			   "name", "conceptDictionaries_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getConceptDictionariesT_ConceptDictionary(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "conceptDictionary",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (conceptDictionaryTEClass,
+		   source,
+		   new String[] {
+			   "name", "conceptDictionary_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getConceptDictionaryT_IdShort(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "idShort",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDictionaryT_Category(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "category",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDictionaryT_Description(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "description",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDictionaryT_Parent(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "parent",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConceptDictionaryT_ConceptDescriptionRefs(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "conceptDescriptionRefs",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (constraintTEClass,
+		   source,
+		   new String[] {
+			   "name", "constraint_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getConstraintT_Qualifier(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "qualifier",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getConstraintT_Formula(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "formula",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (containedElementsTEClass,
+		   source,
+		   new String[] {
+			   "name", "containedElements_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getContainedElementsT_ContainedElementRef(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "containedElementRef",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (dataSpecificationContentTEClass,
+		   source,
+		   new String[] {
+			   "name", "dataSpecificationContent_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getDataSpecificationContentT_DataSpecificationIEC61360(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "dataSpecificationIEC61360",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (documentRootEClass,
+		   source,
+		   new String[] {
+			   "name", "",
+			   "kind", "mixed"
+		   });
+		addAnnotation
+		  (getDocumentRoot_Mixed(),
+		   source,
+		   new String[] {
+			   "kind", "elementWildcard",
+			   "name", ":mixed"
+		   });
+		addAnnotation
+		  (getDocumentRoot_XMLNSPrefixMap(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "xmlns:prefix"
+		   });
+		addAnnotation
+		  (getDocumentRoot_XSISchemaLocation(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "xsi:schemaLocation"
+		   });
+		addAnnotation
+		  (getDocumentRoot_Aasenv(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "aasenv",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_Key(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "key",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (embeddedDataSpecificationTEClass,
+		   source,
+		   new String[] {
+			   "name", "embeddedDataSpecification_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getEmbeddedDataSpecificationT_HasDataSpecification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "hasDataSpecification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getEmbeddedDataSpecificationT_DataSpecificationContent(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "dataSpecificationContent",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (eventTEClass,
+		   source,
+		   new String[] {
+			   "name", "event_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (fileTEClass,
+		   source,
+		   new String[] {
+			   "name", "file_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getFileT_MimeType(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "mimeType",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getFileT_Value(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "value",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (formulaTEClass,
+		   source,
+		   new String[] {
+			   "name", "formula_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getFormulaT_DependsOn(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "dependsOn",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (identificationTEClass,
+		   source,
+		   new String[] {
+			   "name", "identification_t",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getIdentificationT_Value(),
+		   source,
+		   new String[] {
+			   "name", ":0",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getIdentificationT_IdType(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "idType"
+		   });
+		addAnnotation
+		  (idPropertyDefinitionTEClass,
+		   source,
+		   new String[] {
+			   "name", "idPropertyDefinition_t",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getIdPropertyDefinitionT_Value(),
+		   source,
+		   new String[] {
+			   "name", ":0",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getIdPropertyDefinitionT_IdType(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "idType"
+		   });
+		addAnnotation
+		  (idShortTEClass,
+		   source,
+		   new String[] {
+			   "name", "idShort_t",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getIdShortT_Value(),
+		   source,
+		   new String[] {
+			   "name", ":0",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (idTypeTypeEEnum,
+		   source,
+		   new String[] {
+			   "name", "idType_._type"
+		   });
+		addAnnotation
+		  (idTypeType1EEnum,
+		   source,
+		   new String[] {
+			   "name", "idType_._1_._type"
+		   });
+		addAnnotation
+		  (idTypeTypeObjectEDataType,
+		   source,
+		   new String[] {
+			   "name", "idType_._type:Object",
+			   "baseType", "idType_._type"
+		   });
+		addAnnotation
+		  (idTypeTypeObject1EDataType,
+		   source,
+		   new String[] {
+			   "name", "idType_._1_._type:Object",
+			   "baseType", "idType_._1_._type"
+		   });
+		addAnnotation
+		  (keysTEClass,
+		   source,
+		   new String[] {
+			   "name", "keys_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getKeysT_Key(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "key",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (keyTEClass,
+		   source,
+		   new String[] {
+			   "name", "key_t",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getKeyT_Value(),
+		   source,
+		   new String[] {
+			   "name", ":0",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getKeyT_IdType(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "idType"
+		   });
+		addAnnotation
+		  (getKeyT_Local(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "local"
+		   });
+		addAnnotation
+		  (getKeyT_Type(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "type"
+		   });
+		addAnnotation
+		  (kindTypeEEnum,
+		   source,
+		   new String[] {
+			   "name", "kind_._type"
+		   });
+		addAnnotation
+		  (kindTypeObjectEDataType,
+		   source,
+		   new String[] {
+			   "name", "kind_._type:Object",
+			   "baseType", "kind_._type"
+		   });
+		addAnnotation
+		  (langStringsTEClass,
+		   source,
+		   new String[] {
+			   "name", "langStrings_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getLangStringsT_LangString(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "langString",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (langStringTEClass,
+		   source,
+		   new String[] {
+			   "name", "langString_t",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getLangStringT_Value(),
+		   source,
+		   new String[] {
+			   "name", ":0",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getLangStringT_Lang(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "lang"
+		   });
+		addAnnotation
+		  (operationTEClass,
+		   source,
+		   new String[] {
+			   "name", "operation_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getOperationT_In(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "in",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getOperationT_Out(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "out",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (operationVariableTEClass,
+		   source,
+		   new String[] {
+			   "name", "operationVariable_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getOperationVariableT_Value(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "value",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (pathTypeTEClass,
+		   source,
+		   new String[] {
+			   "name", "pathType_t",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getPathTypeT_Value(),
+		   source,
+		   new String[] {
+			   "name", ":0",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (propertyTEClass,
+		   source,
+		   new String[] {
+			   "name", "property_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getPropertyT_ValueType(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "valueType",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getPropertyT_Value(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "value",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getPropertyT_ValueId(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "valueId",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (propertyValueTypeTEClass,
+		   source,
+		   new String[] {
+			   "name", "propertyValueType_t",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (getPropertyValueTypeT_Value(),
+		   source,
+		   new String[] {
+			   "name", ":0",
+			   "kind", "simple"
+		   });
+		addAnnotation
+		  (prvalueTypeTEClass,
+		   source,
+		   new String[] {
+			   "name", "prvalueType_t",
+			   "kind", "empty"
+		   });
+		addAnnotation
+		  (qualifiersTEClass,
+		   source,
+		   new String[] {
+			   "name", "qualifiers_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getQualifiersT_Qualifier(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "qualifier",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (qualifierTEClass,
+		   source,
+		   new String[] {
+			   "name", "qualifier_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getQualifierT_SemanticId(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "semanticId",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getQualifierT_QualifierType(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "qualifierType",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getQualifierT_QualifierValue(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "qualifierValue",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getQualifierT_QualifierValueId(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "qualifierValueId",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (referenceElementTEClass,
+		   source,
+		   new String[] {
+			   "name", "referenceElement_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getReferenceElementT_Value(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "value",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (referencesTEClass,
+		   source,
+		   new String[] {
+			   "name", "references_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getReferencesT_Reference(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "reference",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (referenceTEClass,
+		   source,
+		   new String[] {
+			   "name", "reference_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getReferenceT_Keys(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "keys",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (relationshipElementTEClass,
+		   source,
+		   new String[] {
+			   "name", "relationshipElement_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getRelationshipElementT_First(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "first",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getRelationshipElementT_Second(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "second",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (semanticIdTEClass,
+		   source,
+		   new String[] {
+			   "name", "semanticId_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (submodelElementAbstractTEClass,
+		   source,
+		   new String[] {
+			   "name", "submodelElementAbstract_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getSubmodelElementAbstractT_IdShort(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "idShort",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementAbstractT_Category(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "category",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementAbstractT_Description(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "description",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementAbstractT_Parent(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "parent",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementAbstractT_SemanticId(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "semanticId",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementAbstractT_EmbeddedDataSpecification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "embeddedDataSpecification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementAbstractT_Kind(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "kind",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementAbstractT_Qualifier(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "qualifier",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (submodelElementCollectionTEClass,
+		   source,
+		   new String[] {
+			   "name", "submodelElementCollection_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getSubmodelElementCollectionT_Value(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "value",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementCollectionT_Ordered(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "ordered",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementCollectionT_AllowDuplicates(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "allowDuplicates",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (submodelElementsTEClass,
+		   source,
+		   new String[] {
+			   "name", "submodelElements_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getSubmodelElementsT_SubmodelElement(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "submodelElement",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (submodelElementTEClass,
+		   source,
+		   new String[] {
+			   "name", "submodelElement_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getSubmodelElementT_Property(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "property",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementT_File(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "file",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementT_Blob(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "blob",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementT_ReferenceElement(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "referenceElement",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementT_SubmodelElementCollection(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "submodelElementCollection",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementT_RelationshipElement(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "relationshipElement",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementT_Operation(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "operation",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementT_OperationVariable(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "operationVariable",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelElementT_Event(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "event",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (submodelRefsTEClass,
+		   source,
+		   new String[] {
+			   "name", "submodelRefs_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getSubmodelRefsT_SubmodelRef(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "submodelRef",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (submodelsTEClass,
+		   source,
+		   new String[] {
+			   "name", "submodels_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getSubmodelsT_Submodel(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "submodel",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (submodelTEClass,
+		   source,
+		   new String[] {
+			   "name", "submodel_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getSubmodelT_IdShort(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "idShort",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_Category(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "category",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_Description(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "description",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_Parent(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "parent",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_Identification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "identification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_Administration(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "administration",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_EmbeddedDataSpecification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "embeddedDataSpecification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_SemanticId(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "semanticId",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_Kind(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "kind",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_Qualifier(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "qualifier",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getSubmodelT_SubmodelElements(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "submodelElements",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (typeTypeEEnum,
+		   source,
+		   new String[] {
+			   "name", "type_._type"
+		   });
+		addAnnotation
+		  (typeTypeObjectEDataType,
+		   source,
+		   new String[] {
+			   "name", "type_._type:Object",
+			   "baseType", "type_._type"
+		   });
+		addAnnotation
+		  (viewsTEClass,
+		   source,
+		   new String[] {
+			   "name", "views_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getViewsT_View(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "view",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (viewTEClass,
+		   source,
+		   new String[] {
+			   "name", "view_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getViewT_IdShort(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "idShort",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getViewT_Category(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "category",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getViewT_Description(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "description",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getViewT_Parent(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "parent",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getViewT_SemanticId(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "semanticId",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getViewT_EmbeddedDataSpecification(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "embeddedDataSpecification",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getViewT_ContainedElements(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "containedElements",
+			   "namespace", "##targetNamespace"
+		   });
+	}
+
+} //_0PackageImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0AdapterFactory.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0AdapterFactory.java
new file mode 100644
index 0000000..41add12
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0AdapterFactory.java
@@ -0,0 +1,1017 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.util;
+
+import io.shell.admin.aas._1._0.*;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0._0Package
+ * @generated
+ */
+public class _0AdapterFactory extends AdapterFactoryImpl {
+	/**
+	 * The cached model package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected static _0Package modelPackage;
+
+	/**
+	 * Creates an instance of the adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0AdapterFactory() {
+		if (modelPackage == null) {
+			modelPackage = _0Package.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Returns whether this factory is applicable for the type of the object.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+	 * <!-- end-user-doc -->
+	 * @return whether this factory is applicable for the type of the object.
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object object) {
+		if (object == modelPackage) {
+			return true;
+		}
+		if (object instanceof EObject) {
+			return ((EObject)object).eClass().getEPackage() == modelPackage;
+		}
+		return false;
+	}
+
+	/**
+	 * The switch that delegates to the <code>createXXX</code> methods.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected _0Switch<Adapter> modelSwitch =
+		new _0Switch<Adapter>() {
+			@Override
+			public Adapter caseAasenvT(AasenvT object) {
+				return createAasenvTAdapter();
+			}
+			@Override
+			public Adapter caseAdministrationT(AdministrationT object) {
+				return createAdministrationTAdapter();
+			}
+			@Override
+			public Adapter caseAssetAdministrationShellsT(AssetAdministrationShellsT object) {
+				return createAssetAdministrationShellsTAdapter();
+			}
+			@Override
+			public Adapter caseAssetAdministrationShellT(AssetAdministrationShellT object) {
+				return createAssetAdministrationShellTAdapter();
+			}
+			@Override
+			public Adapter caseAssetsT(AssetsT object) {
+				return createAssetsTAdapter();
+			}
+			@Override
+			public Adapter caseAssetT(AssetT object) {
+				return createAssetTAdapter();
+			}
+			@Override
+			public Adapter caseBlobT(BlobT object) {
+				return createBlobTAdapter();
+			}
+			@Override
+			public Adapter caseBlobTypeT(BlobTypeT object) {
+				return createBlobTypeTAdapter();
+			}
+			@Override
+			public Adapter caseConceptDescriptionsRefT(ConceptDescriptionsRefT object) {
+				return createConceptDescriptionsRefTAdapter();
+			}
+			@Override
+			public Adapter caseConceptDescriptionsT(ConceptDescriptionsT object) {
+				return createConceptDescriptionsTAdapter();
+			}
+			@Override
+			public Adapter caseConceptDescriptionT(ConceptDescriptionT object) {
+				return createConceptDescriptionTAdapter();
+			}
+			@Override
+			public Adapter caseConceptDictionariesT(ConceptDictionariesT object) {
+				return createConceptDictionariesTAdapter();
+			}
+			@Override
+			public Adapter caseConceptDictionaryT(ConceptDictionaryT object) {
+				return createConceptDictionaryTAdapter();
+			}
+			@Override
+			public Adapter caseConstraintT(ConstraintT object) {
+				return createConstraintTAdapter();
+			}
+			@Override
+			public Adapter caseContainedElementsT(ContainedElementsT object) {
+				return createContainedElementsTAdapter();
+			}
+			@Override
+			public Adapter caseDataSpecificationContentT(DataSpecificationContentT object) {
+				return createDataSpecificationContentTAdapter();
+			}
+			@Override
+			public Adapter caseDocumentRoot(DocumentRoot object) {
+				return createDocumentRootAdapter();
+			}
+			@Override
+			public Adapter caseEmbeddedDataSpecificationT(EmbeddedDataSpecificationT object) {
+				return createEmbeddedDataSpecificationTAdapter();
+			}
+			@Override
+			public Adapter caseEventT(EventT object) {
+				return createEventTAdapter();
+			}
+			@Override
+			public Adapter caseFileT(FileT object) {
+				return createFileTAdapter();
+			}
+			@Override
+			public Adapter caseFormulaT(FormulaT object) {
+				return createFormulaTAdapter();
+			}
+			@Override
+			public Adapter caseIdentificationT(IdentificationT object) {
+				return createIdentificationTAdapter();
+			}
+			@Override
+			public Adapter caseIdPropertyDefinitionT(IdPropertyDefinitionT object) {
+				return createIdPropertyDefinitionTAdapter();
+			}
+			@Override
+			public Adapter caseIdShortT(IdShortT object) {
+				return createIdShortTAdapter();
+			}
+			@Override
+			public Adapter caseKeysT(KeysT object) {
+				return createKeysTAdapter();
+			}
+			@Override
+			public Adapter caseKeyT(KeyT object) {
+				return createKeyTAdapter();
+			}
+			@Override
+			public Adapter caseLangStringsT(LangStringsT object) {
+				return createLangStringsTAdapter();
+			}
+			@Override
+			public Adapter caseLangStringT(LangStringT object) {
+				return createLangStringTAdapter();
+			}
+			@Override
+			public Adapter caseOperationT(OperationT object) {
+				return createOperationTAdapter();
+			}
+			@Override
+			public Adapter caseOperationVariableT(OperationVariableT object) {
+				return createOperationVariableTAdapter();
+			}
+			@Override
+			public Adapter casePathTypeT(PathTypeT object) {
+				return createPathTypeTAdapter();
+			}
+			@Override
+			public Adapter casePropertyT(PropertyT object) {
+				return createPropertyTAdapter();
+			}
+			@Override
+			public Adapter casePropertyValueTypeT(PropertyValueTypeT object) {
+				return createPropertyValueTypeTAdapter();
+			}
+			@Override
+			public Adapter casePrvalueTypeT(PrvalueTypeT object) {
+				return createPrvalueTypeTAdapter();
+			}
+			@Override
+			public Adapter caseQualifiersT(QualifiersT object) {
+				return createQualifiersTAdapter();
+			}
+			@Override
+			public Adapter caseQualifierT(QualifierT object) {
+				return createQualifierTAdapter();
+			}
+			@Override
+			public Adapter caseReferenceElementT(ReferenceElementT object) {
+				return createReferenceElementTAdapter();
+			}
+			@Override
+			public Adapter caseReferencesT(ReferencesT object) {
+				return createReferencesTAdapter();
+			}
+			@Override
+			public Adapter caseReferenceT(ReferenceT object) {
+				return createReferenceTAdapter();
+			}
+			@Override
+			public Adapter caseRelationshipElementT(RelationshipElementT object) {
+				return createRelationshipElementTAdapter();
+			}
+			@Override
+			public Adapter caseSemanticIdT(SemanticIdT object) {
+				return createSemanticIdTAdapter();
+			}
+			@Override
+			public Adapter caseSubmodelElementAbstractT(SubmodelElementAbstractT object) {
+				return createSubmodelElementAbstractTAdapter();
+			}
+			@Override
+			public Adapter caseSubmodelElementCollectionT(SubmodelElementCollectionT object) {
+				return createSubmodelElementCollectionTAdapter();
+			}
+			@Override
+			public Adapter caseSubmodelElementsT(SubmodelElementsT object) {
+				return createSubmodelElementsTAdapter();
+			}
+			@Override
+			public Adapter caseSubmodelElementT(SubmodelElementT object) {
+				return createSubmodelElementTAdapter();
+			}
+			@Override
+			public Adapter caseSubmodelRefsT(SubmodelRefsT object) {
+				return createSubmodelRefsTAdapter();
+			}
+			@Override
+			public Adapter caseSubmodelsT(SubmodelsT object) {
+				return createSubmodelsTAdapter();
+			}
+			@Override
+			public Adapter caseSubmodelT(SubmodelT object) {
+				return createSubmodelTAdapter();
+			}
+			@Override
+			public Adapter caseViewsT(ViewsT object) {
+				return createViewsTAdapter();
+			}
+			@Override
+			public Adapter caseViewT(ViewT object) {
+				return createViewTAdapter();
+			}
+			@Override
+			public Adapter defaultCase(EObject object) {
+				return createEObjectAdapter();
+			}
+		};
+
+	/**
+	 * Creates an adapter for the <code>target</code>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param target the object to adapt.
+	 * @return the adapter for the <code>target</code>.
+	 * @generated
+	 */
+	@Override
+	public Adapter createAdapter(Notifier target) {
+		return modelSwitch.doSwitch((EObject)target);
+	}
+
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.AasenvT <em>Aasenv T</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 io.shell.admin.aas._1._0.AasenvT
+	 * @generated
+	 */
+	public Adapter createAasenvTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.AdministrationT <em>Administration T</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 io.shell.admin.aas._1._0.AdministrationT
+	 * @generated
+	 */
+	public Adapter createAdministrationTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.AssetAdministrationShellsT <em>Asset Administration Shells T</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 io.shell.admin.aas._1._0.AssetAdministrationShellsT
+	 * @generated
+	 */
+	public Adapter createAssetAdministrationShellsTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.AssetAdministrationShellT <em>Asset Administration Shell T</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 io.shell.admin.aas._1._0.AssetAdministrationShellT
+	 * @generated
+	 */
+	public Adapter createAssetAdministrationShellTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.AssetsT <em>Assets T</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 io.shell.admin.aas._1._0.AssetsT
+	 * @generated
+	 */
+	public Adapter createAssetsTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.AssetT <em>Asset T</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 io.shell.admin.aas._1._0.AssetT
+	 * @generated
+	 */
+	public Adapter createAssetTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.BlobT <em>Blob T</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 io.shell.admin.aas._1._0.BlobT
+	 * @generated
+	 */
+	public Adapter createBlobTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.BlobTypeT <em>Blob Type T</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 io.shell.admin.aas._1._0.BlobTypeT
+	 * @generated
+	 */
+	public Adapter createBlobTypeTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ConceptDescriptionsRefT <em>Concept Descriptions Ref T</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 io.shell.admin.aas._1._0.ConceptDescriptionsRefT
+	 * @generated
+	 */
+	public Adapter createConceptDescriptionsRefTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ConceptDescriptionsT <em>Concept Descriptions T</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 io.shell.admin.aas._1._0.ConceptDescriptionsT
+	 * @generated
+	 */
+	public Adapter createConceptDescriptionsTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ConceptDescriptionT <em>Concept Description T</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 io.shell.admin.aas._1._0.ConceptDescriptionT
+	 * @generated
+	 */
+	public Adapter createConceptDescriptionTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ConceptDictionariesT <em>Concept Dictionaries T</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 io.shell.admin.aas._1._0.ConceptDictionariesT
+	 * @generated
+	 */
+	public Adapter createConceptDictionariesTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ConceptDictionaryT <em>Concept Dictionary T</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 io.shell.admin.aas._1._0.ConceptDictionaryT
+	 * @generated
+	 */
+	public Adapter createConceptDictionaryTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ConstraintT <em>Constraint T</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 io.shell.admin.aas._1._0.ConstraintT
+	 * @generated
+	 */
+	public Adapter createConstraintTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ContainedElementsT <em>Contained Elements T</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 io.shell.admin.aas._1._0.ContainedElementsT
+	 * @generated
+	 */
+	public Adapter createContainedElementsTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.DataSpecificationContentT <em>Data Specification Content T</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 io.shell.admin.aas._1._0.DataSpecificationContentT
+	 * @generated
+	 */
+	public Adapter createDataSpecificationContentTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.DocumentRoot <em>Document Root</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 io.shell.admin.aas._1._0.DocumentRoot
+	 * @generated
+	 */
+	public Adapter createDocumentRootAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.EmbeddedDataSpecificationT <em>Embedded Data Specification T</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 io.shell.admin.aas._1._0.EmbeddedDataSpecificationT
+	 * @generated
+	 */
+	public Adapter createEmbeddedDataSpecificationTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.EventT <em>Event T</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 io.shell.admin.aas._1._0.EventT
+	 * @generated
+	 */
+	public Adapter createEventTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.FileT <em>File T</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 io.shell.admin.aas._1._0.FileT
+	 * @generated
+	 */
+	public Adapter createFileTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.FormulaT <em>Formula T</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 io.shell.admin.aas._1._0.FormulaT
+	 * @generated
+	 */
+	public Adapter createFormulaTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.IdentificationT <em>Identification T</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 io.shell.admin.aas._1._0.IdentificationT
+	 * @generated
+	 */
+	public Adapter createIdentificationTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.IdPropertyDefinitionT <em>Id Property Definition T</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 io.shell.admin.aas._1._0.IdPropertyDefinitionT
+	 * @generated
+	 */
+	public Adapter createIdPropertyDefinitionTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.IdShortT <em>Id Short T</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 io.shell.admin.aas._1._0.IdShortT
+	 * @generated
+	 */
+	public Adapter createIdShortTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.KeysT <em>Keys T</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 io.shell.admin.aas._1._0.KeysT
+	 * @generated
+	 */
+	public Adapter createKeysTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.KeyT <em>Key T</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 io.shell.admin.aas._1._0.KeyT
+	 * @generated
+	 */
+	public Adapter createKeyTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.LangStringsT <em>Lang Strings T</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 io.shell.admin.aas._1._0.LangStringsT
+	 * @generated
+	 */
+	public Adapter createLangStringsTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.LangStringT <em>Lang String T</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 io.shell.admin.aas._1._0.LangStringT
+	 * @generated
+	 */
+	public Adapter createLangStringTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.OperationT <em>Operation T</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 io.shell.admin.aas._1._0.OperationT
+	 * @generated
+	 */
+	public Adapter createOperationTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.OperationVariableT <em>Operation Variable T</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 io.shell.admin.aas._1._0.OperationVariableT
+	 * @generated
+	 */
+	public Adapter createOperationVariableTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.PathTypeT <em>Path Type T</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 io.shell.admin.aas._1._0.PathTypeT
+	 * @generated
+	 */
+	public Adapter createPathTypeTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.PropertyT <em>Property T</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 io.shell.admin.aas._1._0.PropertyT
+	 * @generated
+	 */
+	public Adapter createPropertyTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.PropertyValueTypeT <em>Property Value Type T</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 io.shell.admin.aas._1._0.PropertyValueTypeT
+	 * @generated
+	 */
+	public Adapter createPropertyValueTypeTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.PrvalueTypeT <em>Prvalue Type T</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 io.shell.admin.aas._1._0.PrvalueTypeT
+	 * @generated
+	 */
+	public Adapter createPrvalueTypeTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.QualifiersT <em>Qualifiers T</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 io.shell.admin.aas._1._0.QualifiersT
+	 * @generated
+	 */
+	public Adapter createQualifiersTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.QualifierT <em>Qualifier T</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 io.shell.admin.aas._1._0.QualifierT
+	 * @generated
+	 */
+	public Adapter createQualifierTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ReferenceElementT <em>Reference Element T</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 io.shell.admin.aas._1._0.ReferenceElementT
+	 * @generated
+	 */
+	public Adapter createReferenceElementTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ReferencesT <em>References T</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 io.shell.admin.aas._1._0.ReferencesT
+	 * @generated
+	 */
+	public Adapter createReferencesTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ReferenceT <em>Reference T</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 io.shell.admin.aas._1._0.ReferenceT
+	 * @generated
+	 */
+	public Adapter createReferenceTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.RelationshipElementT <em>Relationship Element T</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 io.shell.admin.aas._1._0.RelationshipElementT
+	 * @generated
+	 */
+	public Adapter createRelationshipElementTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.SemanticIdT <em>Semantic Id T</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 io.shell.admin.aas._1._0.SemanticIdT
+	 * @generated
+	 */
+	public Adapter createSemanticIdTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.SubmodelElementAbstractT <em>Submodel Element Abstract T</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 io.shell.admin.aas._1._0.SubmodelElementAbstractT
+	 * @generated
+	 */
+	public Adapter createSubmodelElementAbstractTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.SubmodelElementCollectionT <em>Submodel Element Collection T</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 io.shell.admin.aas._1._0.SubmodelElementCollectionT
+	 * @generated
+	 */
+	public Adapter createSubmodelElementCollectionTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.SubmodelElementsT <em>Submodel Elements T</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 io.shell.admin.aas._1._0.SubmodelElementsT
+	 * @generated
+	 */
+	public Adapter createSubmodelElementsTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.SubmodelElementT <em>Submodel Element T</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 io.shell.admin.aas._1._0.SubmodelElementT
+	 * @generated
+	 */
+	public Adapter createSubmodelElementTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.SubmodelRefsT <em>Submodel Refs T</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 io.shell.admin.aas._1._0.SubmodelRefsT
+	 * @generated
+	 */
+	public Adapter createSubmodelRefsTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.SubmodelsT <em>Submodels T</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 io.shell.admin.aas._1._0.SubmodelsT
+	 * @generated
+	 */
+	public Adapter createSubmodelsTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.SubmodelT <em>Submodel T</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 io.shell.admin.aas._1._0.SubmodelT
+	 * @generated
+	 */
+	public Adapter createSubmodelTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ViewsT <em>Views T</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 io.shell.admin.aas._1._0.ViewsT
+	 * @generated
+	 */
+	public Adapter createViewsTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.aas._1._0.ViewT <em>View T</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 io.shell.admin.aas._1._0.ViewT
+	 * @generated
+	 */
+	public Adapter createViewTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for the default case.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @generated
+	 */
+	public Adapter createEObjectAdapter() {
+		return null;
+	}
+
+} //_0AdapterFactory
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0ResourceFactoryImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0ResourceFactoryImpl.java
new file mode 100644
index 0000000..b65cf62
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0ResourceFactoryImpl.java
@@ -0,0 +1,67 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
+
+import org.eclipse.emf.ecore.xmi.XMLResource;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource Factory</b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0.util._0ResourceImpl
+ * @generated
+ */
+public class _0ResourceFactoryImpl extends ResourceFactoryImpl {
+	/**
+	 * Creates an instance of the resource factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0ResourceFactoryImpl() {
+		super();
+	}
+
+	/**
+	 * Creates an instance of the resource.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Resource createResource(URI uri) {
+		XMLResource result = new _0ResourceImpl(uri);
+		result.getDefaultSaveOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+		result.getDefaultLoadOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+
+		result.getDefaultSaveOptions().put(XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE);
+
+		result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+		result.getDefaultSaveOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+
+		result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_LEXICAL_HANDLER, Boolean.TRUE);
+		return result;
+	}
+
+} //_0ResourceFactoryImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0ResourceImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0ResourceImpl.java
new file mode 100644
index 0000000..5e71f92
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0ResourceImpl.java
@@ -0,0 +1,43 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource </b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0.util._0ResourceFactoryImpl
+ * @generated
+ */
+public class _0ResourceImpl extends XMLResourceImpl {
+	/**
+	 * Creates an instance of the resource.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param uri the URI of the new resource.
+	 * @generated
+	 */
+	public _0ResourceImpl(URI uri) {
+		super(uri);
+	}
+
+} //_0ResourceImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0Switch.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0Switch.java
new file mode 100644
index 0000000..07e7565
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0Switch.java
@@ -0,0 +1,1164 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.util;
+
+import io.shell.admin.aas._1._0.*;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.aas._1._0._0Package
+ * @generated
+ */
+public class _0Switch<T> extends Switch<T> {
+	/**
+	 * The cached model package
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected static _0Package modelPackage;
+
+	/**
+	 * Creates an instance of the switch.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0Switch() {
+		if (modelPackage == null) {
+			modelPackage = _0Package.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Checks whether this is a switch for the given package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param ePackage the package in question.
+	 * @return whether this is a switch for the given package.
+	 * @generated
+	 */
+	@Override
+	protected boolean isSwitchFor(EPackage ePackage) {
+		return ePackage == modelPackage;
+	}
+
+	/**
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
+	@Override
+	protected T doSwitch(int classifierID, EObject theEObject) {
+		switch (classifierID) {
+			case _0Package.AASENV_T: {
+				AasenvT aasenvT = (AasenvT)theEObject;
+				T result = caseAasenvT(aasenvT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.ADMINISTRATION_T: {
+				AdministrationT administrationT = (AdministrationT)theEObject;
+				T result = caseAdministrationT(administrationT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.ASSET_ADMINISTRATION_SHELLS_T: {
+				AssetAdministrationShellsT assetAdministrationShellsT = (AssetAdministrationShellsT)theEObject;
+				T result = caseAssetAdministrationShellsT(assetAdministrationShellsT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.ASSET_ADMINISTRATION_SHELL_T: {
+				AssetAdministrationShellT assetAdministrationShellT = (AssetAdministrationShellT)theEObject;
+				T result = caseAssetAdministrationShellT(assetAdministrationShellT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.ASSETS_T: {
+				AssetsT assetsT = (AssetsT)theEObject;
+				T result = caseAssetsT(assetsT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.ASSET_T: {
+				AssetT assetT = (AssetT)theEObject;
+				T result = caseAssetT(assetT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.BLOB_T: {
+				BlobT blobT = (BlobT)theEObject;
+				T result = caseBlobT(blobT);
+				if (result == null) result = caseSubmodelElementAbstractT(blobT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.BLOB_TYPE_T: {
+				BlobTypeT blobTypeT = (BlobTypeT)theEObject;
+				T result = caseBlobTypeT(blobTypeT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.CONCEPT_DESCRIPTIONS_REF_T: {
+				ConceptDescriptionsRefT conceptDescriptionsRefT = (ConceptDescriptionsRefT)theEObject;
+				T result = caseConceptDescriptionsRefT(conceptDescriptionsRefT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.CONCEPT_DESCRIPTIONS_T: {
+				ConceptDescriptionsT conceptDescriptionsT = (ConceptDescriptionsT)theEObject;
+				T result = caseConceptDescriptionsT(conceptDescriptionsT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.CONCEPT_DESCRIPTION_T: {
+				ConceptDescriptionT conceptDescriptionT = (ConceptDescriptionT)theEObject;
+				T result = caseConceptDescriptionT(conceptDescriptionT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.CONCEPT_DICTIONARIES_T: {
+				ConceptDictionariesT conceptDictionariesT = (ConceptDictionariesT)theEObject;
+				T result = caseConceptDictionariesT(conceptDictionariesT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.CONCEPT_DICTIONARY_T: {
+				ConceptDictionaryT conceptDictionaryT = (ConceptDictionaryT)theEObject;
+				T result = caseConceptDictionaryT(conceptDictionaryT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.CONSTRAINT_T: {
+				ConstraintT constraintT = (ConstraintT)theEObject;
+				T result = caseConstraintT(constraintT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.CONTAINED_ELEMENTS_T: {
+				ContainedElementsT containedElementsT = (ContainedElementsT)theEObject;
+				T result = caseContainedElementsT(containedElementsT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.DATA_SPECIFICATION_CONTENT_T: {
+				DataSpecificationContentT dataSpecificationContentT = (DataSpecificationContentT)theEObject;
+				T result = caseDataSpecificationContentT(dataSpecificationContentT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.DOCUMENT_ROOT: {
+				DocumentRoot documentRoot = (DocumentRoot)theEObject;
+				T result = caseDocumentRoot(documentRoot);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.EMBEDDED_DATA_SPECIFICATION_T: {
+				EmbeddedDataSpecificationT embeddedDataSpecificationT = (EmbeddedDataSpecificationT)theEObject;
+				T result = caseEmbeddedDataSpecificationT(embeddedDataSpecificationT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.EVENT_T: {
+				EventT eventT = (EventT)theEObject;
+				T result = caseEventT(eventT);
+				if (result == null) result = caseSubmodelElementAbstractT(eventT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.FILE_T: {
+				FileT fileT = (FileT)theEObject;
+				T result = caseFileT(fileT);
+				if (result == null) result = caseSubmodelElementAbstractT(fileT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.FORMULA_T: {
+				FormulaT formulaT = (FormulaT)theEObject;
+				T result = caseFormulaT(formulaT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.IDENTIFICATION_T: {
+				IdentificationT identificationT = (IdentificationT)theEObject;
+				T result = caseIdentificationT(identificationT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.ID_PROPERTY_DEFINITION_T: {
+				IdPropertyDefinitionT idPropertyDefinitionT = (IdPropertyDefinitionT)theEObject;
+				T result = caseIdPropertyDefinitionT(idPropertyDefinitionT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.ID_SHORT_T: {
+				IdShortT idShortT = (IdShortT)theEObject;
+				T result = caseIdShortT(idShortT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.KEYS_T: {
+				KeysT keysT = (KeysT)theEObject;
+				T result = caseKeysT(keysT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.KEY_T: {
+				KeyT keyT = (KeyT)theEObject;
+				T result = caseKeyT(keyT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.LANG_STRINGS_T: {
+				LangStringsT langStringsT = (LangStringsT)theEObject;
+				T result = caseLangStringsT(langStringsT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.LANG_STRING_T: {
+				LangStringT langStringT = (LangStringT)theEObject;
+				T result = caseLangStringT(langStringT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.OPERATION_T: {
+				OperationT operationT = (OperationT)theEObject;
+				T result = caseOperationT(operationT);
+				if (result == null) result = caseSubmodelElementAbstractT(operationT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.OPERATION_VARIABLE_T: {
+				OperationVariableT operationVariableT = (OperationVariableT)theEObject;
+				T result = caseOperationVariableT(operationVariableT);
+				if (result == null) result = caseSubmodelElementAbstractT(operationVariableT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.PATH_TYPE_T: {
+				PathTypeT pathTypeT = (PathTypeT)theEObject;
+				T result = casePathTypeT(pathTypeT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.PROPERTY_T: {
+				PropertyT propertyT = (PropertyT)theEObject;
+				T result = casePropertyT(propertyT);
+				if (result == null) result = caseSubmodelElementAbstractT(propertyT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.PROPERTY_VALUE_TYPE_T: {
+				PropertyValueTypeT propertyValueTypeT = (PropertyValueTypeT)theEObject;
+				T result = casePropertyValueTypeT(propertyValueTypeT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.PRVALUE_TYPE_T: {
+				PrvalueTypeT prvalueTypeT = (PrvalueTypeT)theEObject;
+				T result = casePrvalueTypeT(prvalueTypeT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.QUALIFIERS_T: {
+				QualifiersT qualifiersT = (QualifiersT)theEObject;
+				T result = caseQualifiersT(qualifiersT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.QUALIFIER_T: {
+				QualifierT qualifierT = (QualifierT)theEObject;
+				T result = caseQualifierT(qualifierT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.REFERENCE_ELEMENT_T: {
+				ReferenceElementT referenceElementT = (ReferenceElementT)theEObject;
+				T result = caseReferenceElementT(referenceElementT);
+				if (result == null) result = caseSubmodelElementAbstractT(referenceElementT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.REFERENCES_T: {
+				ReferencesT referencesT = (ReferencesT)theEObject;
+				T result = caseReferencesT(referencesT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.REFERENCE_T: {
+				ReferenceT referenceT = (ReferenceT)theEObject;
+				T result = caseReferenceT(referenceT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.RELATIONSHIP_ELEMENT_T: {
+				RelationshipElementT relationshipElementT = (RelationshipElementT)theEObject;
+				T result = caseRelationshipElementT(relationshipElementT);
+				if (result == null) result = caseSubmodelElementAbstractT(relationshipElementT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.SEMANTIC_ID_T: {
+				SemanticIdT semanticIdT = (SemanticIdT)theEObject;
+				T result = caseSemanticIdT(semanticIdT);
+				if (result == null) result = caseReferenceT(semanticIdT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.SUBMODEL_ELEMENT_ABSTRACT_T: {
+				SubmodelElementAbstractT submodelElementAbstractT = (SubmodelElementAbstractT)theEObject;
+				T result = caseSubmodelElementAbstractT(submodelElementAbstractT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.SUBMODEL_ELEMENT_COLLECTION_T: {
+				SubmodelElementCollectionT submodelElementCollectionT = (SubmodelElementCollectionT)theEObject;
+				T result = caseSubmodelElementCollectionT(submodelElementCollectionT);
+				if (result == null) result = caseSubmodelElementAbstractT(submodelElementCollectionT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.SUBMODEL_ELEMENTS_T: {
+				SubmodelElementsT submodelElementsT = (SubmodelElementsT)theEObject;
+				T result = caseSubmodelElementsT(submodelElementsT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.SUBMODEL_ELEMENT_T: {
+				SubmodelElementT submodelElementT = (SubmodelElementT)theEObject;
+				T result = caseSubmodelElementT(submodelElementT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.SUBMODEL_REFS_T: {
+				SubmodelRefsT submodelRefsT = (SubmodelRefsT)theEObject;
+				T result = caseSubmodelRefsT(submodelRefsT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.SUBMODELS_T: {
+				SubmodelsT submodelsT = (SubmodelsT)theEObject;
+				T result = caseSubmodelsT(submodelsT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.SUBMODEL_T: {
+				SubmodelT submodelT = (SubmodelT)theEObject;
+				T result = caseSubmodelT(submodelT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.VIEWS_T: {
+				ViewsT viewsT = (ViewsT)theEObject;
+				T result = caseViewsT(viewsT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.VIEW_T: {
+				ViewT viewT = (ViewT)theEObject;
+				T result = caseViewT(viewT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			default: return defaultCase(theEObject);
+		}
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Aasenv T</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>Aasenv T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAasenvT(AasenvT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Administration T</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>Administration T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAdministrationT(AdministrationT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Asset Administration Shells T</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>Asset Administration Shells T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAssetAdministrationShellsT(AssetAdministrationShellsT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Asset Administration Shell T</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>Asset Administration Shell T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAssetAdministrationShellT(AssetAdministrationShellT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Assets T</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>Assets T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAssetsT(AssetsT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Asset T</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>Asset T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAssetT(AssetT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Blob T</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>Blob T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseBlobT(BlobT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Blob Type T</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>Blob Type T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseBlobTypeT(BlobTypeT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Concept Descriptions Ref T</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>Concept Descriptions Ref T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseConceptDescriptionsRefT(ConceptDescriptionsRefT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Concept Descriptions T</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>Concept Descriptions T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseConceptDescriptionsT(ConceptDescriptionsT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Concept Description T</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>Concept Description T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseConceptDescriptionT(ConceptDescriptionT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Concept Dictionaries T</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>Concept Dictionaries T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseConceptDictionariesT(ConceptDictionariesT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Concept Dictionary T</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>Concept Dictionary T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseConceptDictionaryT(ConceptDictionaryT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Constraint T</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>Constraint T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseConstraintT(ConstraintT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Contained Elements T</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>Contained Elements T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseContainedElementsT(ContainedElementsT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Data Specification Content T</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>Data Specification Content T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDataSpecificationContentT(DataSpecificationContentT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Document Root</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>Document Root</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDocumentRoot(DocumentRoot object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Embedded Data Specification T</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>Embedded Data Specification T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEmbeddedDataSpecificationT(EmbeddedDataSpecificationT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Event T</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>Event T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEventT(EventT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>File T</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>File T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseFileT(FileT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Formula T</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>Formula T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseFormulaT(FormulaT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Identification T</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>Identification T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIdentificationT(IdentificationT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Id Property Definition T</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>Id Property Definition T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIdPropertyDefinitionT(IdPropertyDefinitionT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Id Short T</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>Id Short T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIdShortT(IdShortT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Keys T</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>Keys T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseKeysT(KeysT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Key T</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>Key T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseKeyT(KeyT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Lang Strings T</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>Lang Strings T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseLangStringsT(LangStringsT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Lang String T</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>Lang String T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseLangStringT(LangStringT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Operation T</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>Operation T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseOperationT(OperationT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Operation Variable T</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>Operation Variable T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseOperationVariableT(OperationVariableT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Path Type T</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>Path Type T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T casePathTypeT(PathTypeT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Property T</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 T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T casePropertyT(PropertyT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Property Value Type T</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 Value Type T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T casePropertyValueTypeT(PropertyValueTypeT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Prvalue Type T</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>Prvalue Type T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T casePrvalueTypeT(PrvalueTypeT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Qualifiers T</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>Qualifiers T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseQualifiersT(QualifiersT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Qualifier T</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>Qualifier T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseQualifierT(QualifierT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Reference Element T</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>Reference Element T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseReferenceElementT(ReferenceElementT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>References T</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>References T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseReferencesT(ReferencesT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Reference T</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>Reference T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseReferenceT(ReferenceT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Relationship Element T</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>Relationship Element T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseRelationshipElementT(RelationshipElementT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Semantic Id T</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>Semantic Id T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSemanticIdT(SemanticIdT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodel Element Abstract T</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>Submodel Element Abstract T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodelElementAbstractT(SubmodelElementAbstractT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodel Element Collection T</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>Submodel Element Collection T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodelElementCollectionT(SubmodelElementCollectionT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodel Elements T</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>Submodel Elements T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodelElementsT(SubmodelElementsT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodel Element T</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>Submodel Element T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodelElementT(SubmodelElementT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodel Refs T</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>Submodel Refs T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodelRefsT(SubmodelRefsT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodels T</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>Submodels T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodelsT(SubmodelsT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodel T</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>Submodel T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodelT(SubmodelT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Views T</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>Views T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseViewsT(ViewsT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>View T</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>View T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseViewT(ViewT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch, but this is the last case anyway.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+	 * @generated
+	 */
+	@Override
+	public T defaultCase(EObject object) {
+		return null;
+	}
+
+} //_0Switch
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0XMLProcessor.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0XMLProcessor.java
new file mode 100644
index 0000000..fab4db4
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/aas/_1/_0/util/_0XMLProcessor.java
@@ -0,0 +1,65 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.aas._1._0.util;
+
+import io.shell.admin.aas._1._0._0Package;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.xmi.util.XMLProcessor;
+
+/**
+ * This class contains helper methods to serialize and deserialize XML documents
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class _0XMLProcessor extends XMLProcessor {
+
+	/**
+	 * Public constructor to instantiate the helper.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0XMLProcessor() {
+		super((EPackage.Registry.INSTANCE));
+		_0Package.eINSTANCE.eClass();
+	}
+	
+	/**
+	 * Register for "*" and "xml" file extensions the _0ResourceFactoryImpl factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected Map<String, Resource.Factory> getRegistrations() {
+		if (registrations == null) {
+			super.getRegistrations();
+			registrations.put(XML_EXTENSION, new _0ResourceFactoryImpl());
+			registrations.put(STAR_EXTENSION, new _0ResourceFactoryImpl());
+		}
+		return registrations;
+	}
+
+} //_0XMLProcessor
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/CodeT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/CodeT.java
new file mode 100644
index 0000000..991c830
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/CodeT.java
@@ -0,0 +1,33 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Code T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see io.shell.admin.iec61360._1._0._0Package#getCodeT()
+ * @model extendedMetaData="name='code_t' kind='empty'"
+ * @generated
+ */
+public interface CodeT extends EObject {
+} // CodeT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/DataSpecificationIEC61630T.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/DataSpecificationIEC61630T.java
new file mode 100644
index 0000000..a47ac33
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/DataSpecificationIEC61630T.java
@@ -0,0 +1,305 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0;
+
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.ReferenceT;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Data Specification IEC61630T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getPreferredName <em>Preferred Name</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getShortName <em>Short Name</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getUnit <em>Unit</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getUnitId <em>Unit Id</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getValueFormat <em>Value Format</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getSourceOfDefinition <em>Source Of Definition</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getSymbol <em>Symbol</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getDataType <em>Data Type</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getDefinition <em>Definition</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getValueList <em>Value List</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getCode <em>Code</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T()
+ * @model extendedMetaData="name='dataSpecificationIEC61630_t' kind='elementOnly'"
+ * @generated
+ */
+public interface DataSpecificationIEC61630T extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Preferred Name</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Preferred Name</em>' containment reference.
+	 * @see #setPreferredName(LangStringsT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_PreferredName()
+	 * @model containment="true" required="true"
+	 *        extendedMetaData="kind='element' name='preferredName' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getPreferredName();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getPreferredName <em>Preferred Name</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Preferred Name</em>' containment reference.
+	 * @see #getPreferredName()
+	 * @generated
+	 */
+	void setPreferredName(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Short Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Short Name</em>' attribute.
+	 * @see #setShortName(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_ShortName()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='shortName' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getShortName();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getShortName <em>Short Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Short Name</em>' attribute.
+	 * @see #getShortName()
+	 * @generated
+	 */
+	void setShortName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Unit</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Unit</em>' attribute.
+	 * @see #setUnit(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_Unit()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='unit' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getUnit();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getUnit <em>Unit</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Unit</em>' attribute.
+	 * @see #getUnit()
+	 * @generated
+	 */
+	void setUnit(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Unit Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Unit Id</em>' containment reference.
+	 * @see #setUnitId(ReferenceT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_UnitId()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='unitId' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getUnitId();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getUnitId <em>Unit Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Unit Id</em>' containment reference.
+	 * @see #getUnitId()
+	 * @generated
+	 */
+	void setUnitId(ReferenceT value);
+
+	/**
+	 * Returns the value of the '<em><b>Value Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value Format</em>' attribute.
+	 * @see #setValueFormat(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_ValueFormat()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='valueFormat' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getValueFormat();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getValueFormat <em>Value Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value Format</em>' attribute.
+	 * @see #getValueFormat()
+	 * @generated
+	 */
+	void setValueFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Source Of Definition</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Source Of Definition</em>' containment reference.
+	 * @see #setSourceOfDefinition(LangStringsT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_SourceOfDefinition()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='sourceOfDefinition' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getSourceOfDefinition();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getSourceOfDefinition <em>Source Of Definition</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Source Of Definition</em>' containment reference.
+	 * @see #getSourceOfDefinition()
+	 * @generated
+	 */
+	void setSourceOfDefinition(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Symbol</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Symbol</em>' attribute.
+	 * @see #setSymbol(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_Symbol()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='symbol' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getSymbol();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getSymbol <em>Symbol</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Symbol</em>' attribute.
+	 * @see #getSymbol()
+	 * @generated
+	 */
+	void setSymbol(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Data Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Data Type</em>' attribute.
+	 * @see #setDataType(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_DataType()
+	 * @model dataType="org.eclipse.emf.ecore.xml.type.String"
+	 *        extendedMetaData="kind='element' name='dataType' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getDataType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getDataType <em>Data Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Data Type</em>' attribute.
+	 * @see #getDataType()
+	 * @generated
+	 */
+	void setDataType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Definition</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Definition</em>' containment reference.
+	 * @see #setDefinition(LangStringsT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_Definition()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='definition' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getDefinition();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getDefinition <em>Definition</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Definition</em>' containment reference.
+	 * @see #getDefinition()
+	 * @generated
+	 */
+	void setDefinition(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Value List</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value List</em>' containment reference.
+	 * @see #setValueList(ValueListT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_ValueList()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='valueList' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ValueListT getValueList();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getValueList <em>Value List</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value List</em>' containment reference.
+	 * @see #getValueList()
+	 * @generated
+	 */
+	void setValueList(ValueListT value);
+
+	/**
+	 * Returns the value of the '<em><b>Code</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code</em>' containment reference.
+	 * @see #setCode(CodeT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDataSpecificationIEC61630T_Code()
+	 * @model containment="true"
+	 *        extendedMetaData="kind='element' name='code' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	CodeT getCode();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getCode <em>Code</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Code</em>' containment reference.
+	 * @see #getCode()
+	 * @generated
+	 */
+	void setCode(CodeT value);
+
+} // DataSpecificationIEC61630T
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/DocumentRoot.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/DocumentRoot.java
new file mode 100644
index 0000000..710e816
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/DocumentRoot.java
@@ -0,0 +1,377 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0;
+
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.ReferenceT;
+
+import org.eclipse.emf.common.util.EMap;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.emf.ecore.util.FeatureMap;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Document Root</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getMixed <em>Mixed</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getCode <em>Code</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getDataType <em>Data Type</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getDefinition <em>Definition</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getPreferredName <em>Preferred Name</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getShortName <em>Short Name</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getSourceOfDefinition <em>Source Of Definition</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getSymbol <em>Symbol</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getUnit <em>Unit</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getUnitId <em>Unit Id</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getValueFormat <em>Value Format</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getValueList <em>Value List</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.DocumentRoot#getValueType <em>Value Type</em>}</li>
+ * </ul>
+ *
+ * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot()
+ * @model extendedMetaData="name='' kind='mixed'"
+ * @generated
+ */
+public interface DocumentRoot extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Mixed</b></em>' attribute list.
+	 * The list contents are of type {@link org.eclipse.emf.ecore.util.FeatureMap.Entry}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Mixed</em>' attribute list.
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_Mixed()
+	 * @model unique="false" dataType="org.eclipse.emf.ecore.EFeatureMapEntry" many="true"
+	 *        extendedMetaData="kind='elementWildcard' name=':mixed'"
+	 * @generated
+	 */
+	FeatureMap getMixed();
+
+	/**
+	 * Returns the value of the '<em><b>XMLNS Prefix Map</b></em>' map.
+	 * The key is of type {@link java.lang.String},
+	 * and the value is of type {@link java.lang.String},
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>XMLNS Prefix Map</em>' map.
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_XMLNSPrefixMap()
+	 * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry&lt;org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString&gt;" transient="true"
+	 *        extendedMetaData="kind='attribute' name='xmlns:prefix'"
+	 * @generated
+	 */
+	EMap<String, String> getXMLNSPrefixMap();
+
+	/**
+	 * Returns the value of the '<em><b>XSI Schema Location</b></em>' map.
+	 * The key is of type {@link java.lang.String},
+	 * and the value is of type {@link java.lang.String},
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>XSI Schema Location</em>' map.
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_XSISchemaLocation()
+	 * @model mapType="org.eclipse.emf.ecore.EStringToStringMapEntry&lt;org.eclipse.emf.ecore.EString, org.eclipse.emf.ecore.EString&gt;" transient="true"
+	 *        extendedMetaData="kind='attribute' name='xsi:schemaLocation'"
+	 * @generated
+	 */
+	EMap<String, String> getXSISchemaLocation();
+
+	/**
+	 * Returns the value of the '<em><b>Code</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Code</em>' containment reference.
+	 * @see #setCode(CodeT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_Code()
+	 * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='code' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	CodeT getCode();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getCode <em>Code</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Code</em>' containment reference.
+	 * @see #getCode()
+	 * @generated
+	 */
+	void setCode(CodeT value);
+
+	/**
+	 * Returns the value of the '<em><b>Data Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Data Type</em>' attribute.
+	 * @see #setDataType(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_DataType()
+	 * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='dataType' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getDataType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getDataType <em>Data Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Data Type</em>' attribute.
+	 * @see #getDataType()
+	 * @generated
+	 */
+	void setDataType(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Definition</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Definition</em>' containment reference.
+	 * @see #setDefinition(LangStringsT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_Definition()
+	 * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='definition' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getDefinition();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getDefinition <em>Definition</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Definition</em>' containment reference.
+	 * @see #getDefinition()
+	 * @generated
+	 */
+	void setDefinition(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Preferred Name</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Preferred Name</em>' containment reference.
+	 * @see #setPreferredName(LangStringsT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_PreferredName()
+	 * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='preferredName' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getPreferredName();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getPreferredName <em>Preferred Name</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Preferred Name</em>' containment reference.
+	 * @see #getPreferredName()
+	 * @generated
+	 */
+	void setPreferredName(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Short Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Short Name</em>' attribute.
+	 * @see #setShortName(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_ShortName()
+	 * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='shortName' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getShortName();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getShortName <em>Short Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Short Name</em>' attribute.
+	 * @see #getShortName()
+	 * @generated
+	 */
+	void setShortName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Source Of Definition</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Source Of Definition</em>' containment reference.
+	 * @see #setSourceOfDefinition(LangStringsT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_SourceOfDefinition()
+	 * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='sourceOfDefinition' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	LangStringsT getSourceOfDefinition();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getSourceOfDefinition <em>Source Of Definition</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Source Of Definition</em>' containment reference.
+	 * @see #getSourceOfDefinition()
+	 * @generated
+	 */
+	void setSourceOfDefinition(LangStringsT value);
+
+	/**
+	 * Returns the value of the '<em><b>Symbol</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Symbol</em>' attribute.
+	 * @see #setSymbol(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_Symbol()
+	 * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='symbol' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getSymbol();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getSymbol <em>Symbol</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Symbol</em>' attribute.
+	 * @see #getSymbol()
+	 * @generated
+	 */
+	void setSymbol(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Unit</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Unit</em>' attribute.
+	 * @see #setUnit(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_Unit()
+	 * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='unit' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getUnit();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getUnit <em>Unit</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Unit</em>' attribute.
+	 * @see #getUnit()
+	 * @generated
+	 */
+	void setUnit(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Unit Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Unit Id</em>' containment reference.
+	 * @see #setUnitId(ReferenceT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_UnitId()
+	 * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='unitId' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ReferenceT getUnitId();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getUnitId <em>Unit Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Unit Id</em>' containment reference.
+	 * @see #getUnitId()
+	 * @generated
+	 */
+	void setUnitId(ReferenceT value);
+
+	/**
+	 * Returns the value of the '<em><b>Value Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value Format</em>' attribute.
+	 * @see #setValueFormat(String)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_ValueFormat()
+	 * @model unique="false" dataType="org.eclipse.emf.ecore.xml.type.String" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='valueFormat' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	String getValueFormat();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getValueFormat <em>Value Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value Format</em>' attribute.
+	 * @see #getValueFormat()
+	 * @generated
+	 */
+	void setValueFormat(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Value List</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value List</em>' containment reference.
+	 * @see #setValueList(ValueListT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_ValueList()
+	 * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='valueList' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ValueListT getValueList();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getValueList <em>Value List</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value List</em>' containment reference.
+	 * @see #getValueList()
+	 * @generated
+	 */
+	void setValueList(ValueListT value);
+
+	/**
+	 * Returns the value of the '<em><b>Value Type</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Value Type</em>' containment reference.
+	 * @see #setValueType(ValueListT)
+	 * @see io.shell.admin.iec61360._1._0._0Package#getDocumentRoot_ValueType()
+	 * @model containment="true" upper="-2" transient="true" volatile="true" derived="true"
+	 *        extendedMetaData="kind='element' name='valueType' namespace='##targetNamespace'"
+	 * @generated
+	 */
+	ValueListT getValueType();
+
+	/**
+	 * Sets the value of the '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getValueType <em>Value Type</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Value Type</em>' containment reference.
+	 * @see #getValueType()
+	 * @generated
+	 */
+	void setValueType(ValueListT value);
+
+} // DocumentRoot
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/ValueListT.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/ValueListT.java
new file mode 100644
index 0000000..dd30fc8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/ValueListT.java
@@ -0,0 +1,33 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Value List T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see io.shell.admin.iec61360._1._0._0Package#getValueListT()
+ * @model extendedMetaData="name='valueList_t' kind='empty'"
+ * @generated
+ */
+public interface ValueListT extends EObject {
+} // ValueListT
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/_0Factory.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/_0Factory.java
new file mode 100644
index 0000000..9a6f643
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/_0Factory.java
@@ -0,0 +1,84 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.iec61360._1._0._0Package
+ * @generated
+ */
+public interface _0Factory extends EFactory {
+	/**
+	 * The singleton instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	_0Factory eINSTANCE = io.shell.admin.iec61360._1._0.impl._0FactoryImpl.init();
+
+	/**
+	 * Returns a new object of class '<em>Code T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Code T</em>'.
+	 * @generated
+	 */
+	CodeT createCodeT();
+
+	/**
+	 * Returns a new object of class '<em>Data Specification IEC61630T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Data Specification IEC61630T</em>'.
+	 * @generated
+	 */
+	DataSpecificationIEC61630T createDataSpecificationIEC61630T();
+
+	/**
+	 * Returns a new object of class '<em>Value List T</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Value List T</em>'.
+	 * @generated
+	 */
+	ValueListT createValueListT();
+
+	/**
+	 * Returns a new object of class '<em>Document Root</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return a new object of class '<em>Document Root</em>'.
+	 * @generated
+	 */
+	DocumentRoot createDocumentRoot();
+
+	/**
+	 * Returns the package supported by this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
+	_0Package get_0Package();
+
+} //_0Factory
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/_0Package.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/_0Package.java
new file mode 100644
index 0000000..d3d22ef
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/_0Package.java
@@ -0,0 +1,1020 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ *   <li>each class,</li>
+ *   <li>each feature of each class,</li>
+ *   <li>each operation of each class,</li>
+ *   <li>each enum,</li>
+ *   <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.iec61360._1._0._0Factory
+ * @model kind="package"
+ * @generated
+ */
+public interface _0Package extends EPackage {
+	/**
+	 * The package name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNAME = "_0";
+
+	/**
+	 * The package namespace URI.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNS_URI = "http://www.admin-shell.io/IEC61360/1/0";
+
+	/**
+	 * The package namespace name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	String eNS_PREFIX = "_0";
+
+	/**
+	 * The singleton instance of the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	_0Package eINSTANCE = io.shell.admin.iec61360._1._0.impl._0PackageImpl.init();
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.iec61360._1._0.impl.CodeTImpl <em>Code T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.iec61360._1._0.impl.CodeTImpl
+	 * @see io.shell.admin.iec61360._1._0.impl._0PackageImpl#getCodeT()
+	 * @generated
+	 */
+	int CODE_T = 0;
+
+	/**
+	 * The number of structural features of the '<em>Code T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CODE_T_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Code T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int CODE_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl <em>Data Specification IEC61630T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl
+	 * @see io.shell.admin.iec61360._1._0.impl._0PackageImpl#getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	int DATA_SPECIFICATION_IEC61630T = 1;
+
+	/**
+	 * The feature id for the '<em><b>Preferred Name</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME = 0;
+
+	/**
+	 * The feature id for the '<em><b>Short Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__SHORT_NAME = 1;
+
+	/**
+	 * The feature id for the '<em><b>Unit</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__UNIT = 2;
+
+	/**
+	 * The feature id for the '<em><b>Unit Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__UNIT_ID = 3;
+
+	/**
+	 * The feature id for the '<em><b>Value Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__VALUE_FORMAT = 4;
+
+	/**
+	 * The feature id for the '<em><b>Source Of Definition</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Symbol</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__SYMBOL = 6;
+
+	/**
+	 * The feature id for the '<em><b>Data Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__DATA_TYPE = 7;
+
+	/**
+	 * The feature id for the '<em><b>Definition</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__DEFINITION = 8;
+
+	/**
+	 * The feature id for the '<em><b>Value List</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__VALUE_LIST = 9;
+
+	/**
+	 * The feature id for the '<em><b>Code</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T__CODE = 10;
+
+	/**
+	 * The number of structural features of the '<em>Data Specification IEC61630T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T_FEATURE_COUNT = 11;
+
+	/**
+	 * The number of operations of the '<em>Data Specification IEC61630T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_SPECIFICATION_IEC61630T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.iec61360._1._0.impl.ValueListTImpl <em>Value List T</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.iec61360._1._0.impl.ValueListTImpl
+	 * @see io.shell.admin.iec61360._1._0.impl._0PackageImpl#getValueListT()
+	 * @generated
+	 */
+	int VALUE_LIST_T = 2;
+
+	/**
+	 * The number of structural features of the '<em>Value List T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_LIST_T_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Value List T</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int VALUE_LIST_T_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl <em>Document Root</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see io.shell.admin.iec61360._1._0.impl.DocumentRootImpl
+	 * @see io.shell.admin.iec61360._1._0.impl._0PackageImpl#getDocumentRoot()
+	 * @generated
+	 */
+	int DOCUMENT_ROOT = 3;
+
+	/**
+	 * The feature id for the '<em><b>Mixed</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__MIXED = 0;
+
+	/**
+	 * The feature id for the '<em><b>XMLNS Prefix Map</b></em>' map.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__XMLNS_PREFIX_MAP = 1;
+
+	/**
+	 * The feature id for the '<em><b>XSI Schema Location</b></em>' map.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Code</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__CODE = 3;
+
+	/**
+	 * The feature id for the '<em><b>Data Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__DATA_TYPE = 4;
+
+	/**
+	 * The feature id for the '<em><b>Definition</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__DEFINITION = 5;
+
+	/**
+	 * The feature id for the '<em><b>Preferred Name</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__PREFERRED_NAME = 6;
+
+	/**
+	 * The feature id for the '<em><b>Short Name</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__SHORT_NAME = 7;
+
+	/**
+	 * The feature id for the '<em><b>Source Of Definition</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__SOURCE_OF_DEFINITION = 8;
+
+	/**
+	 * The feature id for the '<em><b>Symbol</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__SYMBOL = 9;
+
+	/**
+	 * The feature id for the '<em><b>Unit</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__UNIT = 10;
+
+	/**
+	 * The feature id for the '<em><b>Unit Id</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__UNIT_ID = 11;
+
+	/**
+	 * The feature id for the '<em><b>Value Format</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__VALUE_FORMAT = 12;
+
+	/**
+	 * The feature id for the '<em><b>Value List</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__VALUE_LIST = 13;
+
+	/**
+	 * The feature id for the '<em><b>Value Type</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT__VALUE_TYPE = 14;
+
+	/**
+	 * The number of structural features of the '<em>Document Root</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT_FEATURE_COUNT = 15;
+
+	/**
+	 * The number of operations of the '<em>Document Root</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int DOCUMENT_ROOT_OPERATION_COUNT = 0;
+
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.iec61360._1._0.CodeT <em>Code T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Code T</em>'.
+	 * @see io.shell.admin.iec61360._1._0.CodeT
+	 * @generated
+	 */
+	EClass getCodeT();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T <em>Data Specification IEC61630T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Data Specification IEC61630T</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T
+	 * @generated
+	 */
+	EClass getDataSpecificationIEC61630T();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getPreferredName <em>Preferred Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Preferred Name</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getPreferredName()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EReference getDataSpecificationIEC61630T_PreferredName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getShortName <em>Short Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Short Name</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getShortName()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EAttribute getDataSpecificationIEC61630T_ShortName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getUnit <em>Unit</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Unit</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getUnit()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EAttribute getDataSpecificationIEC61630T_Unit();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getUnitId <em>Unit Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Unit Id</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getUnitId()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EReference getDataSpecificationIEC61630T_UnitId();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getValueFormat <em>Value Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value Format</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getValueFormat()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EAttribute getDataSpecificationIEC61630T_ValueFormat();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getSourceOfDefinition <em>Source Of Definition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Source Of Definition</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getSourceOfDefinition()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EReference getDataSpecificationIEC61630T_SourceOfDefinition();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getSymbol <em>Symbol</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Symbol</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getSymbol()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EAttribute getDataSpecificationIEC61630T_Symbol();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getDataType <em>Data Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Data Type</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getDataType()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EAttribute getDataSpecificationIEC61630T_DataType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getDefinition <em>Definition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Definition</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getDefinition()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EReference getDataSpecificationIEC61630T_Definition();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getValueList <em>Value List</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value List</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getValueList()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EReference getDataSpecificationIEC61630T_ValueList();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getCode <em>Code</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Code</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T#getCode()
+	 * @see #getDataSpecificationIEC61630T()
+	 * @generated
+	 */
+	EReference getDataSpecificationIEC61630T_Code();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.iec61360._1._0.ValueListT <em>Value List T</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Value List T</em>'.
+	 * @see io.shell.admin.iec61360._1._0.ValueListT
+	 * @generated
+	 */
+	EClass getValueListT();
+
+	/**
+	 * Returns the meta object for class '{@link io.shell.admin.iec61360._1._0.DocumentRoot <em>Document Root</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for class '<em>Document Root</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot
+	 * @generated
+	 */
+	EClass getDocumentRoot();
+
+	/**
+	 * Returns the meta object for the attribute list '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getMixed <em>Mixed</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute list '<em>Mixed</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getMixed()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EAttribute getDocumentRoot_Mixed();
+
+	/**
+	 * Returns the meta object for the map '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the map '<em>XMLNS Prefix Map</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getXMLNSPrefixMap()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_XMLNSPrefixMap();
+
+	/**
+	 * Returns the meta object for the map '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getXSISchemaLocation <em>XSI Schema Location</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the map '<em>XSI Schema Location</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getXSISchemaLocation()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_XSISchemaLocation();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getCode <em>Code</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Code</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getCode()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_Code();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getDataType <em>Data Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Data Type</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getDataType()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EAttribute getDocumentRoot_DataType();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getDefinition <em>Definition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Definition</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getDefinition()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_Definition();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getPreferredName <em>Preferred Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Preferred Name</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getPreferredName()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_PreferredName();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getShortName <em>Short Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Short Name</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getShortName()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EAttribute getDocumentRoot_ShortName();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getSourceOfDefinition <em>Source Of Definition</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Source Of Definition</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getSourceOfDefinition()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_SourceOfDefinition();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getSymbol <em>Symbol</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Symbol</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getSymbol()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EAttribute getDocumentRoot_Symbol();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getUnit <em>Unit</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Unit</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getUnit()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EAttribute getDocumentRoot_Unit();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getUnitId <em>Unit Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Unit Id</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getUnitId()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_UnitId();
+
+	/**
+	 * Returns the meta object for the attribute '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getValueFormat <em>Value Format</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Value Format</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getValueFormat()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EAttribute getDocumentRoot_ValueFormat();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getValueList <em>Value List</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value List</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getValueList()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_ValueList();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link io.shell.admin.iec61360._1._0.DocumentRoot#getValueType <em>Value Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference '<em>Value Type</em>'.
+	 * @see io.shell.admin.iec61360._1._0.DocumentRoot#getValueType()
+	 * @see #getDocumentRoot()
+	 * @generated
+	 */
+	EReference getDocumentRoot_ValueType();
+
+	/**
+	 * Returns the factory that creates the instances of the model.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the factory that creates the instances of the model.
+	 * @generated
+	 */
+	_0Factory get_0Factory();
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * Defines literals for the meta objects that represent
+	 * <ul>
+	 *   <li>each class,</li>
+	 *   <li>each feature of each class,</li>
+	 *   <li>each operation of each class,</li>
+	 *   <li>each enum,</li>
+	 *   <li>and each data type</li>
+	 * </ul>
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	interface Literals {
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.iec61360._1._0.impl.CodeTImpl <em>Code T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.iec61360._1._0.impl.CodeTImpl
+		 * @see io.shell.admin.iec61360._1._0.impl._0PackageImpl#getCodeT()
+		 * @generated
+		 */
+		EClass CODE_T = eINSTANCE.getCodeT();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl <em>Data Specification IEC61630T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl
+		 * @see io.shell.admin.iec61360._1._0.impl._0PackageImpl#getDataSpecificationIEC61630T()
+		 * @generated
+		 */
+		EClass DATA_SPECIFICATION_IEC61630T = eINSTANCE.getDataSpecificationIEC61630T();
+
+		/**
+		 * The meta object literal for the '<em><b>Preferred Name</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME = eINSTANCE.getDataSpecificationIEC61630T_PreferredName();
+
+		/**
+		 * The meta object literal for the '<em><b>Short Name</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DATA_SPECIFICATION_IEC61630T__SHORT_NAME = eINSTANCE.getDataSpecificationIEC61630T_ShortName();
+
+		/**
+		 * The meta object literal for the '<em><b>Unit</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DATA_SPECIFICATION_IEC61630T__UNIT = eINSTANCE.getDataSpecificationIEC61630T_Unit();
+
+		/**
+		 * The meta object literal for the '<em><b>Unit Id</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DATA_SPECIFICATION_IEC61630T__UNIT_ID = eINSTANCE.getDataSpecificationIEC61630T_UnitId();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Format</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DATA_SPECIFICATION_IEC61630T__VALUE_FORMAT = eINSTANCE.getDataSpecificationIEC61630T_ValueFormat();
+
+		/**
+		 * The meta object literal for the '<em><b>Source Of Definition</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION = eINSTANCE.getDataSpecificationIEC61630T_SourceOfDefinition();
+
+		/**
+		 * The meta object literal for the '<em><b>Symbol</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DATA_SPECIFICATION_IEC61630T__SYMBOL = eINSTANCE.getDataSpecificationIEC61630T_Symbol();
+
+		/**
+		 * The meta object literal for the '<em><b>Data Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DATA_SPECIFICATION_IEC61630T__DATA_TYPE = eINSTANCE.getDataSpecificationIEC61630T_DataType();
+
+		/**
+		 * The meta object literal for the '<em><b>Definition</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DATA_SPECIFICATION_IEC61630T__DEFINITION = eINSTANCE.getDataSpecificationIEC61630T_Definition();
+
+		/**
+		 * The meta object literal for the '<em><b>Value List</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DATA_SPECIFICATION_IEC61630T__VALUE_LIST = eINSTANCE.getDataSpecificationIEC61630T_ValueList();
+
+		/**
+		 * The meta object literal for the '<em><b>Code</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DATA_SPECIFICATION_IEC61630T__CODE = eINSTANCE.getDataSpecificationIEC61630T_Code();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.iec61360._1._0.impl.ValueListTImpl <em>Value List T</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.iec61360._1._0.impl.ValueListTImpl
+		 * @see io.shell.admin.iec61360._1._0.impl._0PackageImpl#getValueListT()
+		 * @generated
+		 */
+		EClass VALUE_LIST_T = eINSTANCE.getValueListT();
+
+		/**
+		 * The meta object literal for the '{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl <em>Document Root</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @see io.shell.admin.iec61360._1._0.impl.DocumentRootImpl
+		 * @see io.shell.admin.iec61360._1._0.impl._0PackageImpl#getDocumentRoot()
+		 * @generated
+		 */
+		EClass DOCUMENT_ROOT = eINSTANCE.getDocumentRoot();
+
+		/**
+		 * The meta object literal for the '<em><b>Mixed</b></em>' attribute list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DOCUMENT_ROOT__MIXED = eINSTANCE.getDocumentRoot_Mixed();
+
+		/**
+		 * The meta object literal for the '<em><b>XMLNS Prefix Map</b></em>' map feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__XMLNS_PREFIX_MAP = eINSTANCE.getDocumentRoot_XMLNSPrefixMap();
+
+		/**
+		 * The meta object literal for the '<em><b>XSI Schema Location</b></em>' map feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__XSI_SCHEMA_LOCATION = eINSTANCE.getDocumentRoot_XSISchemaLocation();
+
+		/**
+		 * The meta object literal for the '<em><b>Code</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__CODE = eINSTANCE.getDocumentRoot_Code();
+
+		/**
+		 * The meta object literal for the '<em><b>Data Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DOCUMENT_ROOT__DATA_TYPE = eINSTANCE.getDocumentRoot_DataType();
+
+		/**
+		 * The meta object literal for the '<em><b>Definition</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__DEFINITION = eINSTANCE.getDocumentRoot_Definition();
+
+		/**
+		 * The meta object literal for the '<em><b>Preferred Name</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__PREFERRED_NAME = eINSTANCE.getDocumentRoot_PreferredName();
+
+		/**
+		 * The meta object literal for the '<em><b>Short Name</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DOCUMENT_ROOT__SHORT_NAME = eINSTANCE.getDocumentRoot_ShortName();
+
+		/**
+		 * The meta object literal for the '<em><b>Source Of Definition</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__SOURCE_OF_DEFINITION = eINSTANCE.getDocumentRoot_SourceOfDefinition();
+
+		/**
+		 * The meta object literal for the '<em><b>Symbol</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DOCUMENT_ROOT__SYMBOL = eINSTANCE.getDocumentRoot_Symbol();
+
+		/**
+		 * The meta object literal for the '<em><b>Unit</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DOCUMENT_ROOT__UNIT = eINSTANCE.getDocumentRoot_Unit();
+
+		/**
+		 * The meta object literal for the '<em><b>Unit Id</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__UNIT_ID = eINSTANCE.getDocumentRoot_UnitId();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Format</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute DOCUMENT_ROOT__VALUE_FORMAT = eINSTANCE.getDocumentRoot_ValueFormat();
+
+		/**
+		 * The meta object literal for the '<em><b>Value List</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__VALUE_LIST = eINSTANCE.getDocumentRoot_ValueList();
+
+		/**
+		 * The meta object literal for the '<em><b>Value Type</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference DOCUMENT_ROOT__VALUE_TYPE = eINSTANCE.getDocumentRoot_ValueType();
+
+	}
+
+} //_0Package
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/CodeTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/CodeTImpl.java
new file mode 100644
index 0000000..1574ff0
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/CodeTImpl.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.impl;
+
+import io.shell.admin.iec61360._1._0.CodeT;
+import io.shell.admin.iec61360._1._0._0Package;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Code T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class CodeTImpl extends MinimalEObjectImpl.Container implements CodeT {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected CodeTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.CODE_T;
+	}
+
+} //CodeTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/DataSpecificationIEC61630TImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/DataSpecificationIEC61630TImpl.java
new file mode 100644
index 0000000..3054618
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/DataSpecificationIEC61630TImpl.java
@@ -0,0 +1,809 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.impl;
+
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.ReferenceT;
+
+import io.shell.admin.iec61360._1._0.CodeT;
+import io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T;
+import io.shell.admin.iec61360._1._0.ValueListT;
+import io.shell.admin.iec61360._1._0._0Package;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Data Specification IEC61630T</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getPreferredName <em>Preferred Name</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getShortName <em>Short Name</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getUnit <em>Unit</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getUnitId <em>Unit Id</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getValueFormat <em>Value Format</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getSourceOfDefinition <em>Source Of Definition</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getSymbol <em>Symbol</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getDataType <em>Data Type</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getDefinition <em>Definition</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getValueList <em>Value List</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DataSpecificationIEC61630TImpl#getCode <em>Code</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class DataSpecificationIEC61630TImpl extends MinimalEObjectImpl.Container implements DataSpecificationIEC61630T {
+	/**
+	 * The cached value of the '{@link #getPreferredName() <em>Preferred Name</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getPreferredName()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT preferredName;
+
+	/**
+	 * The default value of the '{@link #getShortName() <em>Short Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getShortName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SHORT_NAME_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getShortName() <em>Short Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getShortName()
+	 * @generated
+	 * @ordered
+	 */
+	protected String shortName = SHORT_NAME_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getUnit() <em>Unit</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUnit()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UNIT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUnit() <em>Unit</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUnit()
+	 * @generated
+	 * @ordered
+	 */
+	protected String unit = UNIT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getUnitId() <em>Unit Id</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUnitId()
+	 * @generated
+	 * @ordered
+	 */
+	protected ReferenceT unitId;
+
+	/**
+	 * The default value of the '{@link #getValueFormat() <em>Value Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VALUE_FORMAT_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getValueFormat() <em>Value Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected String valueFormat = VALUE_FORMAT_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getSourceOfDefinition() <em>Source Of Definition</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSourceOfDefinition()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT sourceOfDefinition;
+
+	/**
+	 * The default value of the '{@link #getSymbol() <em>Symbol</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSymbol()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SYMBOL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getSymbol() <em>Symbol</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSymbol()
+	 * @generated
+	 * @ordered
+	 */
+	protected String symbol = SYMBOL_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getDataType() <em>Data Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDataType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DATA_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDataType() <em>Data Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDataType()
+	 * @generated
+	 * @ordered
+	 */
+	protected String dataType = DATA_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getDefinition() <em>Definition</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDefinition()
+	 * @generated
+	 * @ordered
+	 */
+	protected LangStringsT definition;
+
+	/**
+	 * The cached value of the '{@link #getValueList() <em>Value List</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueList()
+	 * @generated
+	 * @ordered
+	 */
+	protected ValueListT valueList;
+
+	/**
+	 * The cached value of the '{@link #getCode() <em>Code</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getCode()
+	 * @generated
+	 * @ordered
+	 */
+	protected CodeT code;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DataSpecificationIEC61630TImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.DATA_SPECIFICATION_IEC61630T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getPreferredName() {
+		return preferredName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetPreferredName(LangStringsT newPreferredName, NotificationChain msgs) {
+		LangStringsT oldPreferredName = preferredName;
+		preferredName = newPreferredName;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME, oldPreferredName, newPreferredName);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setPreferredName(LangStringsT newPreferredName) {
+		if (newPreferredName != preferredName) {
+			NotificationChain msgs = null;
+			if (preferredName != null)
+				msgs = ((InternalEObject)preferredName).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME, null, msgs);
+			if (newPreferredName != null)
+				msgs = ((InternalEObject)newPreferredName).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME, null, msgs);
+			msgs = basicSetPreferredName(newPreferredName, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME, newPreferredName, newPreferredName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getShortName() {
+		return shortName;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setShortName(String newShortName) {
+		String oldShortName = shortName;
+		shortName = newShortName;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__SHORT_NAME, oldShortName, shortName));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUnit() {
+		return unit;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUnit(String newUnit) {
+		String oldUnit = unit;
+		unit = newUnit;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__UNIT, oldUnit, unit));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getUnitId() {
+		return unitId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetUnitId(ReferenceT newUnitId, NotificationChain msgs) {
+		ReferenceT oldUnitId = unitId;
+		unitId = newUnitId;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__UNIT_ID, oldUnitId, newUnitId);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUnitId(ReferenceT newUnitId) {
+		if (newUnitId != unitId) {
+			NotificationChain msgs = null;
+			if (unitId != null)
+				msgs = ((InternalEObject)unitId).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__UNIT_ID, null, msgs);
+			if (newUnitId != null)
+				msgs = ((InternalEObject)newUnitId).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__UNIT_ID, null, msgs);
+			msgs = basicSetUnitId(newUnitId, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__UNIT_ID, newUnitId, newUnitId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getValueFormat() {
+		return valueFormat;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValueFormat(String newValueFormat) {
+		String oldValueFormat = valueFormat;
+		valueFormat = newValueFormat;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_FORMAT, oldValueFormat, valueFormat));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getSourceOfDefinition() {
+		return sourceOfDefinition;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSourceOfDefinition(LangStringsT newSourceOfDefinition, NotificationChain msgs) {
+		LangStringsT oldSourceOfDefinition = sourceOfDefinition;
+		sourceOfDefinition = newSourceOfDefinition;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION, oldSourceOfDefinition, newSourceOfDefinition);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSourceOfDefinition(LangStringsT newSourceOfDefinition) {
+		if (newSourceOfDefinition != sourceOfDefinition) {
+			NotificationChain msgs = null;
+			if (sourceOfDefinition != null)
+				msgs = ((InternalEObject)sourceOfDefinition).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION, null, msgs);
+			if (newSourceOfDefinition != null)
+				msgs = ((InternalEObject)newSourceOfDefinition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION, null, msgs);
+			msgs = basicSetSourceOfDefinition(newSourceOfDefinition, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION, newSourceOfDefinition, newSourceOfDefinition));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getSymbol() {
+		return symbol;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSymbol(String newSymbol) {
+		String oldSymbol = symbol;
+		symbol = newSymbol;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__SYMBOL, oldSymbol, symbol));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDataType() {
+		return dataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDataType(String newDataType) {
+		String oldDataType = dataType;
+		dataType = newDataType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__DATA_TYPE, oldDataType, dataType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getDefinition() {
+		return definition;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDefinition(LangStringsT newDefinition, NotificationChain msgs) {
+		LangStringsT oldDefinition = definition;
+		definition = newDefinition;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__DEFINITION, oldDefinition, newDefinition);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefinition(LangStringsT newDefinition) {
+		if (newDefinition != definition) {
+			NotificationChain msgs = null;
+			if (definition != null)
+				msgs = ((InternalEObject)definition).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__DEFINITION, null, msgs);
+			if (newDefinition != null)
+				msgs = ((InternalEObject)newDefinition).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__DEFINITION, null, msgs);
+			msgs = basicSetDefinition(newDefinition, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__DEFINITION, newDefinition, newDefinition));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ValueListT getValueList() {
+		return valueList;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValueList(ValueListT newValueList, NotificationChain msgs) {
+		ValueListT oldValueList = valueList;
+		valueList = newValueList;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_LIST, oldValueList, newValueList);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValueList(ValueListT newValueList) {
+		if (newValueList != valueList) {
+			NotificationChain msgs = null;
+			if (valueList != null)
+				msgs = ((InternalEObject)valueList).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_LIST, null, msgs);
+			if (newValueList != null)
+				msgs = ((InternalEObject)newValueList).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_LIST, null, msgs);
+			msgs = basicSetValueList(newValueList, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_LIST, newValueList, newValueList));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CodeT getCode() {
+		return code;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCode(CodeT newCode, NotificationChain msgs) {
+		CodeT oldCode = code;
+		code = newCode;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__CODE, oldCode, newCode);
+			if (msgs == null) msgs = notification; else msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCode(CodeT newCode) {
+		if (newCode != code) {
+			NotificationChain msgs = null;
+			if (code != null)
+				msgs = ((InternalEObject)code).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__CODE, null, msgs);
+			if (newCode != null)
+				msgs = ((InternalEObject)newCode).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - _0Package.DATA_SPECIFICATION_IEC61630T__CODE, null, msgs);
+			msgs = basicSetCode(newCode, msgs);
+			if (msgs != null) msgs.dispatch();
+		}
+		else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, _0Package.DATA_SPECIFICATION_IEC61630T__CODE, newCode, newCode));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME:
+				return basicSetPreferredName(null, msgs);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__UNIT_ID:
+				return basicSetUnitId(null, msgs);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION:
+				return basicSetSourceOfDefinition(null, msgs);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__DEFINITION:
+				return basicSetDefinition(null, msgs);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_LIST:
+				return basicSetValueList(null, msgs);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__CODE:
+				return basicSetCode(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 _0Package.DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME:
+				return getPreferredName();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SHORT_NAME:
+				return getShortName();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__UNIT:
+				return getUnit();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__UNIT_ID:
+				return getUnitId();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_FORMAT:
+				return getValueFormat();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION:
+				return getSourceOfDefinition();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SYMBOL:
+				return getSymbol();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__DATA_TYPE:
+				return getDataType();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__DEFINITION:
+				return getDefinition();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_LIST:
+				return getValueList();
+			case _0Package.DATA_SPECIFICATION_IEC61630T__CODE:
+				return getCode();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME:
+				setPreferredName((LangStringsT)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SHORT_NAME:
+				setShortName((String)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__UNIT:
+				setUnit((String)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__UNIT_ID:
+				setUnitId((ReferenceT)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_FORMAT:
+				setValueFormat((String)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION:
+				setSourceOfDefinition((LangStringsT)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SYMBOL:
+				setSymbol((String)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__DATA_TYPE:
+				setDataType((String)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__DEFINITION:
+				setDefinition((LangStringsT)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_LIST:
+				setValueList((ValueListT)newValue);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__CODE:
+				setCode((CodeT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME:
+				setPreferredName((LangStringsT)null);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SHORT_NAME:
+				setShortName(SHORT_NAME_EDEFAULT);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__UNIT:
+				setUnit(UNIT_EDEFAULT);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__UNIT_ID:
+				setUnitId((ReferenceT)null);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_FORMAT:
+				setValueFormat(VALUE_FORMAT_EDEFAULT);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION:
+				setSourceOfDefinition((LangStringsT)null);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SYMBOL:
+				setSymbol(SYMBOL_EDEFAULT);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__DATA_TYPE:
+				setDataType(DATA_TYPE_EDEFAULT);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__DEFINITION:
+				setDefinition((LangStringsT)null);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_LIST:
+				setValueList((ValueListT)null);
+				return;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__CODE:
+				setCode((CodeT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME:
+				return preferredName != null;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SHORT_NAME:
+				return SHORT_NAME_EDEFAULT == null ? shortName != null : !SHORT_NAME_EDEFAULT.equals(shortName);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__UNIT:
+				return UNIT_EDEFAULT == null ? unit != null : !UNIT_EDEFAULT.equals(unit);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__UNIT_ID:
+				return unitId != null;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_FORMAT:
+				return VALUE_FORMAT_EDEFAULT == null ? valueFormat != null : !VALUE_FORMAT_EDEFAULT.equals(valueFormat);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION:
+				return sourceOfDefinition != null;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__SYMBOL:
+				return SYMBOL_EDEFAULT == null ? symbol != null : !SYMBOL_EDEFAULT.equals(symbol);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__DATA_TYPE:
+				return DATA_TYPE_EDEFAULT == null ? dataType != null : !DATA_TYPE_EDEFAULT.equals(dataType);
+			case _0Package.DATA_SPECIFICATION_IEC61630T__DEFINITION:
+				return definition != null;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__VALUE_LIST:
+				return valueList != null;
+			case _0Package.DATA_SPECIFICATION_IEC61630T__CODE:
+				return code != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (shortName: ");
+		result.append(shortName);
+		result.append(", unit: ");
+		result.append(unit);
+		result.append(", valueFormat: ");
+		result.append(valueFormat);
+		result.append(", symbol: ");
+		result.append(symbol);
+		result.append(", dataType: ");
+		result.append(dataType);
+		result.append(')');
+		return result.toString();
+	}
+
+} //DataSpecificationIEC61630TImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/DocumentRootImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/DocumentRootImpl.java
new file mode 100644
index 0000000..d5cad0b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/DocumentRootImpl.java
@@ -0,0 +1,736 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.impl;
+
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.ReferenceT;
+
+import io.shell.admin.iec61360._1._0.CodeT;
+import io.shell.admin.iec61360._1._0.DocumentRoot;
+import io.shell.admin.iec61360._1._0.ValueListT;
+import io.shell.admin.iec61360._1._0._0Package;
+
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.common.util.EMap;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.EcorePackage;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.EStringToStringMapEntryImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.BasicFeatureMap;
+import org.eclipse.emf.ecore.util.EcoreEMap;
+import org.eclipse.emf.ecore.util.FeatureMap;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Document Root</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getMixed <em>Mixed</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getXMLNSPrefixMap <em>XMLNS Prefix Map</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getXSISchemaLocation <em>XSI Schema Location</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getCode <em>Code</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getDataType <em>Data Type</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getDefinition <em>Definition</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getPreferredName <em>Preferred Name</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getShortName <em>Short Name</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getSourceOfDefinition <em>Source Of Definition</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getSymbol <em>Symbol</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getUnit <em>Unit</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getUnitId <em>Unit Id</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getValueFormat <em>Value Format</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getValueList <em>Value List</em>}</li>
+ *   <li>{@link io.shell.admin.iec61360._1._0.impl.DocumentRootImpl#getValueType <em>Value Type</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class DocumentRootImpl extends MinimalEObjectImpl.Container implements DocumentRoot {
+	/**
+	 * The cached value of the '{@link #getMixed() <em>Mixed</em>}' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getMixed()
+	 * @generated
+	 * @ordered
+	 */
+	protected FeatureMap mixed;
+
+	/**
+	 * The cached value of the '{@link #getXMLNSPrefixMap() <em>XMLNS Prefix Map</em>}' map.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getXMLNSPrefixMap()
+	 * @generated
+	 * @ordered
+	 */
+	protected EMap<String, String> xMLNSPrefixMap;
+
+	/**
+	 * The cached value of the '{@link #getXSISchemaLocation() <em>XSI Schema Location</em>}' map.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getXSISchemaLocation()
+	 * @generated
+	 * @ordered
+	 */
+	protected EMap<String, String> xSISchemaLocation;
+
+	/**
+	 * The default value of the '{@link #getDataType() <em>Data Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getDataType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DATA_TYPE_EDEFAULT = null;
+
+	/**
+	 * The default value of the '{@link #getShortName() <em>Short Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getShortName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SHORT_NAME_EDEFAULT = null;
+
+	/**
+	 * The default value of the '{@link #getSymbol() <em>Symbol</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getSymbol()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String SYMBOL_EDEFAULT = null;
+
+	/**
+	 * The default value of the '{@link #getUnit() <em>Unit</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getUnit()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String UNIT_EDEFAULT = null;
+
+	/**
+	 * The default value of the '{@link #getValueFormat() <em>Value Format</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getValueFormat()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VALUE_FORMAT_EDEFAULT = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected DocumentRootImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.DOCUMENT_ROOT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public FeatureMap getMixed() {
+		if (mixed == null) {
+			mixed = new BasicFeatureMap(this, _0Package.DOCUMENT_ROOT__MIXED);
+		}
+		return mixed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EMap<String, String> getXMLNSPrefixMap() {
+		if (xMLNSPrefixMap == null) {
+			xMLNSPrefixMap = new EcoreEMap<String,String>(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, EStringToStringMapEntryImpl.class, this, _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP);
+		}
+		return xMLNSPrefixMap;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EMap<String, String> getXSISchemaLocation() {
+		if (xSISchemaLocation == null) {
+			xSISchemaLocation = new EcoreEMap<String,String>(EcorePackage.Literals.ESTRING_TO_STRING_MAP_ENTRY, EStringToStringMapEntryImpl.class, this, _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION);
+		}
+		return xSISchemaLocation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CodeT getCode() {
+		return (CodeT)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__CODE, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetCode(CodeT newCode, NotificationChain msgs) {
+		return ((FeatureMap.Internal)getMixed()).basicAdd(_0Package.Literals.DOCUMENT_ROOT__CODE, newCode, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setCode(CodeT newCode) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__CODE, newCode);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getDataType() {
+		return (String)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__DATA_TYPE, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDataType(String newDataType) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__DATA_TYPE, newDataType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getDefinition() {
+		return (LangStringsT)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__DEFINITION, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetDefinition(LangStringsT newDefinition, NotificationChain msgs) {
+		return ((FeatureMap.Internal)getMixed()).basicAdd(_0Package.Literals.DOCUMENT_ROOT__DEFINITION, newDefinition, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setDefinition(LangStringsT newDefinition) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__DEFINITION, newDefinition);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getPreferredName() {
+		return (LangStringsT)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__PREFERRED_NAME, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetPreferredName(LangStringsT newPreferredName, NotificationChain msgs) {
+		return ((FeatureMap.Internal)getMixed()).basicAdd(_0Package.Literals.DOCUMENT_ROOT__PREFERRED_NAME, newPreferredName, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setPreferredName(LangStringsT newPreferredName) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__PREFERRED_NAME, newPreferredName);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getShortName() {
+		return (String)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__SHORT_NAME, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setShortName(String newShortName) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__SHORT_NAME, newShortName);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public LangStringsT getSourceOfDefinition() {
+		return (LangStringsT)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__SOURCE_OF_DEFINITION, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetSourceOfDefinition(LangStringsT newSourceOfDefinition, NotificationChain msgs) {
+		return ((FeatureMap.Internal)getMixed()).basicAdd(_0Package.Literals.DOCUMENT_ROOT__SOURCE_OF_DEFINITION, newSourceOfDefinition, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSourceOfDefinition(LangStringsT newSourceOfDefinition) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__SOURCE_OF_DEFINITION, newSourceOfDefinition);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getSymbol() {
+		return (String)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__SYMBOL, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setSymbol(String newSymbol) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__SYMBOL, newSymbol);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getUnit() {
+		return (String)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__UNIT, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUnit(String newUnit) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__UNIT, newUnit);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ReferenceT getUnitId() {
+		return (ReferenceT)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__UNIT_ID, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetUnitId(ReferenceT newUnitId, NotificationChain msgs) {
+		return ((FeatureMap.Internal)getMixed()).basicAdd(_0Package.Literals.DOCUMENT_ROOT__UNIT_ID, newUnitId, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setUnitId(ReferenceT newUnitId) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__UNIT_ID, newUnitId);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getValueFormat() {
+		return (String)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__VALUE_FORMAT, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValueFormat(String newValueFormat) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__VALUE_FORMAT, newValueFormat);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ValueListT getValueList() {
+		return (ValueListT)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__VALUE_LIST, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValueList(ValueListT newValueList, NotificationChain msgs) {
+		return ((FeatureMap.Internal)getMixed()).basicAdd(_0Package.Literals.DOCUMENT_ROOT__VALUE_LIST, newValueList, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValueList(ValueListT newValueList) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__VALUE_LIST, newValueList);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ValueListT getValueType() {
+		return (ValueListT)getMixed().get(_0Package.Literals.DOCUMENT_ROOT__VALUE_TYPE, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public NotificationChain basicSetValueType(ValueListT newValueType, NotificationChain msgs) {
+		return ((FeatureMap.Internal)getMixed()).basicAdd(_0Package.Literals.DOCUMENT_ROOT__VALUE_TYPE, newValueType, msgs);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setValueType(ValueListT newValueType) {
+		((FeatureMap.Internal)getMixed()).set(_0Package.Literals.DOCUMENT_ROOT__VALUE_TYPE, newValueType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+			case _0Package.DOCUMENT_ROOT__MIXED:
+				return ((InternalEList<?>)getMixed()).basicRemove(otherEnd, msgs);
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				return ((InternalEList<?>)getXMLNSPrefixMap()).basicRemove(otherEnd, msgs);
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				return ((InternalEList<?>)getXSISchemaLocation()).basicRemove(otherEnd, msgs);
+			case _0Package.DOCUMENT_ROOT__CODE:
+				return basicSetCode(null, msgs);
+			case _0Package.DOCUMENT_ROOT__DEFINITION:
+				return basicSetDefinition(null, msgs);
+			case _0Package.DOCUMENT_ROOT__PREFERRED_NAME:
+				return basicSetPreferredName(null, msgs);
+			case _0Package.DOCUMENT_ROOT__SOURCE_OF_DEFINITION:
+				return basicSetSourceOfDefinition(null, msgs);
+			case _0Package.DOCUMENT_ROOT__UNIT_ID:
+				return basicSetUnitId(null, msgs);
+			case _0Package.DOCUMENT_ROOT__VALUE_LIST:
+				return basicSetValueList(null, msgs);
+			case _0Package.DOCUMENT_ROOT__VALUE_TYPE:
+				return basicSetValueType(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 _0Package.DOCUMENT_ROOT__MIXED:
+				if (coreType) return getMixed();
+				return ((FeatureMap.Internal)getMixed()).getWrapper();
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				if (coreType) return getXMLNSPrefixMap();
+				else return getXMLNSPrefixMap().map();
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				if (coreType) return getXSISchemaLocation();
+				else return getXSISchemaLocation().map();
+			case _0Package.DOCUMENT_ROOT__CODE:
+				return getCode();
+			case _0Package.DOCUMENT_ROOT__DATA_TYPE:
+				return getDataType();
+			case _0Package.DOCUMENT_ROOT__DEFINITION:
+				return getDefinition();
+			case _0Package.DOCUMENT_ROOT__PREFERRED_NAME:
+				return getPreferredName();
+			case _0Package.DOCUMENT_ROOT__SHORT_NAME:
+				return getShortName();
+			case _0Package.DOCUMENT_ROOT__SOURCE_OF_DEFINITION:
+				return getSourceOfDefinition();
+			case _0Package.DOCUMENT_ROOT__SYMBOL:
+				return getSymbol();
+			case _0Package.DOCUMENT_ROOT__UNIT:
+				return getUnit();
+			case _0Package.DOCUMENT_ROOT__UNIT_ID:
+				return getUnitId();
+			case _0Package.DOCUMENT_ROOT__VALUE_FORMAT:
+				return getValueFormat();
+			case _0Package.DOCUMENT_ROOT__VALUE_LIST:
+				return getValueList();
+			case _0Package.DOCUMENT_ROOT__VALUE_TYPE:
+				return getValueType();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+			case _0Package.DOCUMENT_ROOT__MIXED:
+				((FeatureMap.Internal)getMixed()).set(newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				((EStructuralFeature.Setting)getXMLNSPrefixMap()).set(newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				((EStructuralFeature.Setting)getXSISchemaLocation()).set(newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__CODE:
+				setCode((CodeT)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__DATA_TYPE:
+				setDataType((String)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__DEFINITION:
+				setDefinition((LangStringsT)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__PREFERRED_NAME:
+				setPreferredName((LangStringsT)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__SHORT_NAME:
+				setShortName((String)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__SOURCE_OF_DEFINITION:
+				setSourceOfDefinition((LangStringsT)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__SYMBOL:
+				setSymbol((String)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__UNIT:
+				setUnit((String)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__UNIT_ID:
+				setUnitId((ReferenceT)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__VALUE_FORMAT:
+				setValueFormat((String)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__VALUE_LIST:
+				setValueList((ValueListT)newValue);
+				return;
+			case _0Package.DOCUMENT_ROOT__VALUE_TYPE:
+				setValueType((ValueListT)newValue);
+				return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+			case _0Package.DOCUMENT_ROOT__MIXED:
+				getMixed().clear();
+				return;
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				getXMLNSPrefixMap().clear();
+				return;
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				getXSISchemaLocation().clear();
+				return;
+			case _0Package.DOCUMENT_ROOT__CODE:
+				setCode((CodeT)null);
+				return;
+			case _0Package.DOCUMENT_ROOT__DATA_TYPE:
+				setDataType(DATA_TYPE_EDEFAULT);
+				return;
+			case _0Package.DOCUMENT_ROOT__DEFINITION:
+				setDefinition((LangStringsT)null);
+				return;
+			case _0Package.DOCUMENT_ROOT__PREFERRED_NAME:
+				setPreferredName((LangStringsT)null);
+				return;
+			case _0Package.DOCUMENT_ROOT__SHORT_NAME:
+				setShortName(SHORT_NAME_EDEFAULT);
+				return;
+			case _0Package.DOCUMENT_ROOT__SOURCE_OF_DEFINITION:
+				setSourceOfDefinition((LangStringsT)null);
+				return;
+			case _0Package.DOCUMENT_ROOT__SYMBOL:
+				setSymbol(SYMBOL_EDEFAULT);
+				return;
+			case _0Package.DOCUMENT_ROOT__UNIT:
+				setUnit(UNIT_EDEFAULT);
+				return;
+			case _0Package.DOCUMENT_ROOT__UNIT_ID:
+				setUnitId((ReferenceT)null);
+				return;
+			case _0Package.DOCUMENT_ROOT__VALUE_FORMAT:
+				setValueFormat(VALUE_FORMAT_EDEFAULT);
+				return;
+			case _0Package.DOCUMENT_ROOT__VALUE_LIST:
+				setValueList((ValueListT)null);
+				return;
+			case _0Package.DOCUMENT_ROOT__VALUE_TYPE:
+				setValueType((ValueListT)null);
+				return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+			case _0Package.DOCUMENT_ROOT__MIXED:
+				return mixed != null && !mixed.isEmpty();
+			case _0Package.DOCUMENT_ROOT__XMLNS_PREFIX_MAP:
+				return xMLNSPrefixMap != null && !xMLNSPrefixMap.isEmpty();
+			case _0Package.DOCUMENT_ROOT__XSI_SCHEMA_LOCATION:
+				return xSISchemaLocation != null && !xSISchemaLocation.isEmpty();
+			case _0Package.DOCUMENT_ROOT__CODE:
+				return getCode() != null;
+			case _0Package.DOCUMENT_ROOT__DATA_TYPE:
+				return DATA_TYPE_EDEFAULT == null ? getDataType() != null : !DATA_TYPE_EDEFAULT.equals(getDataType());
+			case _0Package.DOCUMENT_ROOT__DEFINITION:
+				return getDefinition() != null;
+			case _0Package.DOCUMENT_ROOT__PREFERRED_NAME:
+				return getPreferredName() != null;
+			case _0Package.DOCUMENT_ROOT__SHORT_NAME:
+				return SHORT_NAME_EDEFAULT == null ? getShortName() != null : !SHORT_NAME_EDEFAULT.equals(getShortName());
+			case _0Package.DOCUMENT_ROOT__SOURCE_OF_DEFINITION:
+				return getSourceOfDefinition() != null;
+			case _0Package.DOCUMENT_ROOT__SYMBOL:
+				return SYMBOL_EDEFAULT == null ? getSymbol() != null : !SYMBOL_EDEFAULT.equals(getSymbol());
+			case _0Package.DOCUMENT_ROOT__UNIT:
+				return UNIT_EDEFAULT == null ? getUnit() != null : !UNIT_EDEFAULT.equals(getUnit());
+			case _0Package.DOCUMENT_ROOT__UNIT_ID:
+				return getUnitId() != null;
+			case _0Package.DOCUMENT_ROOT__VALUE_FORMAT:
+				return VALUE_FORMAT_EDEFAULT == null ? getValueFormat() != null : !VALUE_FORMAT_EDEFAULT.equals(getValueFormat());
+			case _0Package.DOCUMENT_ROOT__VALUE_LIST:
+				return getValueList() != null;
+			case _0Package.DOCUMENT_ROOT__VALUE_TYPE:
+				return getValueType() != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy()) return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (mixed: ");
+		result.append(mixed);
+		result.append(')');
+		return result.toString();
+	}
+
+} //DocumentRootImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/ValueListTImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/ValueListTImpl.java
new file mode 100644
index 0000000..1f43e44
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/ValueListTImpl.java
@@ -0,0 +1,54 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.impl;
+
+import io.shell.admin.iec61360._1._0.ValueListT;
+import io.shell.admin.iec61360._1._0._0Package;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Value List T</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ValueListTImpl extends MinimalEObjectImpl.Container implements ValueListT {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected ValueListTImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return _0Package.Literals.VALUE_LIST_T;
+	}
+
+} //ValueListTImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/_0FactoryImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/_0FactoryImpl.java
new file mode 100644
index 0000000..269354b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/_0FactoryImpl.java
@@ -0,0 +1,143 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.impl;
+
+import io.shell.admin.iec61360._1._0.*;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class _0FactoryImpl extends EFactoryImpl implements _0Factory {
+	/**
+	 * Creates the default factory implementation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public static _0Factory init() {
+		try {
+			_0Factory the_0Factory = (_0Factory)EPackage.Registry.INSTANCE.getEFactory(_0Package.eNS_URI);
+			if (the_0Factory != null) {
+				return the_0Factory;
+			}
+		}
+		catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new _0FactoryImpl();
+	}
+
+	/**
+	 * Creates an instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0FactoryImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public EObject create(EClass eClass) {
+		switch (eClass.getClassifierID()) {
+			case _0Package.CODE_T: return createCodeT();
+			case _0Package.DATA_SPECIFICATION_IEC61630T: return createDataSpecificationIEC61630T();
+			case _0Package.VALUE_LIST_T: return createValueListT();
+			case _0Package.DOCUMENT_ROOT: return createDocumentRoot();
+			default:
+				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public CodeT createCodeT() {
+		CodeTImpl codeT = new CodeTImpl();
+		return codeT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DataSpecificationIEC61630T createDataSpecificationIEC61630T() {
+		DataSpecificationIEC61630TImpl dataSpecificationIEC61630T = new DataSpecificationIEC61630TImpl();
+		return dataSpecificationIEC61630T;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public ValueListT createValueListT() {
+		ValueListTImpl valueListT = new ValueListTImpl();
+		return valueListT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public DocumentRoot createDocumentRoot() {
+		DocumentRootImpl documentRoot = new DocumentRootImpl();
+		return documentRoot;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0Package get_0Package() {
+		return (_0Package)getEPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @deprecated
+	 * @generated
+	 */
+	@Deprecated
+	public static _0Package getPackage() {
+		return _0Package.eINSTANCE;
+	}
+
+} //_0FactoryImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/_0PackageImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/_0PackageImpl.java
new file mode 100644
index 0000000..8fe591e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/impl/_0PackageImpl.java
@@ -0,0 +1,793 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.impl;
+
+import io.shell.admin.iec61360._1._0.CodeT;
+import io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T;
+import io.shell.admin.iec61360._1._0.DocumentRoot;
+import io.shell.admin.iec61360._1._0.ValueListT;
+import io.shell.admin.iec61360._1._0._0Factory;
+import io.shell.admin.iec61360._1._0._0Package;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.emf.ecore.xml.type.XMLTypePackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class _0PackageImpl extends EPackageImpl implements _0Package {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass codeTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass dataSpecificationIEC61630TEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass valueListTEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private EClass documentRootEClass = null;
+
+	/**
+	 * Creates an instance of the model <b>Package</b>, registered with
+	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+	 * package URI value.
+	 * <p>Note: the correct way to create the package is via the static
+	 * factory method {@link #init init()}, which also performs
+	 * initialization of the package, or returns the registered package,
+	 * if one already exists.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see io.shell.admin.iec61360._1._0._0Package#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
+	private _0PackageImpl() {
+		super(eNS_URI, _0Factory.eINSTANCE);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private static boolean isInited = false;
+
+	/**
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+	 *
+	 * <p>This method is used to initialize {@link _0Package#eINSTANCE} when that field is accessed.
+	 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #eNS_URI
+	 * @see #createPackageContents()
+	 * @see #initializePackageContents()
+	 * @generated
+	 */
+	public static _0Package init() {
+		if (isInited) return (_0Package)EPackage.Registry.INSTANCE.getEPackage(_0Package.eNS_URI);
+
+		// Obtain or create and register package
+		Object registered_0Package = EPackage.Registry.INSTANCE.get(eNS_URI);
+		_0PackageImpl the_0Package = registered_0Package instanceof _0PackageImpl ? (_0PackageImpl)registered_0Package : new _0PackageImpl();
+
+		isInited = true;
+
+		// Initialize simple dependencies
+		XMLTypePackage.eINSTANCE.eClass();
+
+		// Obtain or create and register interdependencies
+		Object registeredPackage = EPackage.Registry.INSTANCE.getEPackage(io.shell.admin.aas._1._0._0Package.eNS_URI);
+		io.shell.admin.aas._1._0.impl._0PackageImpl the_0Package_1 = (io.shell.admin.aas._1._0.impl._0PackageImpl)(registeredPackage instanceof io.shell.admin.aas._1._0.impl._0PackageImpl ? registeredPackage : io.shell.admin.aas._1._0._0Package.eINSTANCE);
+
+		// Create package meta-data objects
+		the_0Package.createPackageContents();
+		the_0Package_1.createPackageContents();
+
+		// Initialize created meta-data
+		the_0Package.initializePackageContents();
+		the_0Package_1.initializePackageContents();
+
+		// Mark meta-data to indicate it can't be changed
+		the_0Package.freeze();
+
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(_0Package.eNS_URI, the_0Package);
+		return the_0Package;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getCodeT() {
+		return codeTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getDataSpecificationIEC61630T() {
+		return dataSpecificationIEC61630TEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDataSpecificationIEC61630T_PreferredName() {
+		return (EReference)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDataSpecificationIEC61630T_ShortName() {
+		return (EAttribute)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDataSpecificationIEC61630T_Unit() {
+		return (EAttribute)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDataSpecificationIEC61630T_UnitId() {
+		return (EReference)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDataSpecificationIEC61630T_ValueFormat() {
+		return (EAttribute)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDataSpecificationIEC61630T_SourceOfDefinition() {
+		return (EReference)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDataSpecificationIEC61630T_Symbol() {
+		return (EAttribute)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDataSpecificationIEC61630T_DataType() {
+		return (EAttribute)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDataSpecificationIEC61630T_Definition() {
+		return (EReference)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDataSpecificationIEC61630T_ValueList() {
+		return (EReference)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDataSpecificationIEC61630T_Code() {
+		return (EReference)dataSpecificationIEC61630TEClass.getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getValueListT() {
+		return valueListTEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EClass getDocumentRoot() {
+		return documentRootEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDocumentRoot_Mixed() {
+		return (EAttribute)documentRootEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_XMLNSPrefixMap() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_XSISchemaLocation() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_Code() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDocumentRoot_DataType() {
+		return (EAttribute)documentRootEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_Definition() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_PreferredName() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(6);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDocumentRoot_ShortName() {
+		return (EAttribute)documentRootEClass.getEStructuralFeatures().get(7);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_SourceOfDefinition() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(8);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDocumentRoot_Symbol() {
+		return (EAttribute)documentRootEClass.getEStructuralFeatures().get(9);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDocumentRoot_Unit() {
+		return (EAttribute)documentRootEClass.getEStructuralFeatures().get(10);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_UnitId() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(11);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EAttribute getDocumentRoot_ValueFormat() {
+		return (EAttribute)documentRootEClass.getEStructuralFeatures().get(12);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_ValueList() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(13);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public EReference getDocumentRoot_ValueType() {
+		return (EReference)documentRootEClass.getEStructuralFeatures().get(14);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0Factory get_0Factory() {
+		return (_0Factory)getEFactoryInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private boolean isCreated = false;
+
+	/**
+	 * Creates the meta-model objects for the package.  This method is
+	 * guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void createPackageContents() {
+		if (isCreated) return;
+		isCreated = true;
+
+		// Create classes and their features
+		codeTEClass = createEClass(CODE_T);
+
+		dataSpecificationIEC61630TEClass = createEClass(DATA_SPECIFICATION_IEC61630T);
+		createEReference(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__PREFERRED_NAME);
+		createEAttribute(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__SHORT_NAME);
+		createEAttribute(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__UNIT);
+		createEReference(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__UNIT_ID);
+		createEAttribute(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__VALUE_FORMAT);
+		createEReference(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__SOURCE_OF_DEFINITION);
+		createEAttribute(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__SYMBOL);
+		createEAttribute(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__DATA_TYPE);
+		createEReference(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__DEFINITION);
+		createEReference(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__VALUE_LIST);
+		createEReference(dataSpecificationIEC61630TEClass, DATA_SPECIFICATION_IEC61630T__CODE);
+
+		valueListTEClass = createEClass(VALUE_LIST_T);
+
+		documentRootEClass = createEClass(DOCUMENT_ROOT);
+		createEAttribute(documentRootEClass, DOCUMENT_ROOT__MIXED);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__XMLNS_PREFIX_MAP);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__XSI_SCHEMA_LOCATION);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__CODE);
+		createEAttribute(documentRootEClass, DOCUMENT_ROOT__DATA_TYPE);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__DEFINITION);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__PREFERRED_NAME);
+		createEAttribute(documentRootEClass, DOCUMENT_ROOT__SHORT_NAME);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__SOURCE_OF_DEFINITION);
+		createEAttribute(documentRootEClass, DOCUMENT_ROOT__SYMBOL);
+		createEAttribute(documentRootEClass, DOCUMENT_ROOT__UNIT);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__UNIT_ID);
+		createEAttribute(documentRootEClass, DOCUMENT_ROOT__VALUE_FORMAT);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__VALUE_LIST);
+		createEReference(documentRootEClass, DOCUMENT_ROOT__VALUE_TYPE);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	private boolean isInitialized = false;
+
+	/**
+	 * Complete the initialization of the package and its meta-model.  This
+	 * method is guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void initializePackageContents() {
+		if (isInitialized) return;
+		isInitialized = true;
+
+		// Initialize package
+		setName(eNAME);
+		setNsPrefix(eNS_PREFIX);
+		setNsURI(eNS_URI);
+
+		// Obtain other dependent packages
+		io.shell.admin.aas._1._0._0Package the_0Package_1 = (io.shell.admin.aas._1._0._0Package)EPackage.Registry.INSTANCE.getEPackage(io.shell.admin.aas._1._0._0Package.eNS_URI);
+		XMLTypePackage theXMLTypePackage = (XMLTypePackage)EPackage.Registry.INSTANCE.getEPackage(XMLTypePackage.eNS_URI);
+
+		// Create type parameters
+
+		// Set bounds for type parameters
+
+		// Add supertypes to classes
+
+		// Initialize classes, features, and operations; add parameters
+		initEClass(codeTEClass, CodeT.class, "CodeT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(dataSpecificationIEC61630TEClass, DataSpecificationIEC61630T.class, "DataSpecificationIEC61630T", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getDataSpecificationIEC61630T_PreferredName(), the_0Package_1.getLangStringsT(), null, "preferredName", null, 1, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDataSpecificationIEC61630T_ShortName(), theXMLTypePackage.getString(), "shortName", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDataSpecificationIEC61630T_Unit(), theXMLTypePackage.getString(), "unit", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDataSpecificationIEC61630T_UnitId(), the_0Package_1.getReferenceT(), null, "unitId", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDataSpecificationIEC61630T_ValueFormat(), theXMLTypePackage.getString(), "valueFormat", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDataSpecificationIEC61630T_SourceOfDefinition(), the_0Package_1.getLangStringsT(), null, "sourceOfDefinition", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDataSpecificationIEC61630T_Symbol(), theXMLTypePackage.getString(), "symbol", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDataSpecificationIEC61630T_DataType(), theXMLTypePackage.getString(), "dataType", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDataSpecificationIEC61630T_Definition(), the_0Package_1.getLangStringsT(), null, "definition", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDataSpecificationIEC61630T_ValueList(), this.getValueListT(), null, "valueList", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDataSpecificationIEC61630T_Code(), this.getCodeT(), null, "code", null, 0, 1, DataSpecificationIEC61630T.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+		initEClass(valueListTEClass, ValueListT.class, "ValueListT", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(documentRootEClass, DocumentRoot.class, "DocumentRoot", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getDocumentRoot_Mixed(), ecorePackage.getEFeatureMapEntry(), "mixed", null, 0, -1, null, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_XMLNSPrefixMap(), ecorePackage.getEStringToStringMapEntry(), null, "xMLNSPrefixMap", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_XSISchemaLocation(), ecorePackage.getEStringToStringMapEntry(), null, "xSISchemaLocation", null, 0, -1, null, IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_Code(), this.getCodeT(), null, "code", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDocumentRoot_DataType(), theXMLTypePackage.getString(), "dataType", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_Definition(), the_0Package_1.getLangStringsT(), null, "definition", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_PreferredName(), the_0Package_1.getLangStringsT(), null, "preferredName", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDocumentRoot_ShortName(), theXMLTypePackage.getString(), "shortName", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_SourceOfDefinition(), the_0Package_1.getLangStringsT(), null, "sourceOfDefinition", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDocumentRoot_Symbol(), theXMLTypePackage.getString(), "symbol", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDocumentRoot_Unit(), theXMLTypePackage.getString(), "unit", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_UnitId(), the_0Package_1.getReferenceT(), null, "unitId", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEAttribute(getDocumentRoot_ValueFormat(), theXMLTypePackage.getString(), "valueFormat", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_ValueList(), this.getValueListT(), null, "valueList", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEReference(getDocumentRoot_ValueType(), this.getValueListT(), null, "valueType", null, 0, -2, null, IS_TRANSIENT, IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+
+		// Create resource
+		createResource(eNS_URI);
+
+		// Create annotations
+		// http:///org/eclipse/emf/ecore/util/ExtendedMetaData
+		createExtendedMetaDataAnnotations();
+	}
+
+	/**
+	 * Initializes the annotations for <b>http:///org/eclipse/emf/ecore/util/ExtendedMetaData</b>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void createExtendedMetaDataAnnotations() {
+		String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData";
+		addAnnotation
+		  (codeTEClass,
+		   source,
+		   new String[] {
+			   "name", "code_t",
+			   "kind", "empty"
+		   });
+		addAnnotation
+		  (dataSpecificationIEC61630TEClass,
+		   source,
+		   new String[] {
+			   "name", "dataSpecificationIEC61630_t",
+			   "kind", "elementOnly"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_PreferredName(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "preferredName",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_ShortName(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "shortName",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_Unit(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "unit",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_UnitId(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "unitId",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_ValueFormat(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "valueFormat",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_SourceOfDefinition(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "sourceOfDefinition",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_Symbol(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "symbol",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_DataType(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "dataType",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_Definition(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "definition",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_ValueList(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "valueList",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDataSpecificationIEC61630T_Code(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "code",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (valueListTEClass,
+		   source,
+		   new String[] {
+			   "name", "valueList_t",
+			   "kind", "empty"
+		   });
+		addAnnotation
+		  (documentRootEClass,
+		   source,
+		   new String[] {
+			   "name", "",
+			   "kind", "mixed"
+		   });
+		addAnnotation
+		  (getDocumentRoot_Mixed(),
+		   source,
+		   new String[] {
+			   "kind", "elementWildcard",
+			   "name", ":mixed"
+		   });
+		addAnnotation
+		  (getDocumentRoot_XMLNSPrefixMap(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "xmlns:prefix"
+		   });
+		addAnnotation
+		  (getDocumentRoot_XSISchemaLocation(),
+		   source,
+		   new String[] {
+			   "kind", "attribute",
+			   "name", "xsi:schemaLocation"
+		   });
+		addAnnotation
+		  (getDocumentRoot_Code(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "code",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_DataType(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "dataType",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_Definition(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "definition",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_PreferredName(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "preferredName",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_ShortName(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "shortName",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_SourceOfDefinition(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "sourceOfDefinition",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_Symbol(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "symbol",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_Unit(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "unit",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_UnitId(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "unitId",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_ValueFormat(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "valueFormat",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_ValueList(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "valueList",
+			   "namespace", "##targetNamespace"
+		   });
+		addAnnotation
+		  (getDocumentRoot_ValueType(),
+		   source,
+		   new String[] {
+			   "kind", "element",
+			   "name", "valueType",
+			   "namespace", "##targetNamespace"
+		   });
+	}
+
+} //_0PackageImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0AdapterFactory.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0AdapterFactory.java
new file mode 100644
index 0000000..9358c6a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0AdapterFactory.java
@@ -0,0 +1,189 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.util;
+
+import io.shell.admin.iec61360._1._0.*;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.iec61360._1._0._0Package
+ * @generated
+ */
+public class _0AdapterFactory extends AdapterFactoryImpl {
+	/**
+	 * The cached model package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected static _0Package modelPackage;
+
+	/**
+	 * Creates an instance of the adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0AdapterFactory() {
+		if (modelPackage == null) {
+			modelPackage = _0Package.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Returns whether this factory is applicable for the type of the object.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+	 * <!-- end-user-doc -->
+	 * @return whether this factory is applicable for the type of the object.
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object object) {
+		if (object == modelPackage) {
+			return true;
+		}
+		if (object instanceof EObject) {
+			return ((EObject)object).eClass().getEPackage() == modelPackage;
+		}
+		return false;
+	}
+
+	/**
+	 * The switch that delegates to the <code>createXXX</code> methods.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected _0Switch<Adapter> modelSwitch =
+		new _0Switch<Adapter>() {
+			@Override
+			public Adapter caseCodeT(CodeT object) {
+				return createCodeTAdapter();
+			}
+			@Override
+			public Adapter caseDataSpecificationIEC61630T(DataSpecificationIEC61630T object) {
+				return createDataSpecificationIEC61630TAdapter();
+			}
+			@Override
+			public Adapter caseValueListT(ValueListT object) {
+				return createValueListTAdapter();
+			}
+			@Override
+			public Adapter caseDocumentRoot(DocumentRoot object) {
+				return createDocumentRootAdapter();
+			}
+			@Override
+			public Adapter defaultCase(EObject object) {
+				return createEObjectAdapter();
+			}
+		};
+
+	/**
+	 * Creates an adapter for the <code>target</code>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param target the object to adapt.
+	 * @return the adapter for the <code>target</code>.
+	 * @generated
+	 */
+	@Override
+	public Adapter createAdapter(Notifier target) {
+		return modelSwitch.doSwitch((EObject)target);
+	}
+
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.iec61360._1._0.CodeT <em>Code T</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 io.shell.admin.iec61360._1._0.CodeT
+	 * @generated
+	 */
+	public Adapter createCodeTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T <em>Data Specification IEC61630T</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 io.shell.admin.iec61360._1._0.DataSpecificationIEC61630T
+	 * @generated
+	 */
+	public Adapter createDataSpecificationIEC61630TAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.iec61360._1._0.ValueListT <em>Value List T</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 io.shell.admin.iec61360._1._0.ValueListT
+	 * @generated
+	 */
+	public Adapter createValueListTAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link io.shell.admin.iec61360._1._0.DocumentRoot <em>Document Root</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 io.shell.admin.iec61360._1._0.DocumentRoot
+	 * @generated
+	 */
+	public Adapter createDocumentRootAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for the default case.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null.
+	 * <!-- end-user-doc -->
+	 * @return the new adapter.
+	 * @generated
+	 */
+	public Adapter createEObjectAdapter() {
+		return null;
+	}
+
+} //_0AdapterFactory
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0ResourceFactoryImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0ResourceFactoryImpl.java
new file mode 100644
index 0000000..734c272
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0ResourceFactoryImpl.java
@@ -0,0 +1,67 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.resource.impl.ResourceFactoryImpl;
+
+import org.eclipse.emf.ecore.xmi.XMLResource;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource Factory</b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.iec61360._1._0.util._0ResourceImpl
+ * @generated
+ */
+public class _0ResourceFactoryImpl extends ResourceFactoryImpl {
+	/**
+	 * Creates an instance of the resource factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0ResourceFactoryImpl() {
+		super();
+	}
+
+	/**
+	 * Creates an instance of the resource.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Resource createResource(URI uri) {
+		XMLResource result = new _0ResourceImpl(uri);
+		result.getDefaultSaveOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+		result.getDefaultLoadOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+
+		result.getDefaultSaveOptions().put(XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE);
+
+		result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+		result.getDefaultSaveOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+
+		result.getDefaultLoadOptions().put(XMLResource.OPTION_USE_LEXICAL_HANDLER, Boolean.TRUE);
+		return result;
+	}
+
+} //_0ResourceFactoryImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0ResourceImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0ResourceImpl.java
new file mode 100644
index 0000000..476029d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0ResourceImpl.java
@@ -0,0 +1,43 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.util;
+
+import org.eclipse.emf.common.util.URI;
+
+import org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Resource </b> associated with the package.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.iec61360._1._0.util._0ResourceFactoryImpl
+ * @generated
+ */
+public class _0ResourceImpl extends XMLResourceImpl {
+	/**
+	 * Creates an instance of the resource.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param uri the URI of the new resource.
+	 * @generated
+	 */
+	public _0ResourceImpl(URI uri) {
+		super(uri);
+	}
+
+} //_0ResourceImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0Switch.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0Switch.java
new file mode 100644
index 0000000..75620da
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0Switch.java
@@ -0,0 +1,188 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.util;
+
+import io.shell.admin.iec61360._1._0.*;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * @see io.shell.admin.iec61360._1._0._0Package
+ * @generated
+ */
+public class _0Switch<T> extends Switch<T> {
+	/**
+	 * The cached model package
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected static _0Package modelPackage;
+
+	/**
+	 * Creates an instance of the switch.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0Switch() {
+		if (modelPackage == null) {
+			modelPackage = _0Package.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Checks whether this is a switch for the given package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param ePackage the package in question.
+	 * @return whether this is a switch for the given package.
+	 * @generated
+	 */
+	@Override
+	protected boolean isSwitchFor(EPackage ePackage) {
+		return ePackage == modelPackage;
+	}
+
+	/**
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
+	@Override
+	protected T doSwitch(int classifierID, EObject theEObject) {
+		switch (classifierID) {
+			case _0Package.CODE_T: {
+				CodeT codeT = (CodeT)theEObject;
+				T result = caseCodeT(codeT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.DATA_SPECIFICATION_IEC61630T: {
+				DataSpecificationIEC61630T dataSpecificationIEC61630T = (DataSpecificationIEC61630T)theEObject;
+				T result = caseDataSpecificationIEC61630T(dataSpecificationIEC61630T);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.VALUE_LIST_T: {
+				ValueListT valueListT = (ValueListT)theEObject;
+				T result = caseValueListT(valueListT);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			case _0Package.DOCUMENT_ROOT: {
+				DocumentRoot documentRoot = (DocumentRoot)theEObject;
+				T result = caseDocumentRoot(documentRoot);
+				if (result == null) result = defaultCase(theEObject);
+				return result;
+			}
+			default: return defaultCase(theEObject);
+		}
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Code T</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>Code T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCodeT(CodeT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Data Specification IEC61630T</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>Data Specification IEC61630T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDataSpecificationIEC61630T(DataSpecificationIEC61630T object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Value List T</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>Value List T</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseValueListT(ValueListT object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Document Root</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>Document Root</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDocumentRoot(DocumentRoot object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch, but this is the last case anyway.
+	 * <!-- end-user-doc -->
+	 * @param object the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+	 * @generated
+	 */
+	@Override
+	public T defaultCase(EObject object) {
+		return null;
+	}
+
+} //_0Switch
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0XMLProcessor.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0XMLProcessor.java
new file mode 100644
index 0000000..f184979
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src-gen/io/shell/admin/iec61360/_1/_0/util/_0XMLProcessor.java
@@ -0,0 +1,65 @@
+/**
+ * ****************************************************************************
+ *   Copyright (c) 2020 CEA LIST.
+ *  
+ *  
+ *   All rights reserved. This program and the accompanying materials
+ *   are made available under the terms of the Eclipse Public License 2.0
+ *   which accompanies this distribution, and is available at
+ *   https://www.eclipse.org/legal/epl-2.0/
+ *  
+ *   SPDX-License-Identifier: EPL-2.0
+ *  
+ *   Contributors:
+ *    Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *  
+ *  ****************************************************************************
+ */
+package io.shell.admin.iec61360._1._0.util;
+
+import io.shell.admin.iec61360._1._0._0Package;
+
+import java.util.Map;
+
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.resource.Resource;
+
+import org.eclipse.emf.ecore.xmi.util.XMLProcessor;
+
+/**
+ * This class contains helper methods to serialize and deserialize XML documents
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ * @generated
+ */
+public class _0XMLProcessor extends XMLProcessor {
+
+	/**
+	 * Public constructor to instantiate the helper.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public _0XMLProcessor() {
+		super((EPackage.Registry.INSTANCE));
+		_0Package.eINSTANCE.eClass();
+	}
+	
+	/**
+	 * Register for "*" and "xml" file extensions the _0ResourceFactoryImpl factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected Map<String, Resource.Factory> getRegistrations() {
+		if (registrations == null) {
+			super.getRegistrations();
+			registrations.put(XML_EXTENSION, new _0ResourceFactoryImpl());
+			registrations.put(STAR_EXTENSION, new _0ResourceFactoryImpl());
+		}
+		return registrations;
+	}
+
+} //_0XMLProcessor
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/handler/Activator.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/handler/Activator.java
new file mode 100644
index 0000000..dffbbc7
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/handler/Activator.java
@@ -0,0 +1,82 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.import2papyrus.handler;
+
+import org.eclipse.papyrus.infra.core.log.LogHelper;
+import org.eclipse.ui.plugin.AbstractUIPlugin;
+import org.osgi.framework.BundleContext;
+
+/**
+ * The activator class controls the plug-in life cycle.
+ */
+public class Activator extends AbstractUIPlugin {
+
+	/**
+	 * The plug-in ID.
+	 */
+	public static final String PLUGIN_ID = "org.eclipse.papyrus.aas.import2papyrus"; //$NON-NLS-1$
+
+	/**
+	 * The shared instance.
+	 */
+	private static Activator plugin;
+
+	/**
+	 * The log helper.
+	 */
+	public static LogHelper log;
+
+	/**
+	 * Returns the shared instance.
+	 *
+	 * @return The shared instance.
+	 */
+	public static Activator getDefault() {
+		return plugin;
+	}
+
+	/**
+	 * The constructor.
+	 */
+	public Activator() {
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
+	 */
+	@Override
+	public void start(final BundleContext context) throws Exception {
+		super.start(context);
+		plugin = this;
+		log = new LogHelper(this);
+	}
+
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
+	 */
+	@Override
+	public void stop(final BundleContext context) throws Exception {
+		plugin = null;
+		super.stop(context);
+	}
+
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/handler/ImportAASXHandler.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/handler/ImportAASXHandler.java
new file mode 100644
index 0000000..9f1e8b6
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/handler/ImportAASXHandler.java
@@ -0,0 +1,262 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.import2papyrus.handler;
+
+import java.io.File;
+import java.io.IOException;
+import java.util.HashSet;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Set;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.resources.IWorkspaceRoot;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.papyrus.aas.import2papyrus.messages.Messages;
+import org.eclipse.papyrus.aas.import2papyrus.transformations.UMLfromAASXTransformationLauncher;
+import org.eclipse.papyrus.uml.m2m.qvto.common.MigrationParameters.ThreadConfig;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.ui.PlatformUI;
+import org.w3c.dom.Document;
+import org.w3c.dom.Element;
+import org.w3c.dom.Node;
+import org.w3c.dom.NodeList;
+import org.xml.sax.SAXException;
+
+import com.google.common.collect.Sets;
+
+/**
+ * The handler to run SysML1.1 import action when a file is selected.
+ */
+public class ImportAASXHandler {
+
+	/**
+	 * the extensions of the files to import
+	 */
+	private Set<String> extensionOfFilesToImport;
+
+	IResource project;
+
+	/**
+	 * Constructor.
+	 */
+	public ImportAASXHandler() {
+
+		extensionOfFilesToImport = Sets.newHashSet(Messages.RELS_FILE_EXTENSION);
+	}
+
+	public void importFiles(Set<IFile> filesToImport) {
+
+		Control baseControl = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
+
+		runTransformation(null, baseControl, filesToImport);
+
+	}
+
+	public IFile getAASXRelationshipRootFile(IResource project) {
+
+		this.project = project;
+		IFile returnedfile = null;
+		IWorkspaceRoot myWorkspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
+		IPath path = project.getLocation();
+		System.out.println(path);
+		IContainer container = myWorkspaceRoot.getContainerForLocation(path);
+
+		IResource[] iResources;
+		try {
+			iResources = container.members();
+
+			for (IResource iR : iResources) {
+
+				if (iR.getType() == IResource.FOLDER && iR.getName().equals("aasx")) {
+
+					IPath path2 = iR.getLocation();
+					IContainer container2 = myWorkspaceRoot.getContainerForLocation(path2);
+					IResource[] iResources2 = container2.members();
+					for (IResource iR2 : iResources2) {
+
+						if (iR2.getType() == IResource.FOLDER && iR2.getName().equals("_rels")) {
+							IPath path3 = iR2.getLocation();
+							IContainer container3 = myWorkspaceRoot.getContainerForLocation(path3);
+							IResource[] iResources3 = container3.members();
+							for (IResource iR3 : iResources3) {
+								if (iR3 instanceof IFile) {
+									if ("rels".equalsIgnoreCase(iR3.getFileExtension())
+											&& iR3.getName().equals("aasx-origin.rels"))
+										returnedfile = (IFile) iR3;
+								}
+							}
+						}
+
+					}
+
+				}
+
+			}
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+
+		return returnedfile;
+
+	}
+
+	public Object execute(IProject project) throws ExecutionException {
+
+		// get the Project and parse its sub folder
+
+		Set<IFile> filesToImport = new HashSet<IFile>();
+
+		IFile selectedFile = getAASXRootFile(project);
+
+		filesToImport.add(selectedFile);
+
+		importFiles(filesToImport);
+
+		return null;
+	}
+
+	private IFile getAASXRootFile(IProject project) {
+		IFile aasx_origin = getAASXRelationshipRootFile(project);
+		IFile aasx_root = null;
+		String aasx_path = null;
+		try {
+			if (aasx_origin != null) {
+				File fXmlFile = new File(aasx_origin.getLocationURI());
+				DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
+				DocumentBuilder dBuilder;
+				dBuilder = dbFactory.newDocumentBuilder();
+				Document doc = dBuilder.parse(fXmlFile);
+
+				// optional, but recommended
+				// read this -
+				// http://stackoverflow.com/questions/13786607/normalization-in-dom-parsing-with-java-how-does-it-work
+				doc.getDocumentElement().normalize();
+
+				System.out.println("Root element :" + doc.getDocumentElement().getNodeName());
+				NodeList relationships = doc.getElementsByTagName("Relationship");
+				for (int temp = 0; temp < relationships.getLength(); temp++) {
+					Node nNode = relationships.item(temp);
+					if (nNode.getNodeType() == Node.ELEMENT_NODE) {
+						Element eElement = (Element) nNode;
+						if (eElement.getAttribute("Type")
+								.equals("http://www.admin-shell.io/aasx/relationships/aas-spec")) {
+							aasx_path = eElement.getAttribute("Target");
+							IWorkspaceRoot myWorkspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
+							IProject myProject = myWorkspaceRoot.getProject(project.getName());
+							IContainer container = (IContainer) myProject;
+							IResource file = container.findMember(aasx_path);
+
+							if (file != null && file instanceof IFile) {
+								// set the result to be the first file found
+								aasx_root = (IFile) file;
+							}
+
+						}	            
+
+					}
+				}
+			}
+		} catch (ParserConfigurationException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		} catch (SAXException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+		System.out.println(aasx_root.getLocationURI());
+		System.out.println(aasx_root.getFullPath());
+		System.out.println(aasx_root.getFileExtension());
+		return aasx_root;
+	}
+
+	private IFile getFileInProject(IContainer myProject, String file_name) {
+		IFile returnedfile = null;
+		IResource[] iResources;
+		IWorkspaceRoot myWorkspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
+		try {
+			iResources = myProject.members();
+
+			for (IResource iR : iResources) {
+
+				if (iR.getType() == IResource.FOLDER) {
+
+					IPath path2 = iR.getLocation();
+					IContainer container2 = myWorkspaceRoot.getContainerForLocation(path2);
+					IResource[] iResources2 = container2.members();
+					for (IResource iR2 : iResources2) {
+
+						if (iR2.getType() == IResource.FOLDER) {
+							IPath path3 = iR2.getLocation();
+							IContainer container3 = myWorkspaceRoot.getContainerForLocation(path3);
+							IResource[] iResources3 = container3.members();
+							for (IResource iR3 : iResources3) {
+								if (iR3 instanceof IFile) {
+									if ("rels".equalsIgnoreCase(iR3.getFileExtension())
+											&& iR3.getName().equals(file_name))
+										returnedfile = (IFile) iR3;
+								}
+							}
+						}
+
+					}
+
+				}
+
+			}
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+
+		return returnedfile;
+	}
+
+	protected void runTransformation(final ThreadConfig config, final Control baseControl,
+			final Set<IFile> filesToImport) {
+		List<URI> urisToImport = new LinkedList<URI>();
+
+		for (IFile selectedFile : filesToImport) {
+
+			URI uri = URI.createPlatformResourceURI(selectedFile.getFullPath().toString(), true);
+
+			urisToImport.add(uri);
+		}
+		runTransformation(config, baseControl, urisToImport, project);
+	}
+
+	protected void runTransformation(final ThreadConfig config, final Control baseControl, final List<URI> urisToImport,
+			IResource project) {
+		UMLfromAASXTransformationLauncher launcher = new UMLfromAASXTransformationLauncher(config, baseControl,
+				project);
+		launcher.run(urisToImport);
+	}
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/messages/Messages.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/messages/Messages.java
new file mode 100644
index 0000000..d13f464
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/messages/Messages.java
@@ -0,0 +1,45 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.import2papyrus.messages;
+
+import org.eclipse.osgi.util.NLS;
+
+
+/**
+ * The messages.
+ */
+public class Messages extends NLS {
+	
+	private static final String BUNDLE_NAME = "org.eclipse.papyrus.aas.import2papyrus.messages.messages"; //$NON-NLS-1$
+	
+
+	public static String WizardTitle ; 
+	
+	
+	public static String SelectTheFileToImport ; 
+	
+	public static String RELS_FILE_EXTENSION ;
+
+	
+	static {
+		// initialize resource bundle
+		NLS.initializeMessages(BUNDLE_NAME, Messages.class);
+		
+	}
+
+	private Messages() {
+	}
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/messages/messages.properties b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/messages/messages.properties
new file mode 100644
index 0000000..b00ed7e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/messages/messages.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2020 CEA LIST, and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#
+###############################################################################
+WizardTitle=Papyrus Project Generation Wizard
+SelectTheFileToImport=Please select an ASSX file
+RELS_FILE_EXTENSION=rels
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/AAS2UMLSwitch.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/AAS2UMLSwitch.java
new file mode 100644
index 0000000..c60ce4a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/AAS2UMLSwitch.java
@@ -0,0 +1,473 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.import2papyrus.transformations;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.transaction.RecordingCommand;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.gmf.runtime.common.core.command.CommandResult;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.emf.commands.core.command.AbstractTransactionalCommand;
+import org.eclipse.gmf.runtime.emf.commands.core.command.CompositeTransactionalCommand;
+import org.eclipse.gmf.runtime.emf.type.core.requests.CreateElementRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.core.services.ExtensionServicesRegistry;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
+import org.eclipse.papyrus.infra.emf.gmf.command.GMFtoEMFCommandWrapper;
+import org.eclipse.papyrus.infra.services.edit.service.ElementEditServiceUtils;
+import org.eclipse.papyrus.infra.services.edit.service.IElementEditService;
+import org.eclipse.papyrus.uml.service.types.element.UMLElementTypes;
+import org.eclipse.papyrus.uml.tools.commands.ApplyStereotypeCommand;
+import org.eclipse.papyrus.uml.tools.utils.StereotypeUtil;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Model;
+import org.eclipse.uml2.uml.Package;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Stereotype;
+import org.eclipse.uml2.uml.UMLPackage;
+
+import io.shell.admin.aas._1._0.AasenvT;
+import io.shell.admin.aas._1._0.AssetAdministrationShellT;
+import io.shell.admin.aas._1._0.AssetAdministrationShellsT;
+import io.shell.admin.aas._1._0.AssetT;
+import io.shell.admin.aas._1._0.AssetsT;
+import io.shell.admin.aas._1._0.DocumentRoot;
+import io.shell.admin.aas._1._0.LangStringsT;
+import io.shell.admin.aas._1._0.SubmodelT;
+import io.shell.admin.aas._1._0.SubmodelsT;
+import io.shell.admin.aas._1._0._0Package;
+import io.shell.admin.aas._1._0.util._0Switch;
+
+public class AAS2UMLSwitch extends _0Switch<EObject> {
+
+	public Map<EObject, EObject> transformedMap = new HashMap<>();
+	public Resource umlResource;
+	public Resource aasxResource;
+	public TransactionalEditingDomain domain;
+	List<EObject> umlElements = new ArrayList<>();
+
+	public Resource doTransform(Resource aasxResource, Resource umlResource) {
+		this.umlResource = umlResource;
+		this.aasxResource = aasxResource;
+		ServicesRegistry registry = createServicesRegistry();
+		this.domain = getTransactionalDomain(registry);
+		Iterator<EObject> iter = aasxResource.getAllContents();
+
+		// call transfo for all diagrams in the rhapsody project
+		while (iter.hasNext()) {
+			EObject eObject = (EObject) iter.next();
+			if (eObject instanceof DocumentRoot) {
+				AasenvT aasenv = ((DocumentRoot) eObject).getAasenv();
+				transform(aasenv);
+			}
+		}
+		// umlResource.getContents().addAll(umlElements);
+
+		try {
+			umlResource.save(null);
+		} catch (IOException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+
+		// deleteTemporaryFiles();
+		return umlResource;
+	}
+
+	private Model getModel() {
+		Iterator<EObject> iter = umlResource.getAllContents();
+
+		// call transfo for all diagrams in the rhapsody project
+		while (iter.hasNext()) {
+			EObject eObject = (EObject) iter.next();
+			if (eObject instanceof Model) {
+				return (Model) eObject;
+			}
+		}
+		return null;
+	}
+
+	private EObject transform(EObject object) {
+
+		// first called for AssetT , doswitch calls the case AssetT ovverriden here
+		EObject ret = null;
+		if (object != null) {
+			ret = transformedMap.get(object);
+			if (ret == null) {
+				ret = (EObject) doSwitch(object);
+
+			}
+		}
+
+		return ret;
+	}
+
+	@Override
+	public EObject caseAasenvT(AasenvT object) {
+		// this is equivalent to Model root UML in UML
+		// model already created, so we only return the Model, do not create any thing
+		transform(object.getAssetAdministrationShells());
+		transform(object.getAssets());
+		transform(object.getSubmodels());
+
+		return null;
+	}
+
+	public EObject caseAssetAdministrationShellsT(AssetAdministrationShellsT object) {
+
+		EObject result = null;
+		if (object != null) {
+			result = (EObject) createPackage("AAS");
+
+		}
+		transformedMap.put(object, result);
+		umlElements.add(result);
+
+		// transform the contents of AASsT
+		EList<AssetAdministrationShellT> aasList = object.getAssetAdministrationShell();
+		if (aasList != null && !aasList.isEmpty())
+			for (AssetAdministrationShellT aas : aasList) {
+				transform(aas);
+			}
+		return result;
+	}
+
+	public EObject caseAssetAdministrationShellT(AssetAdministrationShellT object) {
+		// we create an AAS
+		EObject result = null;
+		if (object != null) {
+
+			result = (EObject) createAssetAdministrationShell(object);
+
+		}
+		transformedMap.put(object, result);
+		umlElements.add(result);
+		return result;
+	}
+
+	public EObject caseAssetsT(AssetsT object) {
+		// we create a Package for Assets
+		EObject result = null;
+		if (object != null) {
+			result = (EObject) createPackage("Assets");
+
+		}
+		transformedMap.put(object, result);
+		umlElements.add(result);
+
+		// transform the contents of AssetsT
+		EList<AssetT> assetList = object.getAsset();
+		if (assetList != null && !assetList.isEmpty())
+			for (AssetT asset : assetList) {
+				transform(asset);
+			}
+		return result;
+	}
+
+	public EObject caseAssetT(AssetT object) {
+		// we create an Asset
+		EObject result = null;
+		if (object != null) {
+
+			result = (EObject) createAsset(object);
+
+		}
+		transformedMap.put(object, result);
+		umlElements.add(result);
+		return result;
+	}
+
+	public EObject caseSubmodelsT(SubmodelsT object) {
+		// we create a Package for Submodels
+		EObject result = null;
+		if (object != null) {
+			result = (EObject) createPackage("Submodels");
+
+		}
+		transformedMap.put(object, result);
+		umlElements.add(result);
+
+		// transform the contents of Submodels
+		EList<SubmodelT> submodelList = object.getSubmodel();
+		if (submodelList != null && !submodelList.isEmpty())
+			for (SubmodelT submodel : submodelList) {
+				transform(submodel);
+			}
+		return result;
+	}
+
+	public EObject caseSubmodelT(SubmodelT object) {
+		// we create an Submodel
+		EObject result = null;
+		if (object != null) {
+
+			result = (EObject) createSubModel(object);
+
+		}
+		transformedMap.put(object, result);
+		umlElements.add(result);
+		return result;
+	}
+
+	private void setPropertyValue(Element target, Stereotype stereotype, String name, Object sourceValue) {
+
+		RecordingCommand setValueCommand = new RecordingCommand(domain) {
+
+			@Override
+			protected void doExecute() {
+				target.setValue(stereotype, name, sourceValue);
+
+			}
+		};
+
+		if (setValueCommand.canExecute())
+			setValueCommand.execute();
+	}
+
+	private Class createClass(String name, EObject container) {
+		// we create a Class
+
+		Class result = null;
+
+		if (container != null) {
+
+			CreateElementRequest request = new CreateElementRequest(domain, container, UMLElementTypes.CLASS);
+			IElementEditService provider = ElementEditServiceUtils.getCommandProvider(container);
+			ICommand command = provider.getEditCommand(request);
+			domain.getCommandStack().execute(new GMFtoEMFCommandWrapper(command));
+			result = (Class) request.getNewElement();
+			SetRequest setRequest = new SetRequest((EObject) result, UMLPackage.eINSTANCE.getNamedElement_Name(), name);
+
+			ICommand command2 = provider.getEditCommand(setRequest);
+			domain.getCommandStack().execute(new GMFtoEMFCommandWrapper(command2));
+
+		}
+
+		return result;
+	}
+
+	private Package createPackage(String name) {
+		// we create a Package for Assets
+		Model model = getModel();
+		Package result = null;
+		// Model model = (Model) ((UMLResource) umlResource).getContents().get(0);
+		if (model != null) {
+			// create a Package and name it AAS
+			CreateElementRequest request = new CreateElementRequest(domain, model, UMLElementTypes.PACKAGE);
+			IElementEditService provider = ElementEditServiceUtils.getCommandProvider(model);
+			ICommand command = provider.getEditCommand(request);
+			domain.getCommandStack().execute(new GMFtoEMFCommandWrapper(command));
+			result = (Package) request.getNewElement();
+			SetRequest setRequest = new SetRequest((EObject) result, UMLPackage.eINSTANCE.getNamedElement_Name(), name);
+
+			ICommand command2 = provider.getEditCommand(setRequest);
+			domain.getCommandStack().execute(new GMFtoEMFCommandWrapper(command2));
+
+		}
+
+		return result;
+	}
+
+	private EObject createAsset(AssetT object) {
+
+		String name = object.getIdShort().getValue();
+		EObject container = getModel().getPackagedElement("Assets");
+		Class element = createClass(name, container);
+		// apply AAS::AssetAdministrationShell Stereotype on Class
+		Stereotype stereotype = element.getApplicableStereotype("AAS::Asset");
+		applyRequiredStereotype(element, stereotype);
+		// set the stereotype properties Values
+		setPropertiesValues(object, element);
+		return element;
+	}
+
+	private EObject createSubModel(SubmodelT object) {
+
+		String name = object.getIdShort().getValue();
+		EObject container = getModel().getPackagedElement("Submodels");
+		Class element = createClass(name, container);
+		// apply AAS::AssetAdministrationShell Stereotype on Class
+		Stereotype stereotype = element.getApplicableStereotype("AAS::Submodel");
+		applyRequiredStereotype(element, stereotype);
+		// set the stereotype properties Values
+				setPropertiesValues(object, element);
+			
+		return element;
+	}
+
+	private EObject createAssetAdministrationShell(AssetAdministrationShellT object) {
+
+		String name = object.getIdShort().getValue();
+		EObject container = getModel().getPackagedElement("AAS");
+		Class element = createClass(name, container);
+		// apply AAS::AssetAdministrationShell Stereotype on Class
+		Stereotype stereotype = element.getApplicableStereotype("AAS::AssetAdministrationShell");
+		applyRequiredStereotype(element, stereotype);
+		// set the stereotype properties Values
+		setPropertiesValues(object, element);
+		return element;
+	}
+
+	private void applyRequiredStereotype(Element el, Stereotype stereotype) {
+
+		ApplyStereotypeCommand applyCommand = new ApplyStereotypeCommand(el, stereotype, domain);
+		domain.getCommandStack().execute(applyCommand);
+	}
+
+	private void setPropertiesValues(EObject source, Element target) {
+
+		Stereotype stereotype = target.getAppliedStereotypes().get(0);
+		EClass eCalss = source.eClass();
+		EList<EStructuralFeature> eAllAttributes = eCalss.getEAllStructuralFeatures();
+		CompositeTransactionalCommand command = new CompositeTransactionalCommand(domain, "Setting Sterteotype Propeties Value"); //$NON-NLS-1$
+		for (EStructuralFeature att : eAllAttributes) {
+			int attributeID = att.getFeatureID();
+			String name = getTargetPropertyFromSource(attributeID);
+			if (name != null) {
+				Property property = StereotypeUtil.getPropertyByName(stereotype,
+						name);
+				Object sourceValue = source.eGet(att);
+				Object getsourceValue;
+				if (name.equals("description") && sourceValue instanceof LangStringsT)
+				{
+					// get only the English description
+					getsourceValue= ((LangStringsT) sourceValue).getLangString().get(0).getValue();
+				}
+				else 
+				{
+					getsourceValue =sourceValue;
+				}
+				if (getsourceValue!= null)
+				{
+				//Object sourceValue = 	StereotypeUtil.displayPropertyValue(stereotype, property, target, "");
+				AbstractTransactionalCommand c = new AbstractTransactionalCommand(domain, name, null) {
+					
+					@Override
+					protected CommandResult doExecuteWithResult(IProgressMonitor arg0, IAdaptable arg1)
+							throws ExecutionException {
+						target.setValue(stereotype, name, getsourceValue);
+						return CommandResult.newOKCommandResult();
+					}
+				};
+				
+				
+				
+				command.add(c);
+			}
+			}
+		}
+		// execute command
+		if (command!=null && command.canExecute())
+		try {
+			command.execute(null, null);
+		} catch (ExecutionException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+	}
+
+	private String getTargetPropertyFromSource(int attributeID) {
+
+		switch (attributeID) {
+		
+		case _0Package.ASSET_ADMINISTRATION_SHELL_T__CATEGORY:
+			return "category";
+		
+		case _0Package.ASSET_ADMINISTRATION_SHELL_T__DESCRIPTION:
+			return "description";
+		
+		default:
+			return null;
+		}
+
+	}
+
+	protected ServicesRegistry createServicesRegistry() {
+
+		ServicesRegistry result = null;
+
+		try {
+			result = new ExtensionServicesRegistry(org.eclipse.papyrus.infra.core.Activator.PLUGIN_ID);
+		} catch (ServiceException e) {
+			// couldn't create the registry? Fatal problem
+			e.printStackTrace();
+		}
+
+		try {
+			// have to create the model set and populate it with the DI model
+			// before initializing other services that actually need the DI
+			// model, such as the SashModel Manager service
+			result.startServicesByClassKeys(ModelSet.class);
+
+		} catch (ServiceException ex) {
+			// Ignore this exception: some services may not have been loaded,
+			// which is probably normal at this point
+		}
+
+		return result;
+	}
+
+	protected void initServicesRegistry(ServicesRegistry registry) throws ServiceException {
+		try {
+			registry.startRegistry();
+		} catch (ServiceException ex) {
+			// Ignore this exception: some services may not have been loaded,
+			// which is probably normal at this point
+		}
+
+		registry.getService(ModelSet.class);
+	}
+
+	public TransactionalEditingDomain getTransactionalDomain(ServicesRegistry registry) {
+		ResourceSet res = this.umlResource.getResourceSet();
+		TransactionalEditingDomain domain = TransactionalEditingDomain.Factory.INSTANCE.createEditingDomain(res);
+
+		if (domain == null && registry != null) {
+
+			// have to create the model set and populate it with the DI model
+			// before initializing other services that actually need the DI
+			// model, such as the SashModel Manager service
+			try {
+				ModelSet modelSet = registry.getService(ModelSet.class);
+				// initServicesRegistry(registry);
+				domain = TransactionalEditingDomain.Factory.INSTANCE.createEditingDomain(modelSet);
+			} catch (ServiceException e) {
+				// TODO Auto-generated catch block
+				e.printStackTrace();
+			}
+
+		}
+		return domain;
+	}
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/AbstractImportTransformation.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/AbstractImportTransformation.java
new file mode 100644
index 0000000..ed095f2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/AbstractImportTransformation.java
@@ -0,0 +1,608 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.import2papyrus.transformations;
+
+import java.io.File;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Iterator;
+import java.util.LinkedList;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.core.runtime.Assert;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.MultiStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.IJobChangeEvent;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.core.runtime.jobs.JobChangeAdapter;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EAnnotation;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.ExtendedMetaData;
+import org.eclipse.emf.ecore.xmi.XMIResource;
+import org.eclipse.emf.ecore.xmi.XMLResource;
+import org.eclipse.emf.ecore.xmi.impl.XMIResourceImpl;
+import org.eclipse.gmf.runtime.emf.core.resources.GMFResource;
+import org.eclipse.gmf.runtime.notation.Diagram;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.papyrus.infra.emf.resource.ShardResourceHelper;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.uml.m2m.qvto.common.Activator;
+import org.eclipse.papyrus.uml.m2m.qvto.common.MigrationParameters.MigrationParametersFactory;
+import org.eclipse.papyrus.uml.m2m.qvto.common.MigrationParameters.ThreadConfig;
+import org.eclipse.papyrus.uml.m2m.qvto.common.concurrent.ExecutorsPool;
+import org.eclipse.papyrus.uml.m2m.qvto.common.internal.extension.TransformationExtension;
+import org.eclipse.papyrus.uml.m2m.qvto.common.transformation.IDependencyAnalysisHelper;
+import org.eclipse.papyrus.uml.m2m.qvto.common.transformation.IImportTransformation;
+import org.eclipse.papyrus.uml.m2m.qvto.common.transformation.MigrationResourceSet;
+import org.eclipse.papyrus.uml.m2m.qvto.common.transformation.MigrationResourceSetImpl;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.statushandlers.StatusManager;
+import org.eclipse.uml2.common.util.CacheAdapter;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Extension;
+import org.eclipse.uml2.uml.resource.UMLResource;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+/**
+ * Executes a single import-to-Papyrus transformation
+ *
+ *
+ */
+public abstract class AbstractImportTransformation implements IImportTransformation {
+	/** For debug purpose */
+	protected static boolean DEBUG = true;
+
+	// SourceURI is the input
+	protected final URI sourceURI;
+
+	// targetURI is computed during the transformation
+	protected URI targetURI;
+
+	protected URI outUML, outNotation, outSashModel, inPapyrusProfiles;
+
+	protected MigrationResourceSet resourceSet;
+
+	protected Job job;
+
+	
+
+	protected ThreadConfig parameters;
+
+	protected boolean complete = false;
+
+	
+	/** Execution time, in nano-seconds */
+	protected long executionTime = 0L;
+
+	/** Execution time of the initial model loading / ns */
+	protected long loadingTime = 0L;
+
+	/** Execution time for handling dangling references / ns */
+	protected long danglingRefTime = 0L;
+
+	/** Execution time for executing the UML-RT transformation / ns */
+	protected long importExtensionsTime = 0L;
+
+	/** Source URI to Target URI map (For Models/Libraries/Fragments) */
+	protected final Map<URI, URI> uriMappings = new HashMap<>();
+
+	/** Source URI to Target URI map (For Profiles) */
+	protected final Map<URI, URI> profileURIMappings = new HashMap<>();
+
+	protected List<Diagram> diagramsToDelete = new LinkedList<>();
+
+	protected static final ExecutorsPool executorsPool = new ExecutorsPool(2);
+
+	
+	/**
+	 * EPackages corresponding to source native profiles with specific support in
+	 * the transformation
+	 */
+	protected static final Set<EPackage> sourceEPackages = new HashSet<>();
+
+	protected final IDependencyAnalysisHelper analysisHelper;
+
+	/** Extensions contributed via other plug-ins */
+	protected final List<TransformationExtension> extensions;
+
+	/** Accumulation of incremental update traces from each transformation. */
+
+	public AbstractImportTransformation(URI sourceURI) {
+		this(sourceURI, MigrationParametersFactory.eINSTANCE.createThreadConfig(), null);
+	}
+
+	public AbstractImportTransformation(URI sourceURI, ThreadConfig config, IDependencyAnalysisHelper analysisHelper) {
+		Assert.isNotNull(sourceURI);
+		this.sourceURI = sourceURI;
+		this.parameters = config;
+		this.analysisHelper = analysisHelper;
+		this.extensions = getAllExtensions();
+	}
+
+	/**
+	 * Instantiate all the extensions for a specific transformation
+	 *
+	 * @return A non-null (potentially empty) list of extensions
+	 */
+	protected static List<TransformationExtension> getAllExtensions() {
+		
+		return Collections.emptyList();
+	}
+
+	/**
+	 * Executes the transformation
+	 *
+	 * The transformation will be executed asynchronously in a Job
+	 */
+	public void run(final boolean isUserJob) {
+
+		job = new Job("Import " + getModelName()) {
+
+			@Override
+			protected IStatus run(IProgressMonitor monitor) {
+				long begin = System.nanoTime();
+				IStatus result = AbstractImportTransformation.this.run(monitor);
+				long end = System.nanoTime();
+				executionTime = end - begin;
+				return result;
+			}
+		};
+
+		job.setUser(isUserJob);
+
+		job.addJobChangeListener(new JobChangeAdapter() {
+
+			@Override
+			public void done(IJobChangeEvent event) {
+				complete = true;
+				if (isUserJob) {
+					if (event.getResult().getSeverity() == IStatus.OK) {
+						Display.getDefault().asyncExec(new Runnable() {
+
+							@Override
+							public void run() {
+								MessageDialog.openInformation(
+										PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), job.getName(),
+										String.format("Model %s has been successfully imported", getModelName()));
+							}
+						});
+
+					} else if (event.getResult().getSeverity() == IStatus.CANCEL) {
+						Display.getDefault().asyncExec(new Runnable() {
+
+							@Override
+							public void run() {
+								MessageDialog.openInformation(
+										PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), job.getName(),
+										String.format("Operation canceled: %s", getModelName()));
+							}
+						});
+					} else {
+						StatusManager.getManager().handle(event.getResult(), StatusManager.BLOCK);
+					}
+				}
+			}
+
+		});
+
+		job.schedule();
+	}
+
+	public void waitForCompletion() {
+		try {
+			job.join();
+		} catch (InterruptedException ex) {
+			Activator.log.error(ex);
+		}
+	}
+
+	public boolean isComplete() {
+		return complete;
+	}
+
+	public IStatus getStatus() {
+		if (job == null) { // If job hasn't been created, the operation has probably been canceled before
+							// the transformation is ran
+			return new Status(IStatus.CANCEL, Activator.PLUGIN_ID, "Operation canceled");
+		}
+		return job.getResult();
+	}
+
+	public long getExecutionTime() {
+		return executionTime;
+	}
+
+	public long getLoadingTime() {
+		return loadingTime;
+	}
+
+	public long getHandleDanglingRefTime() {
+		return danglingRefTime;
+	}
+
+	public long getImportExtensionsTime() {
+		
+		return importExtensionsTime;
+	}
+
+	public URI getTargetURI() {
+		return targetURI;
+	}
+
+	/**
+	 * Initializes the resource set, and resolve all dependencies
+	 */
+	protected void initResourceSet(IProgressMonitor monitor) {
+		resourceSet = new MigrationResourceSetImpl();
+		synchronized (UMLUtil.class) {
+			UMLUtil.init(resourceSet);
+		}
+		resourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_ATTACHMENT, true);
+		resourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_IDREF_RESOLUTION, true);
+		resourceSet.getLoadOptions().put(XMLResource.OPTION_RECORD_UNKNOWN_FEATURE, Boolean.TRUE);
+		resourceSet.getLoadOptions().put(XMLResource.OPTION_USE_PACKAGE_NS_URI_AS_LOCATION, Boolean.FALSE);
+
+		monitor.subTask("Loading source model " + getModelName());
+
+		try {
+			File resourceFile = new File(sourceURI.toFileString());
+			if (resourceFile.exists()) {
+				resourceSet.getResource(sourceURI, true);
+			}
+			
+		} catch (Exception ex) {
+			Activator.log.error("An error occurred while loading " + getModelName(), ex);
+		}
+	}
+
+	protected abstract int countSupportedElements(); // TODO
+
+	
+
+	
+	protected static IStatus createStatusFromDiagnostic(Diagnostic diagnostic) {
+		return new Status(diagnostic.getSeverity(), diagnostic.getSource(), diagnostic.getMessage(),
+				diagnostic.getException());
+	}
+
+	/**
+	 * Actually runs the transformation (in the current thread)
+	 *
+	 * @param monitor
+	 * @return The transformation IStatus
+	 */
+	
+	protected abstract IStatus run(final IProgressMonitor monitor);
+
+	public static MultiStatus aggregateStatus(List<IStatus> statuses) {
+		return new MultiStatus(Activator.PLUGIN_ID, IStatus.OK, statuses.toArray(new IStatus[statuses.size()]), "",
+				null);
+	}
+
+	/**
+	 * @param resource
+	 */
+	protected void cleanMetadataAnnotations(Resource resource) {
+		// Bug 471684: UML2.x to UML2.5 creates (invalid) Ecore Metadata EAnnotations,
+		// which then cause OCL validation to fail
+		// Remove these EAnnotations from the model to avoid side effects
+		Iterator<EObject> rootElementsIterator = resource.getContents().iterator();
+		while (rootElementsIterator.hasNext()) {
+			EObject root = rootElementsIterator.next();
+			if (root instanceof EAnnotation) {
+				EAnnotation annotation = (EAnnotation) root;
+				if (ExtendedMetaData.ANNOTATION_URI.equals(annotation.getSource())) {
+					rootElementsIterator.remove();
+				}
+			}
+		}
+	}
+
+	protected void handleDanglingURIs(Collection<Resource> resourcesToSave) {
+		if (analysisHelper != null) {
+			resourceSet.freeze();
+			try {
+				analysisHelper.computeURIMappings(resourcesToSave);
+			} finally {
+				resourceSet.unfreeze();
+			}
+		}
+	}
+
+	protected void unloadResourceSet(ResourceSet resourceSet) {
+		EMFHelper.unload(resourceSet);
+	}
+
+	protected URI getInProfileDefinitions() {
+		// TODO : not used, useful for common and Rpy import
+		return null;
+	}
+
+	protected URI getInPapyrusProfiles() {
+		if (inPapyrusProfiles == null) {
+			loadInPapyrusProfiles();
+		}
+
+		return inPapyrusProfiles;
+	}
+
+	protected abstract Diagnostic loadInPapyrusProfiles(); // TODO : add path of profile are parameters ?
+
+	protected void checkResource(Resource resource) {
+		Assert.isNotNull(resource);
+		Assert.isTrue(!resource.getContents().isEmpty(), "The resource " + resource.getURI() + " is empty");
+		for (EObject rootElement : resource.getContents()) {
+			Assert.isTrue(!rootElement.eIsProxy());
+		}
+	}
+
+	protected abstract Resource createUMLResource(ResourceSet resourceSet, URI sourceResourceURI,
+			URI targetResourceURI);
+
+	protected Collection<Resource> handleFragments(Resource umlResource, Resource notationResource,
+			Resource sashResource) {
+		Collection<Resource> result = new HashSet<>();
+		result.add(umlResource);
+		result.add(notationResource);
+		result.add(sashResource);
+
+		ResourceSet resourceSet = umlResource.getResourceSet();
+
+		Iterator<EObject> elementIterator = umlResource.getAllContents();
+
+		Set<Resource> fragmentResources = new HashSet<>();
+		List<EAnnotation> rsaAnnotations = new ArrayList<>();
+
+		while (elementIterator.hasNext()) {
+			EObject element = elementIterator.next();
+			Resource possibleFragment = element.eResource();
+			if ((possibleFragment != umlResource) && possibleFragment.getContents().contains(element)) { // Controlled/Fragment
+																											// root
+				fragmentResources.add(possibleFragment);
+			}
+			// TODO commented because it is RSA import only
+			// collectRSAAnnotations(element, rsaAnnotations);
+		}
+
+		// Strip all RSA fragment annotations
+		rsaAnnotations.forEach(EcoreUtil::remove);
+
+		List<Resource> fragmentUMLResources = new LinkedList<>();
+
+		for (Resource fragmentResource : fragmentResources) {
+			URI papyrusFragmentURI = convertToPapyrus(fragmentResource.getURI(), UMLResource.FILE_EXTENSION);
+
+			uriMappings.put(fragmentResource.getURI(), papyrusFragmentURI);
+
+			Resource newResource = resourceSet.getResource(papyrusFragmentURI, false);
+			if (newResource == null) {
+				newResource = createUMLResource(resourceSet, fragmentResource.getURI(), papyrusFragmentURI);
+
+				fragmentUMLResources.add(newResource);
+
+				Resource fragmentNotationResource = new GMFResource(convertToPapyrus(papyrusFragmentURI, "notation"));
+				Resource fragmentDiResource = new XMIResourceImpl(convertToPapyrus(papyrusFragmentURI, "di"));
+
+				result.add(fragmentNotationResource);
+				result.add(fragmentDiResource);
+
+				resourceSet.getResources().add(fragmentNotationResource);
+				resourceSet.getResources().add(fragmentDiResource);
+			}
+
+			newResource.getContents().addAll(fragmentResource.getContents());
+
+			// Make it a Papyrus controlled unit of the "shard" variety
+			try (ShardResourceHelper shard = new ShardResourceHelper(newResource)) {
+				shard.setShard(true);
+			}
+
+			result.add(newResource);
+		}
+
+		//deleteSourceStereotypes(fragmentResources);
+
+		List<EObject> importedElements = new LinkedList<>(notationResource.getContents());
+		for (EObject notationElement : importedElements) {
+			if (notationElement instanceof Diagram) {
+				EObject semanticElement = ((Diagram) notationElement).getElement();
+				if (semanticElement.eResource() != umlResource && semanticElement.eResource() != null) {
+
+					URI notationFragmentURI = convertToPapyrus(semanticElement.eResource().getURI(), "notation");
+
+					Resource newNotationResource = resourceSet.getResource(notationFragmentURI, false);
+					if (newNotationResource == null) {
+						newNotationResource = new GMFResource(notationFragmentURI);
+						resourceSet.getResources().add(newNotationResource);
+					}
+					newNotationResource.getContents().add(notationElement);
+					result.add(newNotationResource);
+				}
+			}
+		}
+
+		handleFragmentStereotypes(umlResource, fragmentUMLResources);
+
+		for (Resource resource : result) {
+			if (resource instanceof XMIResource) {
+				configureResource((XMIResource) resource);
+			}
+		}
+
+		return result;
+	}
+
+	/*
+	 * Bug 447097: [Model Import] Importing a fragmented model causes stereotype
+	 * applications to be lost in resulting submodel
+	 * https://bugs.eclipse.org/bugs/show_bug.cgi?id=447097
+	 *
+	 * Before the transformation, We moved all root elements from the fragment
+	 * resources to the main resource, then we transformed some of them to Papyrus
+	 * Stereotype Applications. We need to move these stereotype applications back
+	 * to the proper fragment resource
+	 */
+	protected void handleFragmentStereotypes(Resource mainUMLResource, List<Resource> umlResources) {
+		Iterator<EObject> rootElementIterator = mainUMLResource.getContents().iterator();
+		while (rootElementIterator.hasNext()) {
+			EObject rootElement = rootElementIterator.next();
+			if (rootElement instanceof Element) {
+				continue;
+			}
+
+			Resource targetStereotypeResource = getTargetStereotypeResource(rootElement, umlResources);
+			if (targetStereotypeResource != null && targetStereotypeResource != mainUMLResource) {
+				rootElementIterator.remove(); // To avoid ConcurrentModificationException when moving to the other
+												// resource
+				targetStereotypeResource.getContents().add(rootElement);
+			}
+		}
+	}
+
+	protected Resource getTargetStereotypeResource(EObject rootElement, List<Resource> umlResources) {
+		for (EReference eReference : rootElement.eClass().getEAllReferences()) {
+			if (eReference.getName().startsWith(Extension.METACLASS_ROLE_PREFIX)) {
+				Object value = rootElement.eGet(eReference);
+				if (value instanceof Element) {
+					return ((Element) value).eResource();
+				}
+			}
+		}
+
+		return null;
+	}
+
+	protected void deleteSourceStereotypes(Collection<Resource> fragmentResources) {
+		Set<Resource> allResources = new HashSet<>(fragmentResources);
+		//allResources.add(umlResource);
+
+		for (Resource resource : allResources) {
+
+			List<EObject> resourceContents = new LinkedList<>(resource.getContents());
+			for (EObject rootElement : resourceContents) {
+				if (sourceEPackages.contains(rootElement.eClass().getEPackage())) {
+					delete(rootElement);
+				}
+			}
+		}
+	}
+
+	protected abstract URI convertToPapyrus(URI rsaURI, String extension);
+
+	protected void configureResource(XMIResource resource) {
+		Map<Object, Object> saveOptions = new HashMap<>();
+
+		// default save options.
+		saveOptions.put(XMLResource.OPTION_DECLARE_XML, Boolean.TRUE);
+		saveOptions.put(XMLResource.OPTION_PROCESS_DANGLING_HREF, XMLResource.OPTION_PROCESS_DANGLING_HREF_DISCARD);
+		saveOptions.put(XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE);
+		saveOptions.put(XMIResource.OPTION_USE_XMI_TYPE, Boolean.TRUE);
+		saveOptions.put(XMLResource.OPTION_SAVE_TYPE_INFORMATION, Boolean.TRUE);
+		saveOptions.put(XMLResource.OPTION_SKIP_ESCAPE_URI, Boolean.FALSE);
+		saveOptions.put(XMLResource.OPTION_ENCODING, "UTF-8");
+
+		// see bug 397987: [Core][Save] The referenced plugin models are saved using
+		// relative path
+		saveOptions.put(XMLResource.OPTION_URI_HANDLER,
+				new org.eclipse.emf.ecore.xmi.impl.URIHandlerImpl.PlatformSchemeAware());
+
+		resource.setEncoding("UTF-8");
+		resource.getDefaultSaveOptions().putAll(saveOptions);
+	}
+
+	public abstract URI getInOutUMLModel();
+
+	/*
+	 * Notation model is initially empty, but will be filled successively by each
+	 * transformation
+	 */
+	public URI getInoutNotationModel() {
+
+		return outNotation;
+	}
+
+	protected URI getOutSashModel() {
+
+		return outSashModel;
+	}
+
+	protected abstract Collection<URI> getDiagramTransformationURIs();
+
+
+
+	protected abstract Collection<URI> getProfilesTransformationURI();
+
+	protected Collection<URI> getAdditionalTransformationURIs() {
+		return Collections.emptyList();
+	}
+
+	protected URI getTransformationURI(String transformationName, String pluginID) {
+		return URI.createPlatformPluginURI(String.format("%s/transform/%s.qvto", pluginID, transformationName), true); //$NON-NLS-1$
+	}
+
+	public String getModelName() {
+		return URI.decode(sourceURI.lastSegment());
+	}
+
+	public void cancel() {
+		job.cancel();
+	}
+
+	/**
+	 * Lightweight delete operation, which only removes the object from its parent.
+	 * Incoming references are not deleted
+	 */
+	public void delete(EObject elementToDelete) {
+		CacheAdapter adapter = CacheAdapter.getCacheAdapter(elementToDelete); // bug 541313 [CDO] - change is not
+																				// required here
+		if (adapter == null) {
+			adapter = CacheAdapter.getInstance();
+		}
+		adapter.unsetTarget(elementToDelete);
+		if (elementToDelete.eResource() != null) {
+			elementToDelete.eResource().getContents().remove(elementToDelete);
+		}
+
+		EObject parent = elementToDelete.eContainer();
+		if (parent == null) {
+			return;
+		}
+		EReference containmentFeature = elementToDelete.eContainmentFeature();
+
+		if (containmentFeature.getUpperBound() == 1) {
+			parent.eUnset(containmentFeature);
+		} else {
+			List<?> values = (List<?>) parent.eGet(containmentFeature);
+			values.remove(elementToDelete);
+		}
+	}
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/UMLFromAASXTransformation.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/UMLFromAASXTransformation.java
new file mode 100644
index 0000000..f381db2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/UMLFromAASXTransformation.java
@@ -0,0 +1,365 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.import2papyrus.transformations;
+
+import java.util.Collection;
+import java.util.Collections;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+
+import org.eclipse.core.resources.IContainer;
+import org.eclipse.core.resources.IFile;
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.MultiStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.emf.common.util.Diagnostic;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.ecore.resource.ResourceSet;
+import org.eclipse.emf.ecore.xmi.XMLResource;
+import org.eclipse.emf.ecore.xmi.impl.XMLResourceImpl;
+import org.eclipse.papyrus.aas.import2papyrus.handler.Activator;
+import org.eclipse.papyrus.uml.m2m.qvto.common.MigrationParameters.ThreadConfig;
+import org.eclipse.papyrus.uml.m2m.qvto.common.transformation.IDependencyAnalysisHelper;
+import org.eclipse.papyrus.uml.m2m.qvto.common.transformation.MigrationResourceSetImpl;
+import org.eclipse.uml2.uml.resource.UMLResource;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+import io.shell.admin.aas._1._0._0Package;
+import io.shell.admin.aas._1._0.util._0ResourceFactoryImpl;
+
+
+
+
+
+
+/**
+ * This call defines the SysML transformation from 1.1 to 1.4.
+ */
+
+public class UMLFromAASXTransformation extends AbstractImportTransformation  {
+
+	
+	protected URI umlResourceURI;
+	protected Resource umlResource;
+	protected Resource aasxResource;
+	protected IResource project;
+	
+	/**
+	 * Constructor.
+	 *
+	 * @param sourceURI      The source URI.
+	 * @param config         The thread config.
+	 * @param analysisHelper The analyses helper.
+	 */
+	public UMLFromAASXTransformation(final URI sourceURI, final ThreadConfig config,
+			final IDependencyAnalysisHelper analysisHelper) {
+		super(sourceURI, config, analysisHelper);
+		DEBUG = true;
+	}
+
+	/**
+	 * Constructor.
+	 *
+	 * @param sourceURI The source URI.
+	 */
+	public UMLFromAASXTransformation(final URI sourceURI) {
+		super(sourceURI);
+	}
+
+	public UMLFromAASXTransformation(final URI sourceURI, final ThreadConfig config,
+			final IDependencyAnalysisHelper analysisHelper, IResource project) {
+		super(sourceURI, config, analysisHelper);
+		this.project = project;
+		DEBUG = true;
+	}
+
+	/**
+	 * 
+	 * 
+	 * /** {@inheritDoc}
+	 * 
+	 * @see org.eclipse.papyrus.migration.common.transformation.AbstractImportTransformation#loadInPapyrusProfiles()
+	 */
+	@Override
+	protected Diagnostic loadInPapyrusProfiles() {
+		resourceSet.getResource(sourceURI.trimFileExtension().appendFileExtension(UMLResource.FILE_EXTENSION), true);
+		return null;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.papyrus.migration.common.transformation.AbstractImportTransformation#countSupportedElements()
+	 */
+	@Override
+	protected int countSupportedElements() {
+		return -1;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.papyrus.migration.common.transformation.AbstractImportTransformation#run(org.eclipse.core.runtime.IProgressMonitor)
+	 */
+	@Override
+	protected IStatus run(final IProgressMonitor monitor) {
+		//
+		// INITIALIZATION / LOADING
+		//
+
+		monitor.subTask("Loading source model " + getModelName());
+
+		long startLoad = System.nanoTime();
+
+		// load the AASX input file and the UML output file
+
+		initResourceSet(monitor);
+
+		int numberOfElements = countSupportedElements();
+
+		monitor.beginTask("Importing " + getModelName(), numberOfElements);
+		monitor.subTask("Loading transformations (This may take a few seconds for the first import)...");
+
+		String statusMessage = String.format("Import %s", getModelName());
+		MultiStatus generationStatus = new MultiStatus(Activator.PLUGIN_ID, IStatus.OK, statusMessage, null);
+
+		try {
+			// getInPapyrusProfiles(); // Preload profiles
+
+			long endLoad = System.nanoTime();
+			loadingTime = endLoad - startLoad;
+
+			//
+			// TRANSFORMATIONS
+			//
+
+			long startExtensions = System.nanoTime();
+
+			long endExtensions = System.nanoTime();
+
+			this.importExtensionsTime = endExtensions - startExtensions;
+
+			monitor.subTask("Importing semantic model...");
+
+			// Run the transformations here and get the output file (uml file)
+			
+			AAS2UMLSwitch aas2uml = new AAS2UMLSwitch();
+			
+			umlResource = aas2uml.doTransform(aasxResource, umlResource);
+
+			// umlResourceURI = convertToPapyrus(sourceURI, "xml");
+
+			// configureResource((XMLResource) umlResource);
+
+			// populate the xml Resource
+
+			final Collection<Resource> resourcesToSave = new HashSet<>();
+			resourcesToSave.add(umlResource);
+
+			// save resources
+			// for (final Resource resource : resourcesToSave) {
+			try {
+				// cleanMetadataAnnotations(umlResource);
+				 //ResourceAccessHelper.INSTANCE.saveResource(umlResource, null);
+				umlResource.save(null);
+			} catch (Exception ex) {
+				Activator.log.error(ex);
+				generationStatus
+						.add(new Status(IStatus.ERROR, Activator.PLUGIN_ID, "An exception occurred during save", ex));
+			}
+			// }
+			long startExtensionsAfter = System.nanoTime();
+
+			long endExtensionsAfter = System.nanoTime();
+			this.importExtensionsTime += endExtensionsAfter - startExtensionsAfter;
+
+		} finally {
+			// Do nothing
+		}
+
+		monitor.subTask("Releasing memory...");
+		//unloadResourceSet(this.resourceSet);
+		dispose();
+
+		monitor.done();
+		return generationStatus;
+	}
+
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.papyrus.migration.common.transformation.AbstractImportTransformation#getProfilesTransformationURI()
+	 *      Only Usefull for QVTO transfo
+	 */
+	@Override
+	protected Collection<URI> getProfilesTransformationURI() {
+		return Collections.emptyList();
+	}
+
+	
+
+	
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.papyrus.migration.common.transformation.AbstractImportTransformation#getInOutUMLModel()
+	 */
+	@Override
+	public URI getInOutUMLModel() {
+		Resource oldUMLResource = resourceSet.getResource(sourceURI, true);
+
+		return oldUMLResource.getURI();
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.papyrus.migration.common.transformation.AbstractImportTransformation#getInOutUMLModel()
+	 */
+
+	public URI getOutCheatsheetModel() {
+		final URI xmlURI = convertToPapyrus(sourceURI, "xml");
+		final XMLResource xmlResource = new XMLResourceImpl(xmlURI);
+
+		configureResource(xmlResource);
+
+		return xmlURI;
+	}
+
+	protected void configureResource(XMLResource resource) {
+		Map<Object, Object> saveOptions = new HashMap<>();
+
+		// default save options.
+
+		
+		
+		saveOptions.put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+		saveOptions.put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+		saveOptions.put(XMLResource.OPTION_SCHEMA_LOCATION, Boolean.TRUE);
+
+		resource.setEncoding("UTF-8");
+		resource.getDefaultSaveOptions().putAll(saveOptions);
+
+		resource.getDefaultLoadOptions().put(XMLResource.OPTION_EXTENDED_META_DATA, Boolean.TRUE);
+		resource.getDefaultLoadOptions().put(XMLResource.OPTION_USE_ENCODED_ATTRIBUTE_STYLE, Boolean.TRUE);
+		resource.getDefaultLoadOptions().put(XMLResource.OPTION_USE_LEXICAL_HANDLER, Boolean.TRUE);
+	}
+	
+	
+
+	
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.papyrus.migration.common.transformation.AbstractImportTransformation#createUMLResource(org.eclipse.emf.ecore.resource.ResourceSet,
+	 *      org.eclipse.emf.common.util.URI, org.eclipse.emf.common.util.URI) Not
+	 *      usefull we already have the UML Resource
+	 */
+	@Override
+	protected Resource createUMLResource(final ResourceSet resourceSet, final URI sourceResourceURI,
+			final URI targetResourceURI) {
+		return resourceSet.createResource(targetResourceURI, UMLResource.UML_5_0_0_CONTENT_TYPE_IDENTIFIER);
+	}
+
+	/**
+	 * Initializes the resource set, and resolve all dependencies
+	 */
+	protected void initResourceSet(IProgressMonitor monitor) {
+		resourceSet = new MigrationResourceSetImpl();
+		synchronized (UMLUtil.class) {
+			UMLUtil.init(resourceSet);
+		}
+		resourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_ATTACHMENT, true);
+		resourceSet.getLoadOptions().put(XMLResource.OPTION_DEFER_IDREF_RESOLUTION, true);
+		resourceSet.getLoadOptions().put(XMLResource.OPTION_LAX_FEATURE_PROCESSING, Boolean.TRUE);
+		resourceSet.getLoadOptions().put(XMLResource.OPTION_RECORD_UNKNOWN_FEATURE, Boolean.TRUE);
+		resourceSet.getLoadOptions().put(XMLResource.OPTION_USE_PACKAGE_NS_URI_AS_LOCATION, Boolean.TRUE);
+		// load AASX Register Factory and AASX resource to be loaded by an EMF resourceSet
+		resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("xml", new _0ResourceFactoryImpl());
+		resourceSet.getPackageRegistry().put(_0Package.eNS_URI, _0Package.eINSTANCE);
+		
+
+		monitor.subTask("Loading source model " + getModelName());
+
+		try {
+			
+			
+			aasxResource = resourceSet.getResource(sourceURI, true);
+			configureResource((XMLResource) aasxResource);
+			IFile umlFile = findFileRecursively(project, "uml");
+			umlResourceURI = URI.createPlatformResourceURI(umlFile.getFullPath().toString(), true);
+			umlResource = resourceSet.getResource(umlResourceURI, true);
+			configureResource((XMLResource) umlResource);
+		} catch (Exception ex) {
+			Activator.log.error("An error occurred while loading " + getModelName(), ex);
+		}
+	}
+
+	public IFile findFileRecursively(IResource container, String extention) throws CoreException {
+		if (container != null && container instanceof IContainer) {
+
+			for (IResource r : ((IContainer) container).members()) {
+				if (r instanceof IFile && r.getFileExtension().equals("uml")) {
+					return (IFile) r;
+				}
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * This allows to dispose the needed variables.
+	 */
+	protected void dispose() {
+
+		umlResource = null;
+		outUML = null;
+		outNotation = null;
+		inPapyrusProfiles = null;
+		outSashModel = null;
+		resourceSet = null;
+		// Set the context of the QvTo to null
+
+	}
+
+	@Override
+	protected URI convertToPapyrus(URI initialModelURI, String extension) {
+		// TODO: define if the final file need to be the same or specify the
+		// name
+		URI uriWithoutExtension = initialModelURI.trimFileExtension();
+		String lastSegment = uriWithoutExtension.lastSegment();
+		lastSegment += "_cheatsheet";
+		uriWithoutExtension = uriWithoutExtension.trimSegments(1);
+		uriWithoutExtension = uriWithoutExtension.appendSegment(lastSegment);
+		return uriWithoutExtension.appendFileExtension(extension);
+	}
+
+	@Override
+	protected Collection<URI> getDiagramTransformationURIs() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+	
+	
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/UMLfromAASXTransformationLauncher.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/UMLfromAASXTransformationLauncher.java
new file mode 100644
index 0000000..5c3fbea
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/transformations/UMLfromAASXTransformationLauncher.java
@@ -0,0 +1,281 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.import2papyrus.transformations;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.eclipse.core.resources.IResource;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.MultiStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.IJobChangeEvent;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.core.runtime.jobs.JobChangeAdapter;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.papyrus.uml.m2m.qvto.common.Activator;
+import org.eclipse.papyrus.uml.m2m.qvto.common.MigrationParameters.ThreadConfig;
+import org.eclipse.papyrus.uml.m2m.qvto.common.transformation.AbstractImportTransformationLauncher;
+import org.eclipse.papyrus.uml.m2m.qvto.common.transformation.IDependencyAnalysisHelper;
+import org.eclipse.papyrus.uml.m2m.qvto.common.transformation.IImportTransformation;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Display;
+import org.eclipse.ui.statushandlers.StatusManager;
+
+/**
+ * The launcher of the SysML migration.
+ */
+public class UMLfromAASXTransformationLauncher extends AbstractImportTransformationLauncher {
+
+
+	public IResource project =null;
+	/**
+	 * Constructor.
+	 *
+	 * @param config
+	 *            The thread config.
+	 * @param baseControl
+	 *            The base control.
+	 * @param project 
+	 */
+	public UMLfromAASXTransformationLauncher(final ThreadConfig config, final Control baseControl, IResource project) {
+		super(null, baseControl);
+		this.project=project;
+		
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.papyrus.migration.common.transformation.AbstractImportTransformationLauncher#createDependencyAnalysisHelper(org.eclipse.papyrus.migration.common.MigrationParameters.ThreadConfig)
+	 */
+	@Override
+	protected IDependencyAnalysisHelper createDependencyAnalysisHelper(final ThreadConfig config) {
+		return null;
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.eclipse.papyrus.migration.common.transformation.AbstractImportTransformationLauncher#createTransformation(org.eclipse.emf.common.util.URI, org.eclipse.papyrus.migration.common.MigrationParameters.ThreadConfig,
+	 *      org.eclipse.papyrus.migration.common.transformation.IDependencyAnalysisHelper)
+	 */
+	@Override
+	protected IImportTransformation createTransformation(final URI transformationURI, final ThreadConfig config, final IDependencyAnalysisHelper analysisHelper) {
+		return new UMLFromAASXTransformation(transformationURI, null, analysisHelper,project);
+	}
+	
+	/**
+	 * Executes the transformation (Asynchronous)
+	 *
+	 * @param urisToImport
+	 * @param project 
+	 */
+	public void run(List<URI> urisToImport, IResource project) {
+		List<IImportTransformation> transformations = new LinkedList<IImportTransformation>();
+
+		analysisHelper = createDependencyAnalysisHelper(config);
+
+		for (URI uri : urisToImport) {
+			IImportTransformation transformation = createTransformation(uri, config, analysisHelper);
+			transformations.add(transformation);
+		}
+
+		// Always use the batch launcher, even if there is only 1 transformation (Bug 455012)
+		importModels(transformations);
+	}
+	/**
+	 * Start a Job and delegate to {@link #importModels(IProgressMonitor, List)}
+	 *
+	 * @param transformations
+	 * @param  
+	 */
+	@Override
+	protected void importModels(final List<IImportTransformation> transformations) {
+		importDependenciesJob = new Job(IMPORT_MODELS_JOB_NAME) {
+
+			
+			protected IStatus run(IProgressMonitor monitor) {
+				IStatus result = importModels(monitor, transformations);
+
+				if (monitor.isCanceled()) {
+					return new Status(IStatus.CANCEL, Activator.PLUGIN_ID, "Operation Canceled");
+				}
+
+				long cumulatedLoadingTime = 0L;
+				long cumulatedTransformationTime = 0L;
+				long cumulatedHandleDanglingTime = 0L;
+				long cumulatedImportExtensionsTime = 0L;
+				for (IImportTransformation transformation : transformations) {
+					cumulatedLoadingTime += transformation.getLoadingTime();
+					cumulatedImportExtensionsTime += transformation.getImportExtensionsTime();
+					cumulatedHandleDanglingTime += transformation.getHandleDanglingRefTime();
+
+					cumulatedTransformationTime += transformation.getExecutionTime();
+
+					log("Import " + transformation.getModelName());
+					log("First phase (0-50%):");
+					log("\tTotal loading time: " + timeFormat(transformation.getLoadingTime()));
+					log("\tTotal Import Extensions time: " + timeFormat(transformation.getImportExtensionsTime()));
+					log("\tTotal Handle Dangling References time: " + timeFormat(transformation.getHandleDanglingRefTime()));
+					log("\tTotal execution time: " + timeFormat(transformation.getExecutionTime()));
+
+					Long loadingTime = loadingTimeV2.get(transformation);
+					Long repairProxiesTime = proxiesTime.get(transformation);
+					Long repairStereoTime = stereoTime.get(transformation);
+					Long totalPhase2 = totalTimeV2.get(transformation);
+
+					log("Second phase (50-100%):");
+					log("\tTotal loading time: " + timeFormat(loadingTime));
+					log("\tTotal fix proxies time: " + timeFormat(repairProxiesTime));
+					log("\tTotal fix stereotypes time: " + timeFormat(repairStereoTime));
+					log("\tTotal execution time: " + timeFormat(totalPhase2));
+
+					log("Total");
+					log("\tTotal execution time: " + timeFormat(transformation.getExecutionTime() + (totalPhase2 == null ? 0 : totalPhase2)));
+					log("\n");
+				}
+
+				int nbThreads = config !=null ? Math.max(1, config.getMaxThreads()): 1;
+				
+				log("First phase (0-50%) / " + nbThreads + " Threads");
+				log("\tCumulated Transformation Time: " + timeFormat(cumulatedTransformationTime));
+				log("\tCumulated Loading Time: " + timeFormat(cumulatedLoadingTime));
+				log("\tCumulated Handle Dangling Refs Time: " + timeFormat(cumulatedHandleDanglingTime));
+				log("\tCumulated Import Extensions Time: " + timeFormat(cumulatedImportExtensionsTime));
+				log("\tTotal Transformation Time: " + timeFormat(transformationsExecutionTime));
+
+				log("Second phase (50-100%) / " + nbThreads + " Threads");
+				log("\tTotal Handle all Dangling References: " + timeFormat(resolveAllDependencies));
+				log("\tCumulated Loading Time: " + timeFormat(ownLoadingTime));
+				log("\tCumulated Fix Libraries Time: " + timeFormat(ownRepairLibrariesTime));
+				log("\tCumulated Fix Stereotypes Time: " + timeFormat(ownRepairStereotypesTime));
+				log("\tTotal Fix Dependencies Time: " + timeFormat(ownExecutionTime));
+
+				log("Total");
+				log("\tCumulated Total time: " + timeFormat(ownExecutionTime + cumulatedTransformationTime));
+				log("\tTotal time: " + timeFormat(ownExecutionTime + transformationsExecutionTime));
+
+				log("Import Complete");
+				log("");
+
+				return result;
+			}
+
+		};
+
+		importDependenciesJob.addJobChangeListener(new JobChangeAdapter() {
+			@Override
+			public void done(IJobChangeEvent event) {
+
+				MultiStatus multiStatus = new MultiStatus(Activator.PLUGIN_ID, IStatus.OK, "", null);
+
+				multiStatus.merge(event.getResult());
+
+				/*for (IImportTransformation transformation : transformations) {
+					multiStatus.merge(transformation.getStatus());
+				}*/
+
+				int severity = multiStatus.getSeverity();
+				String message;
+
+				switch (severity) {
+				case IStatus.OK:
+					message = "The selected models have been successfully imported";
+					break;
+				case IStatus.CANCEL:
+					message = "Operation canceled";
+					break;
+				case IStatus.WARNING:
+					message = "The selected models have been imported; some warnings have been reported";
+					break;
+				default:
+					message = "Some errors occurred during model import";
+					break;
+				}
+
+
+				handle(new MultiStatus(Activator.PLUGIN_ID, severity, multiStatus.getChildren(), message, null));
+			}
+
+			protected void handle(final IStatus status) {
+				if (baseControl == null) {
+					int severity = status.getSeverity();
+					if (severity == IStatus.OK || severity == IStatus.CANCEL) {
+						return;
+					}
+
+					StatusManager.getManager().handle(status, StatusManager.LOG);
+					return;
+				}
+
+				Display display = baseControl.getDisplay();
+
+				if (status.getSeverity() == IStatus.OK) {
+					display.asyncExec(new Runnable() {
+
+						@Override
+						public void run() {
+							MessageDialog.openInformation(baseControl.getShell(), "Import models", status.getMessage());
+						}
+					});
+
+				} else if (status.getSeverity() == IStatus.CANCEL) {
+					display.asyncExec(new Runnable() {
+
+						@Override
+						public void run() {
+							MessageDialog.openInformation(baseControl.getShell(), "Import models", status.getMessage());
+						}
+					});
+				} else {
+					StatusManager.getManager().handle(status, StatusManager.BLOCK);
+				}
+			}
+		});
+
+		importDependenciesJob.setUser(true);
+		importDependenciesJob.schedule();
+	}
+	
+	@Override
+	protected IStatus importModels(IProgressMonitor monitor, List<IImportTransformation> transformations) {
+
+		long begin = System.nanoTime();
+
+		monitor.setTaskName("Waiting for import tasks to complete...");
+		int numTasks = transformations.size() * 2; // For each transformation: wait for completion, then handle dependencies
+		monitor.beginTask("Importing Models...", numTasks);
+
+		for (IImportTransformation transformation : transformations) {
+			transformation.run(true);
+		}
+
+		long end = System.nanoTime();
+		transformationsExecutionTime = end - begin;
+
+		if (monitor.isCanceled()) {
+			return new Status(IStatus.CANCEL, Activator.PLUGIN_ID, "Operation canceled");
+		}
+
+		handleModelDependencies(transformations, monitor);
+
+		return Status.OK_STATUS;
+	}
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/wizards/ImportAASXWizard.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/wizards/ImportAASXWizard.java
new file mode 100644
index 0000000..4c9481e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/wizards/ImportAASXWizard.java
@@ -0,0 +1,963 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Vincent Lorenzo (CEA LIST) vincent.lorenzo@cea.fr - Initial API and implementation
+ *  Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - adapt for import Project
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.aas.import2papyrus.wizards;
+
+import static org.eclipse.papyrus.uml.diagram.wizards.Activator.log;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectDescription;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.NullProgressMonitor;
+import org.eclipse.core.runtime.SubProgressMonitor;
+import org.eclipse.emf.common.command.Command;
+import org.eclipse.emf.common.command.CompoundCommand;
+import org.eclipse.emf.common.ui.URIEditorInput;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.resource.Resource;
+import org.eclipse.emf.transaction.RecordingCommand;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.wizard.IWizardPage;
+import org.eclipse.papyrus.aas.import2papyrus.handler.ImportAASXHandler;
+import org.eclipse.papyrus.infra.architecture.ArchitectureDescriptionUtils;
+import org.eclipse.papyrus.infra.architecture.ArchitectureDomainManager;
+import org.eclipse.papyrus.infra.architecture.representation.PapyrusRepresentationKind;
+import org.eclipse.papyrus.infra.core.architecture.RepresentationKind;
+import org.eclipse.papyrus.infra.core.architecture.merged.MergedArchitectureContext;
+import org.eclipse.papyrus.infra.core.architecture.merged.MergedArchitectureViewpoint;
+import org.eclipse.papyrus.infra.core.resource.ModelSet;
+import org.eclipse.papyrus.infra.core.resource.sasheditor.SashModelUtils;
+import org.eclipse.papyrus.infra.core.sashwindows.di.service.IPageManager;
+import org.eclipse.papyrus.infra.core.services.ExtensionServicesRegistry;
+import org.eclipse.papyrus.infra.core.services.ServiceException;
+import org.eclipse.papyrus.infra.core.services.ServicesRegistry;
+import org.eclipse.papyrus.infra.ui.util.EditorUtils;
+import org.eclipse.papyrus.infra.viewpoints.policy.ViewPrototype;
+import org.eclipse.papyrus.uml.diagram.wizards.Activator;
+import org.eclipse.papyrus.uml.diagram.wizards.command.NewPapyrusModelCommand;
+import org.eclipse.papyrus.uml.diagram.wizards.pages.INewPapyrusModelPage;
+import org.eclipse.papyrus.uml.diagram.wizards.pages.NewModelFilePage;
+import org.eclipse.papyrus.uml.diagram.wizards.pages.NewModelWizardData;
+import org.eclipse.papyrus.uml.diagram.wizards.pages.SelectArchitectureContextPage;
+import org.eclipse.papyrus.uml.diagram.wizards.pages.SelectRepresentationKindPage;
+import org.eclipse.papyrus.uml.diagram.wizards.pages.SelectRepresentationKindPage.ContextProvider;
+import org.eclipse.papyrus.uml.diagram.wizards.pages.SelectStorageProviderPage;
+import org.eclipse.papyrus.uml.diagram.wizards.providers.INewModelStorageProvider;
+import org.eclipse.papyrus.uml.diagram.wizards.providers.NewModelStorageProviderRegistry;
+import org.eclipse.papyrus.uml.diagram.wizards.providers.WorkspaceNewModelStorageProvider;
+import org.eclipse.papyrus.uml.diagram.wizards.wizards.CreateModelWizard;
+import org.eclipse.papyrus.uml.tools.commands.ApplyProfileCommand;
+import org.eclipse.papyrus.uml.tools.commands.RenameElementCommand;
+import org.eclipse.papyrus.uml.tools.model.UmlModel;
+import org.eclipse.papyrus.uml.tools.model.UmlUtils;
+import org.eclipse.ui.IEditorDescriptor;
+import org.eclipse.ui.IEditorInput;
+import org.eclipse.ui.IFileEditorInput;
+import org.eclipse.ui.INewWizard;
+import org.eclipse.ui.IURIEditorInput;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.IWorkbenchPage;
+import org.eclipse.ui.PartInitException;
+import org.eclipse.ui.ide.IDE;
+import org.eclipse.ui.services.IEvaluationService;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Profile;
+
+/**
+ * Create new model file and initialize a selected diagram. This wizard create
+ * several files :
+ * <li>*.di : the DI file to store Di diagrams and references all external diagrams like GMF diagrams.</li>
+ * <li>*.notation : the file to store pure GMF diagrams</li>
+ * <li>*.uml : the standard UML file to store UML semantics elements. (Model,
+ * Package, Class,...)</li>
+ *
+ * Those files can be used with the PapyrusEditor (see plugin.xml).
+ */
+public class ImportAASXWizard extends CreateModelWizard implements INewWizard {
+
+	/** The Constant WIZARD_ID. */
+	public static final String WIZARD_ID = "org.eclipse.papyrus.uml.diagram.wizards.createmodel"; //$NON-NLS-1$
+
+	/** The Constant NEW_MODEL_SETTINGS. */
+	public static final String NEW_MODEL_SETTINGS = "NewModelWizard"; //$NON-NLS-1$
+
+	private SelectStorageProviderPage selectStorageProviderPage;
+
+	/** Select kind of new diagram the wizard must create. */
+	private SelectRepresentationKindPage selectRepresentationKindPage;
+
+	/**
+	 * The select architecture context page.
+	 *
+	 * @since 3.0
+	 */
+	protected SelectArchitectureContextPage selectArchitectureContextPage;
+
+	/** Current workbench. */
+	private IWorkbench workbench;
+
+	private NewModelStorageProviderRegistry storageProviderRegistry;
+
+	private INewModelStorageProvider selectedStorageProvider;
+
+	private Map<INewModelStorageProvider, List<IWizardPage>> providerPages = new java.util.HashMap<>();
+
+	private Map<IWizardPage, INewModelStorageProvider> providersByPage = new java.util.HashMap<>();
+
+	private int startProviderPageIndex; // index of last page before provider pages
+
+	private int endProviderPageIndex; // index of first page after provider pages
+
+	protected IWizardPage newProjectPage;
+
+	private final NewModelWizardData wizardData = new NewModelWizardData();
+
+	protected static final String EXTENSION_POINT_ID = "org.eclipse.papyrus.uml.diagram.wizards.templates"; //$NON-NLS-1$
+
+	private ImportFilePage importPage;
+
+
+	private IProject project;
+
+	private IStructuredSelection selection;
+
+	private static final String[] allowedFiles = new String[] { "*.aasx" };
+	/**
+	 * Boolean to determinate if the dialog must be opened during the process.
+	 */
+
+	private IPath projectPath = null;
+	
+	
+
+	/**
+	 * Adds the pages.
+	 *
+	 * {@inheritDoc}
+	 */
+	@Override
+	public void addPages() {
+		// ModelCreation: the selectDiagramCategoryPage exists
+		if (getSelectedStorageProvider().getArchitectureContextPage() != null) {
+			//addPageIfNotNull(getSelectedStorageProvider().getArchitectureContextPage());
+		} else {
+			//addPageIfNotNull(selectArchitectureContextPage);
+		}
+
+		// The selectStorageProviderPage is only set if a model is created, cf initStorageProvider(IWorkbench, IStructuredSelection)
+		// The storage page for a project, newProjectPage, is handled by the PapyrusProjectCreationPage
+		addPageIfNotNull(selectStorageProviderPage);
+		addPageIfNotNull(newProjectPage);
+
+		startProviderPageIndex = getPageCount() - 1;
+		for (INewModelStorageProvider next : getStorageProviders()) {
+			List<IWizardPage> pageList = new java.util.ArrayList<>(3);
+			for (IWizardPage page : next.createPages()) {
+				if (page != null) {
+					pageList.add(page);
+					providersByPage.put(page, next);
+					if (!page.equals(getSelectedStorageProvider().getArchitectureContextPage())) {
+						addPage(page);
+					}
+				}
+			}
+			providerPages.put(next, pageList);
+		}
+		endProviderPageIndex = getPageCount();
+
+		//addPageIfNotNull(selectRepresentationKindPage);
+
+		INewPapyrusModelPage newModelPage = getNewModelPage();
+		if (newModelPage != null) {
+			newModelPage.setNewModelWizardData(wizardData);
+		}
+		
+		projectPath = project.getFullPath();
+		this.importPage = new ImportFilePage(workbench, selection, allowedFiles, projectPath);
+		addPage(this.importPage);
+	}
+
+	protected void setNewProjectPage(IWizardPage page) {
+		this.newProjectPage = page;
+	}
+
+	
+
+	public boolean isInitModelWizard() {
+		return false;
+	}
+
+	public boolean isCreateProjectWizard() {
+		return false;
+	}
+
+	public boolean isCreateMultipleModelsWizard() {
+		return false;
+	}
+
+	/**
+	 * Inits the.
+	 *
+	 * @param workbench
+	 *            the workbench
+	 * @param selection
+	 *            the selection {@inheritDoc}
+	 */
+	@Override
+	public void init(IWorkbench workbench, IStructuredSelection selection) {
+		this.workbench = workbench;
+				
+		this.selection = selection;
+		initStorageProvider(workbench, selection);
+
+		IDialogSettings workbenchSettings = Activator.getDefault().getDialogSettings();
+		IDialogSettings section = workbenchSettings.getSection(NEW_MODEL_SETTINGS);
+		if (section == null) {
+			section = workbenchSettings.addNewSection(NEW_MODEL_SETTINGS);
+		}
+		setDialogSettings(section);
+
+		selectStorageProviderPage = createSelectStorageProviderPage();
+
+		for (INewModelStorageProvider next : getStorageProviders()) {
+			next.init(this, selection);
+		}
+
+		selectRepresentationKindPage = createSelectRepresentationKindPage();
+		
+		try {
+			project = createNewProject();
+		} catch (CoreException e) {
+			// TODO Auto-generated catch block
+			e.printStackTrace();
+		}
+
+	}
+
+	/**
+	 * Perform finish.
+	 *
+	 * @return true, if successful {@inheritDoc}
+	 */
+	@Override
+	public boolean performFinish() {
+		//String[] contextIds = getSelectedContexts();
+		String aasContextId= "org.eclipse.papyrus.aas.ml";
+		String[] contextIds = {aasContextId};
+		if (contextIds.length == 0) {
+			return false;
+		}
+
+		String contextId = contextIds[0];
+		final URI newURI = createNewModelURI(contextId);
+		String viewPointId= "org.eclipse.papyrus.aas.viewpoint";
+		String[] viewpointIds = {viewPointId};
+		//String[] viewpointIds = getSelectedViewpoints(contextId);
+		createAndOpenPapyrusModel(newURI, contextId, viewpointIds);
+
+		// import the aasx file in the Papyrus folder
+				importPage.finish();
+				// execute the transformation
+				ImportAASXHandler importer = new ImportAASXHandler();
+				try {
+					importer.execute(project);
+					
+				} catch (ExecutionException e) {
+					// TODO Auto-generated catch block
+					e.printStackTrace();
+					return false;
+				}
+				return true;
+		
+	}
+
+	protected URI createNewModelURI(String contextId) {
+		return getSelectedStorageProvider().createNewModelURI(contextId);
+	}
+
+	/**
+	 * Creates the and open papyrus model.
+	 *
+	 * @param modelSet
+	 *            the di resource set
+	 * @param newURI
+	 *            the URI of the new model's principal resource
+	 * @param contextId
+	 *            the architecture context id
+	 * @param viewpointIds
+	 *            the architecture viewpoint ids
+	 * @return true, if successful
+	 * @since 3.0
+	 */
+	protected boolean createAndOpenPapyrusModel(URI newURI, String contextId, String[] viewpointIds) {
+
+		if (newURI == null) {
+			return false;
+		}
+
+		ServicesRegistry registry = createServicesRegistry();
+		if (registry == null) {
+			return false;
+		}
+
+		try {
+			// have to create the model set and populate it with the DI model
+			// before initializing other services that actually need the DI
+			// model, such as the SashModel Manager service
+			ModelSet modelSet = registry.getService(ModelSet.class);
+
+			createPapyrusModels(modelSet, newURI);
+
+			initServicesRegistry(registry);
+
+			initDomainModel(modelSet, contextId, viewpointIds);
+
+			initDiagramModel(modelSet, contextId);
+
+			applyProfile(modelSet);
+
+			//initTemplate(modelSet);
+
+			saveDiagram(modelSet);
+
+			//openDiagram(newURI);
+
+		} catch (ServiceException e) {
+			Activator.log.error(e);
+			//this.selectRepresentationKindPage.setErrorMessage(e.getMessage());
+			return false;
+
+		} finally {
+			try {
+				registry.disposeRegistry();
+			} catch (ServiceException ex) {
+				// Ignore
+			}
+		}
+
+		return true;
+	}
+
+	public List<RepresentationKind> getSelectedRepresentationKinds(String contextId) {
+		MergedArchitectureContext context = ArchitectureDomainManager.getInstance().getArchitectureContextById(contextId);
+		Set<RepresentationKind> allowedKinds = new HashSet<>();
+		for (MergedArchitectureViewpoint viewpoint : context.getViewpoints()) {
+			allowedKinds.addAll(viewpoint.getRepresentationKinds());
+		}
+		List<RepresentationKind> selectedKinds = new ArrayList<>();
+		for (RepresentationKind kind : getSelectedRepresentationKinds()) {
+			if (allowedKinds.contains(kind)) {
+				selectedKinds.add(kind);
+			}
+		}
+		return selectedKinds;
+	}
+	
+	/**
+	 * Gets the selected diagram kind descriptors.
+	 *
+	 * @return the selected diagram kind descriptors
+	 */
+	protected RepresentationKind[] getSelectedRepresentationKinds() {
+		RepresentationKind[] result = new RepresentationKind[0];
+		return result;
+	}
+
+	protected ServicesRegistry createServicesRegistry() {
+		ServicesRegistry result = null;
+
+		try {
+			result = new ExtensionServicesRegistry(org.eclipse.papyrus.infra.core.Activator.PLUGIN_ID);
+		} catch (ServiceException e) {
+			// couldn't create the registry? Fatal problem
+			Activator.log.error(e);
+		}
+
+		try {
+			// have to create the model set and populate it with the DI model
+			// before initializing other services that actually need the DI
+			// model, such as the SashModel Manager service
+			result.startServicesByClassKeys(ModelSet.class);
+		} catch (ServiceException ex) {
+			// Ignore this exception: some services may not have been loaded,
+			// which is probably normal at this point
+		}
+
+		return result;
+	}
+
+	protected void initServicesRegistry(ServicesRegistry registry) throws ServiceException {
+		try {
+			registry.startRegistry();
+		} catch (ServiceException ex) {
+			// Ignore this exception: some services may not have been loaded,
+			// which is probably normal at this point
+		}
+
+		registry.getService(IPageManager.class);
+	}
+
+	
+
+	
+
+	
+
+	/**
+	 * Gets the diagram file extension.
+	 *
+	 * @param diagramCategoryId
+	 *            the diagram category id
+	 * @return the diagram file extension
+	 */
+	public String getDiagramFileExtension(String contextId) {
+		return getDiagramFileExtension(contextId, NewModelFilePage.DEFAULT_DIAGRAM_EXTENSION);
+	}
+
+	/**
+	 * Gets the diagram file extension.
+	 *
+	 * @param contextId
+	 *            the context id
+	 * @param defaultExtension
+	 *            the default extension
+	 * @return the diagram file extension
+	 */
+	public String getDiagramFileExtension(String contextId, String defaultExtension) {
+		MergedArchitectureContext context = ArchitectureDomainManager.getInstance().getArchitectureContextById(contextId);
+		String extensionPrefix = context != null ? context.getExtensionPrefix() : null;
+		return (extensionPrefix != null && !extensionPrefix.trim().isEmpty()) ? extensionPrefix + "." + defaultExtension : defaultExtension; //$NON-NLS-1$
+	}
+
+	/**
+	 * Creates the select architecture context page.
+	 *
+	 * @return the select architecture context page
+	 * @since 3.0
+	 */
+	protected SelectArchitectureContextPage createSelectArchitectureContextPage() {
+		return new SelectArchitectureContextPage();
+	}
+
+	/**
+	 * Creates the select representation kind page.
+	 *
+	 * @return the select representation kind page
+	 * @since 3.0
+	 */
+	protected SelectRepresentationKindPage createSelectRepresentationKindPage() {
+		SelectRepresentationKindPage result = doCreateSelectRepresentationKindPage();
+		result.setNewModelWizardData(wizardData);
+		return result;
+	}
+
+	protected SelectRepresentationKindPage doCreateSelectRepresentationKindPage() {
+		return new SelectRepresentationKindPage(createContextProvider());
+	}
+
+	protected ContextProvider createContextProvider() {
+		return new ContextProvider() {
+
+			@Override
+			public String[] getCurrentContexts() {
+				return getSelectedContexts();
+			}
+
+			@Override
+			public String[] getCurrentViewpoints() {
+				return getSelectedViewpoints();
+			}
+
+		};
+	}
+
+	/**
+	 * Inits the domain model.
+	 *
+	 * @param modelSet
+	 *            the di resource set
+	 * @param contextId
+	 *            the architecture context id
+	 * @param viewpointIds
+	 *            the architecture viewpoint ids
+	 * @since 3.0
+	 */
+	protected void initDomainModel(ModelSet modelSet, String contextId, String[] viewpointIds) {
+		
+			createEmptyDomainModel(modelSet, contextId, viewpointIds);
+		
+		
+		
+	}
+
+	protected void applyProfile(ModelSet modelSet) {
+		//List<String> profilePath = selectRepresentationKindPage.getProfilesURI();
+				URI profileURI = URI.createURI("pathmap://AAS_PROFILE/aas.profile.uml");
+				CompoundCommand cc = new CompoundCommand();
+				
+					Resource resource = modelSet.getResource(profileURI, true);
+					Profile profileToApply = (Profile) resource.getContents().get(0);
+
+					Resource myModelUMLResource = UmlUtils.getUmlResource(modelSet);
+					org.eclipse.uml2.uml.Package manipulatedModel = (org.eclipse.uml2.uml.Package) myModelUMLResource.getContents().get(0);
+
+					cc.append(new ApplyProfileCommand(manipulatedModel, profileToApply, modelSet.getTransactionalEditingDomain()));
+				
+				if (cc.canExecute()) {
+					getCommandStack(modelSet).execute(cc);
+				}
+	}
+
+	/**
+	 * Inits the domain model from template.
+	 *
+	 * @param modelSet
+	 *            the di resource set
+	 * @since 3.0
+	 */
+	
+	/**
+	 * Creates the empty domain model.
+	 *
+	 * @param modelSet
+	 *            the di resource set
+	 * @param contextId
+	 *            the architecture context id
+	 * @param viewpointIds
+	 *            the architecture viewpoint ids
+	 * @since 3.0
+	 */
+	protected void createEmptyDomainModel(ModelSet modelSet, String contextId, String[] viewpointIds) {
+		try {
+			ArchitectureDescriptionUtils helper = new ArchitectureDescriptionUtils(modelSet);
+			Command command = helper.createNewModel(contextId, viewpointIds);
+			getCommandStack(modelSet).execute(command);
+		} catch (Exception e) {
+			log.error(e);
+		}
+	}
+
+	/**
+	 * Creates the papyrus models.
+	 *
+	 * @param modelSet
+	 *            the di resource set
+	 * @param newURI
+	 *            the URI of the new model's principal resource
+	 */
+	protected void createPapyrusModels(ModelSet modelSet, URI newURIs) {
+		RecordingCommand command = new NewPapyrusModelCommand(modelSet, newURIs);
+		getCommandStack(modelSet).execute(command);
+	}
+
+
+	/**
+	 * Open diagram.
+	 *
+	 * @param newURI
+	 *            the URI of the new model's principal resource
+	 */
+	protected void openDiagram(final URI newURI) {
+		IWorkbenchPage page = workbench.getActiveWorkbenchWindow().getActivePage();
+		if (page != null) {
+			try {
+				IEditorInput editorInput = createEditorInput(newURI);
+				IDE.openEditor(page, editorInput, getPreferredEditorID(editorInput), true);
+			} catch (PartInitException e) {
+				log.error(e);
+			}
+		}
+	}
+
+	protected IEditorInput createEditorInput(URI uri) {
+		return getSelectedStorageProvider().createEditorInput(uri);
+	}
+
+	protected String getPreferredEditorID(IEditorInput input) throws PartInitException {
+		IEditorDescriptor desc;
+
+		if (input instanceof IFileEditorInput) {
+			desc = IDE.getEditorDescriptor(((IFileEditorInput) input).getFile());
+		} else {
+			// try to get a URI
+			URI uri = null;
+			if (input instanceof IURIEditorInput) {
+				uri = URI.createURI(((IURIEditorInput) input).getURI().toString(), true);
+			} else if (input instanceof URIEditorInput) {
+				uri = ((URIEditorInput) input).getURI();
+			}
+
+			if (uri != null) {
+				desc = IDE.getEditorDescriptor(uri.lastSegment());
+			} else {
+				// hope that the input name is the file name
+				desc = IDE.getEditorDescriptor(input.getName());
+			}
+		}
+
+		return (desc == null) ? "org.eclipse.papyrus.infra.core.papyrusEditor" : desc.getId(); //$NON-NLS-1$
+	}
+
+	/**
+	 * Inits the diagram model.
+	 *
+	 * @param modelSet
+	 *            the di resource set
+	 * @param contextId
+	 *            the architecture context id
+	 */
+	protected void initDiagramModel(ModelSet modelSet, String contextId) {
+		initDiagrams(modelSet, contextId);
+	}
+
+	@Override
+	protected void initDiagrams(ModelSet resourceSet, EObject root, String contextId) {
+		UmlModel model = (UmlModel) resourceSet.getModel(UmlModel.MODEL_ID);
+		EList<EObject> roots = model.getResource().getContents();
+		if (!roots.isEmpty()) {
+			root = roots.get(0);
+			if (root instanceof NamedElement) {
+				getCommandStack(resourceSet).execute(new RenameElementCommand(resourceSet.getTransactionalEditingDomain(), (NamedElement) root, getRootElementName()));
+
+			}
+
+		}
+		List<RepresentationKind> creationCommands = getRepresentationKindsFor(contextId);
+		List<String> diagramName = getDiagramNames();
+		if (creationCommands.isEmpty()) {
+			createEmptyDiagramEditor(resourceSet);
+		} else {
+			for (int i = 0; i < creationCommands.size(); i++) {
+				RepresentationKind kind = creationCommands.get(i);
+				if (kind instanceof PapyrusRepresentationKind) {
+					ViewPrototype proto = ViewPrototype.get((PapyrusRepresentationKind) kind);
+					proto.instantiateOn(root, diagramName.get(i));
+				}
+			}
+		}
+	}
+	/**
+	 * Save diagram.
+	 *
+	 * @param modelSet
+	 *            the di resource set
+	 */
+	private void saveDiagram(ModelSet modelSet) {
+		// TODO verify that there are no conflicts with the existing files and the newly created one
+		try {
+			modelSet.save(new NullProgressMonitor());
+		} catch (IOException e) {
+			log.error(e);
+		}
+	}
+
+
+	protected String getRootElementName() {
+		
+		//return selectRepresentationKindPage.getRootElementName();
+		return "model";
+	}
+
+	/**
+	 * Creates the empty diagram editor.
+	 *
+	 * @param modelSet
+	 *            the model set
+	 */
+	private void createEmptyDiagramEditor(ModelSet modelSet) {
+		// Create an empty editor (no diagrams opened)
+		// Geting an IPageMngr is enough to initialize the
+		// SashSystem.
+		EditorUtils.getIPageMngr(SashModelUtils.getSashModel(modelSet).getResource());
+	}
+
+	protected List<RepresentationKind> getRepresentationKindsFor(String contextId) {
+		return getSelectedRepresentationKinds(contextId);
+	}
+
+
+	protected List<String> getDiagramNames() {
+		return Collections.emptyList();
+	}
+
+	
+
+
+	/**
+	 * Diagram category changed.
+	 *
+	 * @param newCategories
+	 *            the new categories
+	 * @return the i status
+	 * @since 3.0
+	 */
+	public IStatus architectureContextChanged(String... newContexts) {
+		return getSelectedStorageProvider().validateArchitectureContexts(newContexts);
+	}
+
+	protected void initStorageProvider(IWorkbench workbench, IStructuredSelection selection) {
+
+		NewModelStorageProviderRegistry registry = new NewModelStorageProviderRegistry(workbench.getService(IEvaluationService.class));
+
+		// if we are creating a project, then it is in the workspace
+		if (isCreateProjectWizard()) {
+			setSelectedStorageProvider(new WorkspaceNewModelStorageProvider());
+		} else {
+			// look for a pre-determined selection
+			INewModelStorageProvider firstProvider = null;
+			for (INewModelStorageProvider next : registry) {
+				if (firstProvider == null) {
+					firstProvider = next;
+				}
+
+				// don't match on empty selections because there is
+				// then no context to match against
+				if (!selection.isEmpty() && next.canHandle(selection)) {
+					setSelectedStorageProvider(next);
+					break;
+				}
+			}
+
+			// if the choice is pre-determined, don't show the selection page
+			if (getSelectedStorageProvider() == null) {
+				setSelectedStorageProvider(firstProvider);
+
+				// don't need the selection page if only one choice
+				if (registry.size() > 1) {
+					this.storageProviderRegistry = registry;
+				}
+			}
+		}
+	}
+
+	protected SelectStorageProviderPage createSelectStorageProviderPage() {
+		SelectStorageProviderPage result = (storageProviderRegistry == null) ? null : new SelectStorageProviderPage(storageProviderRegistry);
+
+		if (result != null) {
+			result.addSelectionChangedListener(new ISelectionChangedListener() {
+
+				@Override
+				public void selectionChanged(SelectionChangedEvent event) {
+					INewModelStorageProvider provider = (INewModelStorageProvider) ((IStructuredSelection) event.getSelection()).getFirstElement();
+					setSelectedStorageProvider(provider);
+				}
+			});
+		}
+
+		return result;
+	}
+
+	protected Iterable<? extends INewModelStorageProvider> getStorageProviders() {
+		Iterable<? extends INewModelStorageProvider> result;
+
+		if (storageProviderRegistry != null) {
+			result = storageProviderRegistry;
+		} else if (getSelectedStorageProvider() != null) {
+			result = Collections.singletonList(getSelectedStorageProvider());
+		} else {
+			result = Collections.emptyList();
+		}
+
+		return result;
+	}
+
+	protected INewModelStorageProvider getSelectedStorageProvider() {
+		return selectedStorageProvider;
+	}
+
+	/**
+	 * Set what is the storage {@code provider} selected implicitly or explicitly by the user.
+	 *
+	 * @param provider
+	 *            the selected storage provider
+	 * @since 3.2
+	 */
+	protected void setSelectedStorageProvider(INewModelStorageProvider provider) {
+		this.selectedStorageProvider = provider;
+
+		if (getContainer() != null) {
+			// recompute next/previous buttons
+			getContainer().updateButtons();
+		}
+	}
+
+	@Override
+	public IWizardPage getNextPage(IWizardPage page) {
+		final List<IWizardPage> allPages = Arrays.asList(getPages());
+		IWizardPage result = null;
+
+		INewModelStorageProvider provider = providersByPage.get(page);
+		if (provider != null) {
+			// it's contributed by a provider. Get the next in the list
+			List<IWizardPage> pages = providerPages.get(provider);
+			int index = pages.indexOf(page);
+			if ((index >= 0) && (index < (pages.size() - 1))) {
+				result = pages.get(index + 1);
+			} else {
+				// get the first page after the provider pages
+				if (endProviderPageIndex < allPages.size()) {
+					result = allPages.get(endProviderPageIndex);
+				}
+			}
+		} else if (allPages.indexOf(page) == startProviderPageIndex) {
+			// get the first page of the selected provider
+			List<IWizardPage> pages = providerPages.get(getSelectedStorageProvider());
+			if (!pages.isEmpty()) {
+				result = pages.get(0);
+			} else {
+				// get the first page after the provider pages
+				if (endProviderPageIndex < allPages.size()) {
+					result = allPages.get(endProviderPageIndex);
+				}
+			}
+		} else {
+			// somewhere away from the boundary of the provider pages
+			result = super.getNextPage(page);
+		}
+
+		return result;
+	}
+
+	@Override
+	public IWizardPage getPreviousPage(IWizardPage page) {
+		final List<IWizardPage> allPages = Arrays.asList(getPages());
+		IWizardPage result = null;
+
+		INewModelStorageProvider provider = providersByPage.get(page);
+		if (provider != null) {
+			// it's contributed by a provider. Get the previous in the list
+			List<IWizardPage> pages = providerPages.get(provider);
+			int index = pages.indexOf(page);
+			if (index > 0) {
+				result = pages.get(index - 1);
+			} else {
+				// get the last page before the provider pages
+				if (startProviderPageIndex > 0) {
+					result = allPages.get(startProviderPageIndex - 1);
+				}
+			}
+		} else if (allPages.indexOf(page) == endProviderPageIndex) {
+			// get the last page of the selected provider
+			List<IWizardPage> pages = providerPages.get(getSelectedStorageProvider());
+			if (!pages.isEmpty()) {
+				result = pages.get(pages.size() - 1);
+			} else {
+				// get the last page before the provider pages
+				if (startProviderPageIndex >= 0) {
+					result = allPages.get(startProviderPageIndex);
+				}
+			}
+		} else {
+			// somewhere away from the boundary of the provider pages
+			result = super.getPreviousPage(page);
+		}
+
+		return result;
+	}
+
+	@Override
+	public boolean canFinish() {
+		boolean result = true;
+		final IWizardPage[] allPages = getPages();
+
+		// only look at the universal pages and those contributed by the current
+		// storage provider
+
+		for (int i = 0; result && (i <= startProviderPageIndex); i++) {
+			result = allPages[i].isPageComplete();
+		}
+
+		if (result) {
+			for (IWizardPage next : providerPages.get(getSelectedStorageProvider())) {
+				if (!next.isPageComplete()) {
+					result = false;
+					break;
+				}
+			}
+		}
+
+		for (int i = endProviderPageIndex; result && (i < allPages.length); i++) {
+			result = allPages[i].isPageComplete();
+		}
+
+		return result;
+	}
+
+	private INewPapyrusModelPage getNewModelPage() {
+		return getPage(INewPapyrusModelPage.class);
+	}
+
+	protected <P extends IWizardPage> P getPage(Class<P> type) {
+		for (IWizardPage next : getPages()) {
+			if (type.isInstance(next)) {
+				return type.cast(next);
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Queries the user-presentable (translatable) name of the kind of model
+	 * that I create. For example, "Papyrus UML" or "Papyrus SysML".
+	 *
+	 * @return my model kind name
+	 */
+	public String getModelKindName() {
+		return "Papyrus"; //$NON-NLS-1$
+	}
+
+	
+	public boolean isPapyrusRootWizard() {
+		// this.getClass().getName().equals(anObject)
+		return true;
+	}
+	
+	protected IProject createNewProject() throws CoreException {
+		// get a project handle
+
+		final IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject("MyProject");
+
+		// get a project descriptor
+
+		IProjectDescription projectDescription = null;
+		NullProgressMonitor progressMonitor = new NullProgressMonitor();
+
+		projectDescription = ResourcesPlugin.getWorkspace().newProjectDescription("MyProject");
+
+		project.create(projectDescription, new SubProgressMonitor(progressMonitor, 1));
+		project.open(new SubProgressMonitor(progressMonitor, 1));
+		return project;
+	}
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/wizards/ImportFilePage.java b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/wizards/ImportFilePage.java
new file mode 100644
index 0000000..e7d819e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.aasx.import/src/org/eclipse/papyrus/aas/import2papyrus/wizards/ImportFilePage.java
@@ -0,0 +1,104 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Asma Smaoui (CEA LIST) asma.smaoui@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.import2papyrus.wizards;
+
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.jface.dialogs.IDialogSettings;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.internal.wizards.datatransfer.WizardArchiveFileResourceImportPage1;
+
+/**
+ *
+ * Import page
+ *
+ */
+public class ImportFilePage extends WizardArchiveFileResourceImportPage1 {
+
+	
+	private static final String STORE_SOURCE_NAMES_ID = "WizardZipFileResourceImportPage1.STORE_SOURCE_NAMES_ID"; //$NON-NLS-1$
+	/**
+	 * the selected file path
+	 */
+	public IPath selectedFilePath;
+
+	
+	/**
+	 *
+	 * Constructor.
+	 * @param allowedfiles2 
+	 *
+	 * @param pageName
+	 *            the name of the import page
+	 * @param title
+	 *            the title of the page
+	 * @param titleImage
+	 *            the image for this page
+	 * @param tableManager
+	 *            the table manager where the import will be done
+	 */
+	public ImportFilePage(IWorkbench name,
+			IStructuredSelection selection, String[] allowedfiles) {
+		super(name,selection, allowedfiles);
+		
+		this.selectedFilePath = null;
+	}
+
+	public ImportFilePage(IWorkbench workbench, IStructuredSelection selection, String[] allowedfiles,
+			IPath newFilePath) {
+		super(workbench,selection, allowedfiles);
+		this.selectedFilePath = newFilePath;
+		setContainerFieldValue(newFilePath.lastSegment());
+		// TODO Auto-generated constructor stub
+	}
+
+	
+	
+	@Override
+	protected void saveWidgetValues() {
+		IDialogSettings settings = super.getDialogSettings();
+		if (settings != null) {
+			// update source names history
+			String[] sourceNames = settings.getArray(STORE_SOURCE_NAMES_ID);
+			if (sourceNames == null) {
+				sourceNames = new String[0];
+			}
+
+			sourceNames = addToHistory(sourceNames, sourceNameField.getText());
+			
+			
+		}
+	}
+
+	public IPath getFilePath ()
+	{
+		return selectedFilePath;
+	}
+
+
+	@Override
+	protected void restoreWidgetValues() {
+		
+	}
+
+	
+	public void setFilePath (IPath projectPath)
+	{
+		selectedFilePath= projectPath;
+	}
+
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/.classpath b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/.classpath
new file mode 100644
index 0000000..e801ebf
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/.project b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/.project
new file mode 100644
index 0000000..306a2f8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.aas.codegen.ui</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100644
index 0000000..0fee6a9
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,15 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/META-INF/MANIFEST.MF b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..a2257b8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,20 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-SymbolicName: org.eclipse.papyrus.aas.codegen.ui;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Automatic-Module-Name: org.eclipse.papyrus.aas.ui.codegen
+Bundle-RequiredExecutionEnvironment: JavaSE-11
+Bundle-Vendor: %providerName
+Require-Bundle: org.eclipse.ui;bundle-version="[3.118.0,4.0.0)",
+ org.eclipse.core.runtime;bundle-version="[3.20.0,4.0.0)",
+ org.eclipse.uml2.uml;bundle-version="[5.5.0,6.0.0)",
+ org.eclipse.core.resources;bundle-version="[3.13.0,4.0.0)",
+ org.eclipse.papyrus.infra.core.log;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.uml.tools.utils;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.uml.diagram.common;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.m2e.maven.runtime;bundle-version="[1.16.0,2.0.0)",
+ org.eclipse.m2e.core;bundle-version="[1.16.0,2.0.0)",
+ org.eclipse.papyrus.aas.profile;bundle-version="[0.7.0,1.0.0)",
+ org.eclipse.aas.basyx.codegen;bundle-version="[1.0.0,2.0.0)",
+ org.eclipse.papyrus.infra.emf;bundle-version="[4.0.0,5.0.0)"
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/build.properties b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/build.properties
new file mode 100644
index 0000000..e9863e2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/build.properties
@@ -0,0 +1,5 @@
+source.. = src/
+output.. = bin/
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/plugin.properties b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/plugin.properties
new file mode 100755
index 0000000..38733d5
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/plugin.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2020 CEA LIST, and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#
+###############################################################################
+
+pluginName = CanvAAS UI Codegen
+providerName = CanvAAS project
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/plugin.xml b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/plugin.xml
new file mode 100644
index 0000000..6d92c90
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/plugin.xml
@@ -0,0 +1,80 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+<extension point="org.eclipse.ui.menus">
+		<menuContribution
+				locationURI="popup:org.eclipse.gmf.runtime.diagram.ui.DiagramEditorContextMenu">
+			<menu
+				icon="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/icons/AAS_16x16.png"
+				id="org.eclipse.papyrus.aas.ui.menu"
+				label="AAS">
+			</menu>
+		</menuContribution>
+		<menuContribution
+			locationURI="popup:org.eclipse.papyrus.views.modelexplorer.modelexplorer.popup">
+			<menu
+				icon="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/icons/AAS_16x16.png"
+				id="org.eclipse.papyrus.aas.ui.menu"
+				label="AAS">
+			</menu>
+		</menuContribution>
+	</extension>
+   <extension
+         point="org.eclipse.ui.menus">
+       <menuContribution allPopups="false" locationURI="popup:org.eclipse.papyrus.aas.ui.menu">
+         <command
+               commandId="org.eclipse.papyrus.aas.codegen.ui.command"
+               label="Generate AAS Basyx Code"
+               style="push">
+            <visibleWhen checkEnabled="false">
+					<iterate>
+						<adapt type="org.eclipse.emf.ecore.EObject">
+							
+								<test property="org.eclipse.papyrus.uml.stereotype" 
+								value="AAS::AssetAdministrationShell"/>
+								
+								
+						</adapt>
+					</iterate>
+				</visibleWhen>
+         </command>
+      </menuContribution>
+   </extension>
+   <extension
+         point="org.eclipse.ui.commands">
+      <command
+            categoryId="org.eclipse.papyrus.editor.category"
+            description="Generate AAS modules"
+            id="org.eclipse.papyrus.aas.codegen.ui.command"
+            name="Generate AAS modules">
+      </command>
+   </extension>
+   <extension
+         point="org.eclipse.ui.handlers">
+      <handler
+            class="org.eclipse.papyrus.aas.codegen.ui.handlers.GenerateAASCodeHandler"
+            commandId="org.eclipse.papyrus.aas.codegen.ui.command">
+            <activeWhen>
+            <and>
+               <with
+                     variable="selection">
+                  <iterate>
+                     <adapt
+                           type="org.eclipse.emf.ecore.EObject">
+                        <instanceof
+                              value="org.eclipse.uml2.uml.Class">
+                        </instanceof>
+                     </adapt>
+                  </iterate>
+               </with>
+               <count
+                     value="1">
+               </count>
+            </and>
+         </activeWhen>
+      </handler>
+   </extension>
+   
+   
+
+</plugin>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/pom.xml b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/pom.xml
new file mode 100755
index 0000000..2f90754
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-modeling</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.codegen.ui</artifactId>
+	<version>0.7.0-SNAPSHOT</version>
+	<packaging>eclipse-plugin</packaging>
+
+</project>
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/src/org/eclipse/papyrus/aas/codegen/ui/handlers/GenerateAASCodeHandler.java b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/src/org/eclipse/papyrus/aas/codegen/ui/handlers/GenerateAASCodeHandler.java
new file mode 100644
index 0000000..7177903
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/src/org/eclipse/papyrus/aas/codegen/ui/handlers/GenerateAASCodeHandler.java
@@ -0,0 +1,494 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.codegen.ui.handlers;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.lang.reflect.InvocationTargetException;
+import java.net.URL;
+import java.net.URLDecoder;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.LinkedHashMap;
+import java.util.List;
+
+import org.apache.maven.model.Model;
+import org.eclipse.aas.basyx.codegen.util.Project;
+import org.eclipse.aas.basyx.codegen.util.submodel.SubModel;
+import org.eclipse.aas.basyx.codegen.util.submodel.SubModelCreator;
+import org.eclipse.core.commands.ExecutionEvent;
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.resources.IProjectDescription;
+import org.eclipse.core.resources.IWorkspaceRoot;
+import org.eclipse.core.resources.ResourcesPlugin;
+import org.eclipse.core.runtime.CoreException;
+import org.eclipse.core.runtime.FileLocator;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.Path;
+import org.eclipse.core.runtime.Platform;
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.jface.dialogs.MessageDialog;
+import org.eclipse.jface.dialogs.ProgressMonitorDialog;
+import org.eclipse.jface.operation.IRunnableWithProgress;
+import org.eclipse.m2e.core.MavenPlugin;
+import org.eclipse.m2e.core.project.IProjectConfigurationManager;
+import org.eclipse.m2e.core.project.MavenProjectInfo;
+import org.eclipse.m2e.core.project.ProjectImportConfiguration;
+import org.eclipse.papyrus.aas.Asset;
+import org.eclipse.papyrus.aas.AssetAdministrationShell;
+import org.eclipse.papyrus.aas.Submodel;
+import org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl;
+import org.eclipse.papyrus.uml.diagram.common.handlers.CmdHandler;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Operation;
+import org.eclipse.uml2.uml.ParameterDirectionKind;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Stereotype;
+import org.eclipse.uml2.uml.util.UMLUtil;
+import org.osgi.framework.Bundle;
+
+public class GenerateAASCodeHandler extends CmdHandler {
+
+	@Override
+	public Object execute(ExecutionEvent event) throws ExecutionException {
+		updateSelectedEObject();
+
+		IRunnableWithProgress op = new IRunnableWithProgress() {
+
+			@Override
+			public void run(IProgressMonitor monitor) {
+				monitor.beginTask("Generating Basyx Code...", IProgressMonitor.UNKNOWN);
+				try {
+					executeCodeGen(monitor);
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
+				monitor.done();
+			}
+		};
+		try {
+			new ProgressMonitorDialog(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell()).run(true, true,
+					op);
+			MessageDialog.openInformation(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), "Success",
+					"The project " + ((Class) selectedEObject).getName()
+							+ " has been successfully generated and imported into your workspace");
+
+		} catch (InvocationTargetException e) {
+
+			e.printStackTrace();
+			MessageDialog.openError(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), "Error",
+					e.toString());
+
+		} catch (InterruptedException e) {
+
+			e.printStackTrace();
+			MessageDialog.openError(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), "Error",
+					e.toString());
+
+		} catch (Exception e) {
+			e.printStackTrace();
+			MessageDialog.openError(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), "Error",
+					e.toString());
+
+		}
+
+		return null;
+	}
+
+	private Object executeCodeGen(IProgressMonitor monitor) {
+		Class selectedClass = (Class) selectedEObject;
+		AssetAdministrationShell aas = UMLUtil.getStereotypeApplication(selectedClass, AssetAdministrationShell.class);
+		if (aas != null) {
+
+			URI uri = selectedClass.eResource().getURI();
+
+			IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
+			if (uri.segmentCount() < 2) {
+				return null;
+			}
+			String projectLocation = uri.segment(1);
+			try {
+				projectLocation = URLDecoder.decode(uri.segment(1), "UTF-8");
+			} catch (UnsupportedEncodingException e1) {
+				// TODO Auto-generated catch block
+				e1.printStackTrace();
+			}
+			// System.err.println("projectLocation "+ projectLocation);
+			IProject modelProject = root.getProject(projectLocation);
+			if (modelProject.exists()) {
+				// TODO Auto-generated method stub
+				// Set project settings
+				// Create project files
+
+				// List of the submodels from papyrus model
+				List<Submodel> submodels = new ArrayList<>();
+				// List of submodels for basyx code generator
+				List<SubModel> basyx_submodels = new ArrayList<>();
+				// get submodels of the AAS, their operations and their properties
+				submodels = aas.getSubmodel();
+				for (int i = 0; i < submodels.size(); i++) {
+					Submodel submodel = submodels.get(i);
+					Class submodelClass = submodel.getBase_Class();
+					if (submodelClass != null) {
+						String submodelName = submodelClass.getName();
+						SubModel basyxSubmodel = new SubModel(submodelName);
+
+						// add submodel operations
+						if (submodelClass.getAllOperations() != null && submodelClass.getAllOperations().size() > 0) {
+							for (int j = 0; j < submodelClass.getAllOperations().size(); j++) {
+								Operation op = submodelClass.getAllOperations().get(j);
+								String opName = op.getName();
+								if (opName != null && opName.length() > 0) {
+									basyxSubmodel.addOperation(opName);
+									basyxSubmodel.addInputVariables(opName,
+											getOperationParameters(op, ParameterDirectionKind.IN));
+									basyxSubmodel.addOutputVariables(opName,
+											getOperationParameters(op, ParameterDirectionKind.OUT));
+									basyxSubmodel.addInOutputVariables(opName,
+											getOperationParameters(op, ParameterDirectionKind.INOUT));
+
+								} else {
+									basyxSubmodel.addOperation("op" + j);
+								}
+							}
+						}
+
+						// add submodel properties
+						if (submodelClass.getAllAttributes() != null && submodelClass.getAllAttributes().size() > 0) {
+							for (int j = 0; j < submodelClass.getAllAttributes().size(); j++) {
+								Property submodelElement = submodelClass.getAllAttributes().get(j);
+
+								String attName = submodelElement.getName();
+
+								// Generate a submodel property if there is no stereotype applied on the
+								// property
+								if ((submodelElement.getAppliedStereotypes() == null)
+										|| (submodelElement.getAppliedStereotypes().size() == 0)) {
+									if (submodelElement.getDefaultValue() != null) {
+
+										String attValue = submodelElement.getDefaultValue().stringValue();
+
+										if (attName != null && attName.length() > 0 && attValue != null
+												&& attValue.length() > 0) {
+											basyxSubmodel.addProperty(attName, attValue);
+										}
+									} else if (attName != null && attName.length() > 0) {
+										basyxSubmodel.addProperty(attName);
+									} else {
+										basyxSubmodel.addProperty("attribute" + j);
+									}
+								} else {
+									// aad submodel element collection
+									generateSubmodelElementCollection(submodelElement, basyxSubmodel);
+
+									// add submodel property
+									generateProperty(submodelElement, basyxSubmodel, j);
+
+									generateFile(submodelElement, basyxSubmodel);
+
+								}
+
+							}
+						}
+						basyx_submodels.add(basyxSubmodel);
+
+					}
+
+				}
+
+				SubModelCreator mc = new SubModelCreator();
+
+				// Add submodels
+				for (int i = 0; i < basyx_submodels.size(); i++) {
+					mc.addSubModel(basyx_submodels.get(i));
+
+				}
+
+				// get parameters for project creation
+
+				// aas url
+
+				String aasUrl = "";
+				if (((AssetAdministrationShellImpl) aas).getUrl() != null) {
+					aasUrl = ((AssetAdministrationShellImpl) aas).getUrl();
+				} else {
+					aasUrl = "localhost";
+				}
+
+				// aas port
+
+				String aasPort = "";
+				if (((AssetAdministrationShellImpl) aas).getPort() > 0) {
+					aasPort = Integer.toString(((AssetAdministrationShellImpl) aas).getPort());
+				} else {
+					aasPort = "5125";
+				}
+
+				// aas id
+
+				String aasId = "urn:de.basyfloor:devices:DeviceAAS:1.0:1:floordevice#001";
+				if (((AssetAdministrationShellImpl) aas).getIdentification() != null
+						&& ((AssetAdministrationShellImpl) aas).getIdentification().getId() != null) {
+					aasId = ((AssetAdministrationShellImpl) aas).getIdentification().getId();
+				}
+
+				// asset address
+				String deviceEndpoint = "opc.tcp://192.168.0.37:4840";
+
+				if (((AssetAdministrationShellImpl) aas).getAsset() != null) {
+					Asset asset = ((AssetAdministrationShellImpl) aas).getAsset();
+					if (asset.getEndpoint() != null && asset.getEndpoint().size() > 0) {
+						if (asset.getEndpoint().get(0) != null) {
+							if (asset.getEndpoint().get(0).getAddress() != null) {
+								deviceEndpoint = asset.getEndpoint().get(0).getAddress().toString();
+							}
+						}
+					}
+
+				}
+
+				// Create project files
+				// Project aasproject = new
+				// Project("urn:de.basyfloor:devices:DeviceAAS:1.0:1:floordevice#001",
+				// aasUrl, aasPort, mc, "opc.tcp://192.168.0.37:4840");
+				Project aasproject = new Project(aasId, aasUrl, aasPort, mc, deviceEndpoint);
+				// Currently only OPC-UA connection with the devices are possible
+
+				// If below is commented out, it creates project files in the working folder.
+				aasproject.setProjectName(selectedClass.getName()); // The asset name as well as the project name
+				aasproject.setNamespaceFromProjectName(); // Creates project structure in Eclipse automatically based on
+															// project name
+				// testAAS.setNamespace("eu.dfki.canvaas.project"); // Instead, it is possible
+				// to use explicit namespacing.
+				aasproject.setProjectFolder(root.getLocation().toString() + "/" + selectedClass.getName() + "/");
+
+				Bundle bundle = Platform.getBundle("org.eclipse.aas.basyx.codegen");
+
+				if (bundle != null) {
+					final URL extLibEclipseURL = FileLocator.find(bundle, new Path("/extClasses"), null);
+
+					String extLibURL = null;
+					try {
+						URL fileURL = FileLocator.toFileURL(extLibEclipseURL);
+						if (fileURL != null) {
+							extLibURL = fileURL.toString();
+							if (extLibURL != null)
+							 {
+								extLibURL = extLibURL.replaceAll("file:/", ""); //$NON-NLS-1$ //$NON-NLS-2$
+							}
+						}
+					} catch (IOException e) {
+						e.printStackTrace();
+					}
+					System.err.println("CanvAAS full path : " + extLibURL);
+
+					aasproject.setExternalClassFolder("/" + extLibURL);
+
+				}
+				aasproject.linkAAS(aasproject);
+
+				// Create the runnable project
+				aasproject.createProject();
+
+				// Import and open the project in the workspace
+
+				IProjectDescription description;
+				try {
+
+					description = ResourcesPlugin.getWorkspace().loadProjectDescription(
+							new Path(root.getLocation().toString() + "/" + selectedClass.getName() + "/.project"));
+
+					File pomFile = new File(ResourcesPlugin.getWorkspace().getRoot().getLocation().toString() + "/"
+							+ selectedClass.getName() + "/pom.xml");
+					importMavenProjects(monitor, pomFile, description.getName(), "aas", "aasmodule", "0.1");
+				} catch (CoreException e) {
+					// TODO Auto-generated catch block
+					e.printStackTrace();
+				}
+
+			}
+		}
+		return null;
+	}
+
+	
+	private LinkedHashMap<String,String> getOperationParameters(Operation op, int direction) {
+		LinkedHashMap<String, String> inParamaters = new LinkedHashMap<String, String>();
+		if (op.getOwnedParameters() != null) {
+			
+			
+			for (int i = 0; i < op.getOwnedParameters().size(); i++) {
+				if (op.getOwnedParameters().get(i) != null && op.getOwnedParameters().get(i).getName()!=null) {
+					System.err.println("searched direction: " + direction);
+					System.err.println(op.getOwnedParameters().get(i).getName() + " direction: "
+							+ op.getOwnedParameters().get(i).getDirection());
+					
+					if (op.getOwnedParameters().get(i).getDirection().getValue() == direction) {
+						String paramType="String";
+						System.err.println("found parameter for direction " + direction + "\n");
+						if(op.getOwnedParameters().get(i).getType()!=null && op.getOwnedParameters().get(i).getType().getName()!=null )
+						{
+							paramType=op.getOwnedParameters().get(i).getType().getName();
+						}
+							inParamaters.put(op.getOwnedParameters().get(i).getName(),paramType);
+					}
+				}
+			}
+			
+		}
+		return inParamaters;
+
+	}
+
+	private void importMavenProjects(IProgressMonitor monitor, File pomFile, String projectName, String groupId,
+			String artifactId, String version) throws CoreException {
+
+		IProjectConfigurationManager manager = MavenPlugin.getProjectConfigurationManager();
+		ProjectImportConfiguration config = new ProjectImportConfiguration();
+		Collection<MavenProjectInfo> infos = new ArrayList<>();
+		Model model = new Model();
+		model.setGroupId(groupId);
+		model.setArtifactId(artifactId);
+		model.setVersion(version);
+
+		model.setPomFile(pomFile);
+		MavenProjectInfo info = new MavenProjectInfo(projectName, pomFile, model, null);
+		infos.add(info);
+
+		manager.importProjects(infos, config, monitor);
+	}
+
+	private void generateSubmodelElementCollection(Property submodelElement, SubModel basyxSubmodel) {
+		if (org.eclipse.papyrus.uml.tools.utils.UMLUtil.getAppliedStereotype(submodelElement,
+				"AAS::SubmodelElementCollection", true) != null) {
+			basyxSubmodel.addSubModelElementCollection(submodelElement.getName());
+			if ((submodelElement.getType() != null) && (submodelElement.getType() instanceof Class)) {
+				Class collection = (Class) submodelElement.getType();
+
+				// generate attributes of the submodelelementcollection
+				for (Property collectionchild : collection.getAllAttributes()) {
+					// case of addSubModelElementCollection subelement is a Property
+					if (org.eclipse.papyrus.uml.tools.utils.UMLUtil.getAppliedStereotype(collectionchild,
+							"AAS::Property", true) != null) {
+
+						basyxSubmodel.addPropertyToSubModelElementCollection(collectionchild.getName(),
+								submodelElement.getName());
+					}
+
+					// case of addSubModelElementCollection subelement is a File
+					Stereotype stFile = org.eclipse.papyrus.uml.tools.utils.UMLUtil
+							.getAppliedStereotype(collectionchild, "AAS::File", true);
+					if (stFile != null) {
+
+						Object valueObject = collectionchild.getValue(stFile, "path");
+						if (valueObject != null) {
+							basyxSubmodel.addFilePath(valueObject.toString(), submodelElement.getName());
+						} else {
+							basyxSubmodel.addFilePath(collectionchild.getName(), submodelElement.getName());
+						}
+
+					}
+
+					// case of addSubModelElementCollection subelement is a
+					// SubModelElementCollection
+					Stereotype stCollection = org.eclipse.papyrus.uml.tools.utils.UMLUtil
+							.getAppliedStereotype(collectionchild, "AAS::SubmodelElementCollection", true);
+					if (stCollection != null) {
+
+						// waiting for the basyx API to support this case
+						//
+					}
+
+				}
+
+				// generate operations of the submodelelementcollection
+				for (Operation collectionchildop : collection.getAllOperations()) {
+					if (collectionchildop != null) {
+						String opName = "op";
+						if (collectionchildop.getName() != null && collectionchildop.getName().isEmpty() != true) {
+							opName = collectionchildop.getName();
+						}
+
+						basyxSubmodel.addOperationToSubModelElementCollection(opName, submodelElement.getName());
+
+						basyxSubmodel.addInputVariables(opName,
+								getOperationParameters(collectionchildop, ParameterDirectionKind.IN));
+						basyxSubmodel.addOutputVariables(opName,
+								getOperationParameters(collectionchildop, ParameterDirectionKind.OUT));
+						basyxSubmodel.addInOutputVariables(opName,
+								getOperationParameters(collectionchildop, ParameterDirectionKind.INOUT));
+						// basyxSubmodel.addInputVariables(opName, null);
+						// basyxSubmodel.addOutputVariables(opName, null);
+
+					}
+
+				}
+
+			}
+
+		}
+
+	}
+
+	private void generateProperty(Property submodelElement, SubModel basyxSubmodel, int j) {
+		// TODO Auto-generated method stub
+		if (org.eclipse.papyrus.uml.tools.utils.UMLUtil.getAppliedStereotype(submodelElement, "AAS::Property",
+				true) != null) {
+			String attName = submodelElement.getName();
+			if (submodelElement.getDefaultValue() != null) {
+
+				String attValue = submodelElement.getDefaultValue().stringValue();
+				if (attName != null && submodelElement.getType() != null
+						&& submodelElement.getType().getName() != null) {
+					if (attValue == null) {
+						basyxSubmodel.addProperty(attName, "undefined", submodelElement.getType().getName());
+					} else {
+						basyxSubmodel.addProperty(attName, attValue, submodelElement.getType().getName());
+					}
+				}
+				if (attName != null && attName.length() > 0 && attValue != null && attValue.length() > 0) {
+					basyxSubmodel.addProperty(attName, attValue);
+				}
+			} else if (attName != null && attName.length() > 0) {
+				basyxSubmodel.addProperty(attName);
+			} else {
+				basyxSubmodel.addProperty("attribute" + j);
+			}
+		}
+
+	}
+
+	private void generateFile(Property submodelElement, SubModel basyxSubmodel) {
+		// TODO Auto-generated method stub
+		Stereotype stFile = org.eclipse.papyrus.uml.tools.utils.UMLUtil.getAppliedStereotype(submodelElement,
+				"AAS::File", true);
+		if (stFile != null) {
+
+			Object valueObject = submodelElement.getValue(stFile, "path");
+			if (valueObject != null) {
+				basyxSubmodel.addFilePath(valueObject.toString());
+			} else {
+				basyxSubmodel.addFilePath(submodelElement.getName());
+			}
+
+		}
+
+	}
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/src/org/eclipse/papyrus/aas/ui/codegen/Activator.java b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/src/org/eclipse/papyrus/aas/ui/codegen/Activator.java
new file mode 100644
index 0000000..a50172c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.codegen.ui/src/org/eclipse/papyrus/aas/ui/codegen/Activator.java
@@ -0,0 +1,45 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.ui.codegen;
+
+import org.eclipse.papyrus.infra.core.log.LogHelper;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+	private static BundleContext context;
+
+	public static LogHelper log;
+
+	static BundleContext getContext() {
+		return context;
+	}
+
+	@Override
+	public void start(BundleContext bundleContext) throws Exception {
+		// TODO Auto-generated method stub
+		Activator.context = bundleContext;
+		log = new LogHelper(context.getBundle());
+	}
+
+	@Override
+	public void stop(BundleContext context) throws Exception {
+		// TODO Auto-generated method stub
+		Activator.context = null;
+	}
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/.classpath b/plugins/modeling/org.eclipse.papyrus.aas.profile/.classpath
new file mode 100644
index 0000000..4a00bec
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/.classpath
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
+		<attributes>
+			<attribute name="module" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/.project b/plugins/modeling/org.eclipse.papyrus.aas.profile/.project
new file mode 100644
index 0000000..fc1d1c9
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.aas.profile</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.core.resources.prefs b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.core.resources.prefs
new file mode 100755
index 0000000..896a9a5
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.core.runtime.prefs b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.core.runtime.prefs
new file mode 100755
index 0000000..5a0ad22
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.jdt.core.prefs b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.jdt.core.prefs
new file mode 100755
index 0000000..56bf2aa
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,319 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enablePreviewFeatures=disabled
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.problem.reportPreviewFeatures=warning
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.jdt.ui.prefs b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.jdt.ui.prefs
new file mode 100755
index 0000000..ba7542e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,127 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License 2.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-2.0/\n *\n * SPDX-License-Identifier: EPL-2.0\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=true
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_modifiers=false
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=true
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=true
+sp_cleanup.remove_unused_imports=true
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=true
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.pde.api.tools.prefs b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100755
index 0000000..b2260f8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,104 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_FIELD=Warning
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Warning
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Warning
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_DEFAULT_METHOD=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+changed_execution_env=Warning
+eclipse.preferences.version=1
+incompatible_api_component_version=Warning
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+incompatible_api_component_version_report_major_without_breaking_change=Error
+incompatible_api_component_version_report_minor_without_api_change=Error
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Error
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/META-INF/MANIFEST.MF b/plugins/modeling/org.eclipse.papyrus.aas.profile/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..8685c45
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/META-INF/MANIFEST.MF
@@ -0,0 +1,19 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-Vendor: %providerName
+Bundle-SymbolicName: org.eclipse.papyrus.aas.profile;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Bundle-ClassPath: .
+Bundle-Localization: plugin
+Automatic-Module-Name: org.eclipse.papyrus.aas.profile
+Bundle-RequiredExecutionEnvironment: JavaSE-11
+Export-Package: org.eclipse.papyrus.aas,
+ org.eclipse.papyrus.aas.impl,
+ org.eclipse.papyrus.aas.util
+Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.20.0,4.0.0)",
+ org.eclipse.emf.ecore;visibility:=reexport;bundle-version="[2.23.0,3.0.0)",
+ org.eclipse.uml2.types;visibility:=reexport;bundle-version="[2.5.0,3.0.0)",
+ org.eclipse.uml2.uml;visibility:=reexport;bundle-version="[5.5.0,6.0.0)",
+ org.eclipse.papyrus.uml.extensionpoints;bundle-version="[2.0.0,3.0.0)"
+Bundle-ActivationPolicy: lazy
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/build.properties b/plugins/modeling/org.eclipse.papyrus.aas.profile/build.properties
new file mode 100644
index 0000000..6fbc65c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/build.properties
@@ -0,0 +1,9 @@
+#
+
+bin.includes = .,\
+               resources/,\
+               META-INF/,\
+               plugin.xml,\
+               plugin.properties
+source.. = src/
+output.. = bin/
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/plugin.properties b/plugins/modeling/org.eclipse.papyrus.aas.profile/plugin.properties
new file mode 100644
index 0000000..c964db3
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/plugin.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2020 CEA LIST, and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#
+###############################################################################
+
+pluginName = CanvAAS UML Profile
+providerName = CanvAAS project
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/plugin.xml b/plugins/modeling/org.eclipse.papyrus.aas.profile/plugin.xml
new file mode 100644
index 0000000..aee1acf
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/plugin.xml
@@ -0,0 +1,39 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.0"?>
+
+<!--
+-->
+
+<plugin>
+
+   <extension point="org.eclipse.emf.ecore.generated_package">
+      <!-- @generated aas -->
+      <package
+            uri="http://www.eclipse.org/papyrus/AAS"
+            class="org.eclipse.papyrus.aas.AASPackage"
+            genModel="resources/aas.genmodel"/>
+   </extension>
+   <extension
+         point="org.eclipse.emf.ecore.uri_mapping">
+      <mapping
+            source="pathmap://AAS_PROFILE/"
+            target="platform:/plugin/org.eclipse.papyrus.aas.profile/resources/">
+      </mapping>
+   </extension>
+   <extension
+         point="org.eclipse.papyrus.uml.extensionpoints.UMLProfile">
+      <profile
+            description="Asset Administration Shell Profile"
+            name="AASProfile"
+            path="pathmap://AAS_PROFILE/aas.profile.uml">
+      </profile>
+   </extension>
+   <extension
+         point="org.eclipse.uml2.uml.generated_package">
+      <package
+            location="pathmap://AAS_PROFILE/aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"
+            uri="http://www.eclipse.org/papyrus/AAS">
+      </package>
+   </extension>
+
+</plugin>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/pom.xml b/plugins/modeling/org.eclipse.papyrus.aas.profile/pom.xml
new file mode 100755
index 0000000..fcfd1cf
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-modeling</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.profile</artifactId>
+	<version>0.7.0-SNAPSHOT</version>
+	<packaging>eclipse-plugin</packaging>
+
+</project>
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.ecore b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.ecore
new file mode 100644
index 0000000..ecb161c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.ecore
@@ -0,0 +1,355 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="aas" nsURI="http://www.eclipse.org/papyrus/AAS" nsPrefix="AAS">
+  <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+    <details key="originalName" value="AAS"/>
+  </eAnnotations>
+  <eClassifiers xsi:type="ecore:EEnum" name="IdentifierType">
+    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+      <details key="documentation" value="IRDI: International Registration Data Identifier&#xA;IRI: Internationalized Resource Identifier"/>
+    </eAnnotations>
+    <eLiterals name="Custom"/>
+    <eLiterals name="IRDI" value="1"/>
+    <eLiterals name="IRI" value="2"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="AssetAdministrationShell" eSuperTypes="#//Identifiable">
+    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+      <details key="documentation" value="A project in Basyx&#xA;Basyx:&#xA;&#xA;identifierType: IRDI (urn:...), URI, custom &#xA;identifier (for submodel or operation) ->generated automatically&#xA;resource name&#xA;idshort: string -> generated automatically&#xA;category:string&#xA;description:string&#xA;parent: not used&#xA;administration: not used&#xA;&#xA;&#xA;&#xA;Security is not implemented, but is an ongoing project&#xA;0 &lt; port  &lt;= 65535&#xA;"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="derivedFrom" ordered="false"
+        eType="#//AssetAdministrationShell"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="security" ordered="false"
+        eType="#//Security"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="asset" ordered="false"
+        lowerBound="1" eType="#//Asset"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="submodel" ordered="false"
+        upperBound="-1" eType="#//Submodel"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="url" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="port" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Identifiable" abstract="true" eSuperTypes="#//Refereable">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="administration" ordered="false"
+        eType="#//AdministrativeInformation" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="identification" ordered="false"
+        lowerBound="1" eType="#//Identifier" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Refereable" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="idShort" ordered="false"
+        lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"
+        changeable="false" volatile="true" transient="true" derived="true">
+      <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+        <details key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;if (getBase_Class() != null) {&#xA;&#x9;&#x9;&#x9;String name = getBase_Class().getName();&#xA;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="category" ordered="false"
+        eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="description" ordered="false"
+        eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Class" ordered="false"
+        eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="parent" ordered="false"
+        eType="#//Refereable"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="AdministrativeInformation">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="version" ordered="false"
+        lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="revision" ordered="false"
+        lowerBound="1" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Identifier">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="idType" ordered="false"
+        lowerBound="1" eType="#//IdentifierType"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="id" ordered="false" lowerBound="1"
+        eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Security">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Class" ordered="false"
+        eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="accessControlPolicyPoints"
+        ordered="false" lowerBound="1" eType="#//AccessControlPolicyPoints" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="certificate" ordered="false"
+        upperBound="-1" eType="#//Certificate" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="requiredCertificateExtension"
+        ordered="false" upperBound="-1" eType="#//Reference"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="AccessControlPolicyPoints">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="localAccessControl" ordered="false"
+        lowerBound="1" eType="#//AccessControl" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="externalAccessControl"
+        ordered="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="externalInformationPoints"
+        ordered="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="internalInformationPoint"
+        ordered="false" lowerBound="1" eType="#//Submodel"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="externalPolicyDecisionPoints"
+        ordered="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="externalPolicyEnforcementPoint"
+        ordered="false" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="AccessControl"/>
+  <eClassifiers xsi:type="ecore:EClass" name="Submodel" eSuperTypes="#//Identifiable #//HasKind #//HasSemantics">
+    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+      <details key="documentation" value="A model in Basyx&#xA;Basyx:&#xA;&#xA;identifierType: IRDI (urn:...), URI, custom &#xA;identifier (for submodel or operation) ->generated automatically&#xA;resource name&#xA;idshort: string -> generated automatically&#xA;category:string&#xA;description:string&#xA;parent: not used&#xA;administration: not used&#xA;&#xA;&#xA;"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="submodelelement" ordered="false"
+        upperBound="-1" eType="#//SubmodelElement" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="HasKind" abstract="true">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" ordered="false" eType="#//ModelingKind"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_HasKind_Class" ordered="false"
+        eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Class">
+      <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <details key="originalName" value="base_Class"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="ModelingKind">
+    <eLiterals name="Template"/>
+    <eLiterals name="Instance" value="1"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="HasSemantics" abstract="true">
+    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+      <details key="documentation" value="semanticid is present in Basyx but not used&#xA;semanticid should be typed by an URI or a refereable"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="semanticId" ordered="false"
+        lowerBound="1" eType="#//Reference"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_HasSemantics_Class"
+        ordered="false" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Class">
+      <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <details key="originalName" value="base_Class"/>
+      </eAnnotations>
+    </eStructuralFeatures>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Reference">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="key" ordered="false" lowerBound="1"
+        upperBound="-1" eType="#//Key" containment="true"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Class" ordered="false"
+        eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Class"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Key">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="type" ordered="false" eType="#//KeyElements"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="local" ordered="false"
+        eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Boolean"
+        defaultValueLiteral="true"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="value" ordered="false"
+        eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="idType" ordered="false"
+        eType="#//KeyType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="KeyElements">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="baseType" value="ReferableElements"/>
+    </eAnnotations>
+    <eLiterals name="GlobalReference"/>
+    <eLiterals name="FragmentReference" value="1"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="ReferableElements">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="baseType" value="IdentifiableElement"/>
+    </eAnnotations>
+    <eLiterals name="AccessPermissionRule"/>
+    <eLiterals name="AnnotatedRelationshipElement" value="1"/>
+    <eLiterals name="BasicEvent" value="2"/>
+    <eLiterals name="Blob" value="3"/>
+    <eLiterals name="Capability" value="4"/>
+    <eLiterals name="ConceptDictionary" value="5"/>
+    <eLiterals name="DataElement" value="6"/>
+    <eLiterals name="File" value="7"/>
+    <eLiterals name="Entity" value="8"/>
+    <eLiterals name="Event" value="9"/>
+    <eLiterals name="MultiLanguageProperty" value="10"/>
+    <eLiterals name="Operation" value="11"/>
+    <eLiterals name="Property" value="12"/>
+    <eLiterals name="Range" value="13"/>
+    <eLiterals name="ReferenceElement" value="14"/>
+    <eLiterals name="RelationshipElement" value="15"/>
+    <eLiterals name="SubmodelElement" value="16"/>
+    <eLiterals name="SubmodelElementCollection" value="17"/>
+    <eLiterals name="View" value="18"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="IdentifiableElement">
+    <eLiterals name="Asset"/>
+    <eLiterals name="AssetAdministrationShell" value="1"/>
+    <eLiterals name="ConceptDescription" value="2"/>
+    <eLiterals name="Submodel" value="3"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="KeyType">
+    <eAnnotations source="http:///org/eclipse/emf/ecore/util/ExtendedMetaData">
+      <details key="baseType" value="LocalKeyType"/>
+    </eAnnotations>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="LocalKeyType">
+    <eLiterals name="IdShort"/>
+    <eLiterals name="FragmentId" value="1"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SubmodelElement" abstract="true" eSuperTypes="#//Refereable #//HasSemantics"/>
+  <eClassifiers xsi:type="ecore:EClass" name="Certificate"/>
+  <eClassifiers xsi:type="ecore:EClass" name="Asset" eSuperTypes="#//Identifiable">
+    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+      <details key="documentation" value="There is no asset in Basyx"/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" ordered="false" lowerBound="1"
+        eType="#//AssetKind"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="endpoint" ordered="false"
+        upperBound="-1" eType="#//Endpoint" containment="true"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="AssetKind">
+    <eLiterals name="Type"/>
+    <eLiterals name="Instance" value="1"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Endpoint">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="address" ordered="false"
+        eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="protocol" ordered="false"
+        eType="#//ProtocolKind"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="ProtocolKind">
+    <eLiterals name="HTTP"/>
+    <eLiterals name="MQTT" value="1"/>
+    <eLiterals name="OPCUA" value="2"/>
+    <eLiterals name="CoAP" value="3"/>
+    <eLiterals name="OTHER" value="4"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="File" eSuperTypes="#//DataElement">
+    <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+      <details key="documentation" value="A File is a data element that represents an address to a file. The value is an URI that can represent an absolute or relative path."/>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="path" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="mimeType" ordered="false"
+        lowerBound="1" eType="#//MimeType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="DataElement" abstract="true" eSuperTypes="#//SubmodelElement">
+    <eAnnotations source="duplicates">
+      <contents xsi:type="ecore:EAttribute" name="idShort" ordered="false" lowerBound="1"
+          eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"
+          changeable="false" volatile="true" transient="true" derived="true">
+        <eAnnotations source="redefines" references="#//Refereable/idShort"/>
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;if (getBase_Property() != null) {&#xA;&#x9;&#x9;&#x9;String name = getBase_Property().getName();&#xA;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+        </eAnnotations>
+      </contents>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Property" ordered="false"
+        lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="MimeType">
+    <eLiterals name="applicationjson">
+      <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <details key="originalName" value="application/json"/>
+      </eAnnotations>
+    </eLiterals>
+    <eLiterals name="applicationxls" value="1">
+      <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <details key="originalName" value="application/xls"/>
+      </eAnnotations>
+    </eLiterals>
+    <eLiterals name="imagejpg" value="2">
+      <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <details key="originalName" value="image/jpg"/>
+      </eAnnotations>
+    </eLiterals>
+    <eLiterals name="applicationpdf" value="3">
+      <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <details key="originalName" value="application/pdf"/>
+      </eAnnotations>
+    </eLiterals>
+    <eLiterals name="applicationzip" value="4">
+      <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <details key="originalName" value="application/zip"/>
+      </eAnnotations>
+    </eLiterals>
+    <eLiterals name="imagebmp" value="5">
+      <eAnnotations source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <details key="originalName" value="image/bmp"/>
+      </eAnnotations>
+    </eLiterals>
+    <eLiterals name="other" value="6"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EEnum" name="EntityType">
+    <eLiterals name="CoManagedEntity"/>
+    <eLiterals name="SelfManagedEntity" value="1"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Entity" eSuperTypes="#//SubmodelElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="entityType" ordered="false"
+        lowerBound="1" eType="#//EntityType"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="asset" ordered="false"
+        lowerBound="1" eType="#//Asset"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="RelationshipElement" eSuperTypes="#//SubmodelElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Dependency" ordered="false"
+        eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Dependency"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Operation" eSuperTypes="#//SubmodelElement">
+    <eAnnotations source="duplicates">
+      <contents xsi:type="ecore:EAttribute" name="idShort" ordered="false" lowerBound="1"
+          eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"
+          changeable="false" volatile="true" transient="true" derived="true">
+        <eAnnotations source="redefines" references="#//Refereable/idShort"/>
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;if (getBase_Operation() != null) {&#xA;&#x9;&#x9;&#x9;String name = getBase_Operation().getName();&#xA;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+        </eAnnotations>
+      </contents>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Operation" ordered="false"
+        lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Operation"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="SubmodelElementCollection" eSuperTypes="#//SubmodelElement">
+    <eAnnotations source="duplicates">
+      <contents xsi:type="ecore:EAttribute" name="idShort" ordered="false" lowerBound="1"
+          eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"
+          changeable="false" volatile="true" transient="true" derived="true">
+        <eAnnotations source="redefines" references="#//Refereable/idShort"/>
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;String name = &quot;&quot;;&#xA;&#x9;&#x9;if (getBase_DataType() != null) {&#xA;&#x9;&#x9;&#x9;name = getBase_DataType().getName();&#xA;&#xA;&#x9;&#x9;} else if (getBase_Class() != null) {&#xA;&#x9;&#x9;&#x9;name = getBase_Class().getName();&#xA;&#xA;&#x9;&#x9;} else if (getBase_Property() != null) {&#xA;&#x9;&#x9;&#x9;name = getBase_Property().getName();&#xA;&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return name;"/>
+        </eAnnotations>
+      </contents>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" upperBound="-1"
+        eType="#//SubmodelElement"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Property" ordered="false"
+        eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_DataType" ordered="false"
+        eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//DataType"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Property" eSuperTypes="#//DataElement"/>
+  <eClassifiers xsi:type="ecore:EClass" name="ReferenceElement" eSuperTypes="#//DataElement">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="value" ordered="false"
+        eType="#//Reference"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Event" abstract="true" eSuperTypes="#//SubmodelElement">
+    <eAnnotations source="duplicates">
+      <contents xsi:type="ecore:EAttribute" name="idShort" ordered="false" lowerBound="1"
+          eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"
+          changeable="false" volatile="true" transient="true" derived="true">
+        <eAnnotations source="redefines" references="#//Refereable/idShort"/>
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;if (getBase_Property() != null) {&#xA;&#x9;&#x9;&#x9;String name = getBase_Property().getName();&#xA;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+        </eAnnotations>
+      </contents>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Property" ordered="false"
+        eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="BasicEvent" eSuperTypes="#//Event">
+    <eStructuralFeatures xsi:type="ecore:EReference" name="observed" ordered="false"
+        lowerBound="1" eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Element"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Range" eSuperTypes="#//DataElement">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="min" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="max" ordered="false" eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//Integer"/>
+  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Capability" eSuperTypes="#//SubmodelElement">
+    <eAnnotations source="duplicates">
+      <contents xsi:type="ecore:EAttribute" name="idShort" ordered="false" lowerBound="1"
+          eType="ecore:EDataType ../../org.eclipse.uml2.types/model/Types.ecore#//String"
+          changeable="false" volatile="true" transient="true" derived="true">
+        <eAnnotations source="redefines" references="#//Refereable/idShort"/>
+        <eAnnotations source="http://www.eclipse.org/emf/2002/GenModel">
+          <details key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;&#x9;&#x9;if (getBase_Property() != null) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;String name = getBase_Property().getName();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;return null;"/>
+        </eAnnotations>
+      </contents>
+    </eAnnotations>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="base_Property" ordered="false"
+        eType="ecore:EClass ../../org.eclipse.uml2.uml/model/UML.ecore#//Property"/>
+  </eClassifiers>
+</ecore:EPackage>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.genmodel b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.genmodel
new file mode 100644
index 0000000..7b2d276
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.genmodel
@@ -0,0 +1,252 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:genmodel="http://www.eclipse.org/uml2/2.2.0/GenModel"
+    copyrightText="Copyright (c) 2020 CEA LIST.&#xA;&#xA; &#xA;&#xA; All rights reserved. This program and the accompanying materials&#xA;&#xA; are made available under the terms of the Eclipse Public License 2.0&#xA;&#xA; which accompanies this distribution, and is available at&#xA;&#xA; https://www.eclipse.org/legal/epl-2.0/ &lt;https://www.eclipse.org/legal/epl-2.0/> &#xA;&#xA; &#xA;&#xA; SPDX-License-Identifier: EPL-2.0&#xA;&#xA; &#xA;&#xA; Contributors:&#xA;&#xA; Saadia DHOUIB (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation"
+    modelDirectory="/org.eclipse.papyrus.aas.profile/src" modelPluginID="org.eclipse.papyrus.aas.profile"
+    modelName="Aas" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
+    importerID="org.eclipse.uml2.uml.ecore.importer" complianceLevel="5.0" usedGenPackages="../../org.eclipse.emf.ecore/model/Ecore.genmodel#//ecore ../../org.eclipse.uml2.types/model/Types.genmodel#//types ../../org.eclipse.uml2.uml/model/UML.genmodel#//uml"
+    operationReflection="true" importOrganizing="true">
+  <genAnnotations source="http://www.eclipse.org/emf/2002/GenModel/importer/org.eclipse.uml2.uml.ecore.importer">
+    <details key="OPPOSITE_ROLE_NAMES" value="IGNORE"/>
+    <details key="DUPLICATE_FEATURES" value="PROCESS"/>
+    <details key="ANNOTATION_DETAILS" value="PROCESS"/>
+    <details key="PROPERTY_DEFAULT_EXPRESSIONS" value="IGNORE"/>
+    <details key="DUPLICATE_FEATURE_INHERITANCE" value="PROCESS"/>
+    <details key="COMMENTS" value="PROCESS"/>
+    <details key="DERIVED_FEATURES" value="PROCESS"/>
+    <details key="SUPER_CLASS_ORDER" value="PROCESS"/>
+    <details key="DUPLICATE_OPERATION_INHERITANCE" value="DISCARD"/>
+    <details key="REDEFINING_OPERATIONS" value="PROCESS"/>
+    <details key="INVARIANT_CONSTRAINTS" value="PROCESS"/>
+    <details key="UNION_PROPERTIES" value="REPORT"/>
+    <details key="DUPLICATE_OPERATIONS" value="DISCARD"/>
+    <details key="NON_API_INVARIANTS" value="IGNORE"/>
+    <details key="CAMEL_CASE_NAMES" value="IGNORE"/>
+    <details key="SUBSETTING_PROPERTIES" value="REPORT"/>
+    <details key="OPERATION_BODIES" value="IGNORE"/>
+    <details key="ECORE_TAGGED_VALUES" value="PROCESS"/>
+    <details key="UNTYPED_PROPERTIES" value="REPORT"/>
+    <details key="REDEFINING_PROPERTIES" value="PROCESS"/>
+    <details key="INVOCATION_DELEGATES" value="IGNORE"/>
+    <details key="VALIDATION_DELEGATES" value="IGNORE"/>
+  </genAnnotations>
+  <foreignModel>aas.profile.uml</foreignModel>
+  <genPackages xsi:type="genmodel:GenPackage" prefix="AAS" basePackage="org.eclipse.papyrus"
+      disposableProviderFactory="true" ecorePackage="aas.ecore#/">
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//IdentifierType">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifierType/Custom"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifierType/IRDI"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifierType/IRI"/>
+    </genEnums>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//ModelingKind">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ModelingKind/Template"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ModelingKind/Instance"/>
+    </genEnums>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//KeyElements">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/GlobalReference"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//KeyElements/FragmentReference"/>
+    </genEnums>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//ReferableElements">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/AccessPermissionRule"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/AnnotatedRelationshipElement"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/BasicEvent"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Blob"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Capability"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/ConceptDictionary"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/DataElement"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/File"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Entity"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Event"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/MultiLanguageProperty"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Operation"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Property"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/Range"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/ReferenceElement"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/RelationshipElement"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/SubmodelElement"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/SubmodelElementCollection"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ReferableElements/View"/>
+    </genEnums>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//IdentifiableElement">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifiableElement/Asset"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifiableElement/AssetAdministrationShell"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifiableElement/ConceptDescription"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//IdentifiableElement/Submodel"/>
+    </genEnums>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//KeyType"/>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//LocalKeyType">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LocalKeyType/IdShort"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//LocalKeyType/FragmentId"/>
+    </genEnums>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//AssetKind">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//AssetKind/Type"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//AssetKind/Instance"/>
+    </genEnums>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//ProtocolKind">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/HTTP"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/MQTT"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/OPCUA"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/CoAP"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//ProtocolKind/OTHER"/>
+    </genEnums>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//MimeType">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationjson"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationxls"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/imagejpg"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationpdf"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/applicationzip"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/imagebmp"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//MimeType/other"/>
+    </genEnums>
+    <genEnums xsi:type="genmodel:GenEnum" typeSafeEnumCompatible="false" ecoreEnum="aas.ecore#//EntityType">
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//EntityType/CoManagedEntity"/>
+      <genEnumLiterals xsi:type="genmodel:GenEnumLiteral" ecoreEnumLiteral="aas.ecore#//EntityType/SelfManagedEntity"/>
+    </genEnums>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AssetAdministrationShell">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/derivedFrom"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/security"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/asset"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AssetAdministrationShell/submodel"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AssetAdministrationShell/url"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AssetAdministrationShell/port"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//Identifiable">
+      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+          createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Identifiable/administration"/>
+      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+          createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Identifiable/identification"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//Refereable">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Refereable/idShort"
+          get="// get the name of the Referable Element&#xA;&#x9;&#x9;if (getBase_Class() != null) {&#xA;&#x9;&#x9;&#x9;String name = getBase_Class().getName();&#xA;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Refereable/category"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Refereable/description"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Refereable/base_Class"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Refereable/parent"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AdministrativeInformation">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AdministrativeInformation/version"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AdministrativeInformation/revision"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Identifier">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Identifier/idType"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Identifier/id"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Security">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Security/base_Class"/>
+      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+          createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Security/accessControlPolicyPoints"/>
+      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+          createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Security/certificate"/>
+      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+          createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Security/requiredCertificateExtension"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AccessControlPolicyPoints">
+      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+          createChild="true" ecoreFeature="ecore:EReference aas.ecore#//AccessControlPolicyPoints/localAccessControl"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AccessControlPolicyPoints/externalAccessControl"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AccessControlPolicyPoints/externalInformationPoints"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//AccessControlPolicyPoints/internalInformationPoint"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AccessControlPolicyPoints/externalPolicyDecisionPoints"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//AccessControlPolicyPoints/externalPolicyEnforcementPoint"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//AccessControl"/>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Submodel">
+      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+          createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Submodel/submodelelement"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//HasKind">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//HasKind/kind"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//HasKind/base_HasKind_Class"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//HasSemantics">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//HasSemantics/semanticId"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//HasSemantics/base_HasSemantics_Class"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Reference">
+      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+          createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Reference/key"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Reference/base_Class"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Key">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Key/type"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Key/local"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Key/value"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Key/idType"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//SubmodelElement"/>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Certificate"/>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Asset">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Asset/kind"/>
+      <genFeatures xsi:type="genmodel:GenFeature" property="None" children="true"
+          createChild="true" ecoreFeature="ecore:EReference aas.ecore#//Asset/endpoint"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Endpoint">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Endpoint/address"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Endpoint/protocol"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//File">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//File/path"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//File/mimeType"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//DataElement">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//DataElement/base_Property"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Entity">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Entity/entityType"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Entity/asset"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//RelationshipElement">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//RelationshipElement/base_Dependency"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Operation">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Operation/base_Operation"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//SubmodelElementCollection">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//SubmodelElementCollection/value"
+          get="if (getBase_DataType() != null &amp;&amp; getBase_DataType().getAllAttributes() != null &amp;&amp; getBase_DataType().getAllAttributes().size() > 0) {&#xA;&#xA;&#x9;&#x9;&#x9;List&lt;SubmodelElement> value = new ArrayList&lt;>();&#xA;&#xA;&#x9;&#x9;&#x9;for (int i = 0; i &lt; getBase_DataType().getAllAttributes().size(); i++) {&#xA;&#x9;&#x9;&#x9;&#x9;if (getBase_DataType().getAllAttributes().get(i) instanceof Property) {&#xA;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;if (getBase_DataType().getAllAttributes().get(i).getAppliedStereotypes() != null) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;for (int j = 0; j &lt; getBase_DataType().getAllAttributes().get(i).getAppliedStereotypes().size(); j++) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;if (getBase_DataType().getAllAttributes().get(i).getAppliedStereotypes().get(j) instanceof SubmodelElement) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;value.add((SubmodelElement) getBase_DataType().getAllAttributes().get(i));&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;}&#xA;&#xA;&#x9;&#x9;&#x9;return (EList&lt;SubmodelElement>) value;&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//SubmodelElementCollection/base_Property"/>
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//SubmodelElementCollection/base_DataType"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Property"/>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//ReferenceElement">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//ReferenceElement/value"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" image="false" ecoreClass="aas.ecore#//Event">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Event/base_Property"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//BasicEvent">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//BasicEvent/observed"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Range">
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Range/min"/>
+      <genFeatures xsi:type="genmodel:GenFeature" createChild="false" ecoreFeature="ecore:EAttribute aas.ecore#//Range/max"/>
+    </genClasses>
+    <genClasses xsi:type="genmodel:GenClass" ecoreClass="aas.ecore#//Capability">
+      <genFeatures xsi:type="genmodel:GenFeature" notify="false" createChild="false"
+          propertySortChoices="true" ecoreFeature="ecore:EReference aas.ecore#//Capability/base_Property"/>
+    </genClasses>
+  </genPackages>
+</genmodel:GenModel>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.profile.di b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.profile.di
new file mode 100644
index 0000000..247ed5e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.profile.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.uml.architecture.Profile"/>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.profile.notation b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.profile.notation
new file mode 100644
index 0000000..707415c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.profile.notation
@@ -0,0 +1,2408 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:css="http://www.eclipse.org/papyrus/infra/gmfdiag/css" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">
+  <notation:Diagram xmi:id="_Nbw1EI7QEeqdQ5EKLtW6Vg" type="PapyrusUMLProfileDiagram" name="AAS" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_QVzyEI7VEeqdQ5EKLtW6Vg" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_QVzyEo7VEeqdQ5EKLtW6Vg" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_QV0ZII7VEeqdQ5EKLtW6Vg" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_cPElEJXmEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_cO0GYJXmEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_cPElEZXmEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_oJcsYJXmEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_oJM0wJXmEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_oJcsYZXmEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_vgNekJXmEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_vf_cIJXmEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_vgNekZXmEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ltYlIJ9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_WYb0Yp9TEeqHH8LtZOjghw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ltYlIZ9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ltZMMJ9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_BMsoEJXfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ltZMMZ9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ltZMMp9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Xmrh0JXfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ltZMM59TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ltZzQJ9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_sgCXMJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ltZzQZ9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ltZzQp9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_w0i5UJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ltZzQ59TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ltaaUJ9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_2chOcJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ltaaUZ9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ltaaUp9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Ch_KkJXgEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ltaaU59TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_OO3GEDDbEeudTfGrNe5Q3w" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_uGjzoCKGEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_OO3GETDbEeudTfGrNe5Q3w"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_OO4UMDDbEeudTfGrNe5Q3w" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_xdodICKGEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_OO4UMTDbEeudTfGrNe5Q3w"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_QV0ZIY7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_QV0ZIo7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QV0ZI47VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QV0ZJI7VEeqdQ5EKLtW6Vg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_QV0ZJY7VEeqdQ5EKLtW6Vg" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_QV0ZJo7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_QV0ZJ47VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QV0ZKI7VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QV0ZKY7VEeqdQ5EKLtW6Vg"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_QVx84I7VEeqdQ5EKLtW6Vg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QVzyEY7VEeqdQ5EKLtW6Vg" x="680" y="340" width="301" height="221"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_RLs4QI7VEeqdQ5EKLtW6Vg" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_RLs4Qo7VEeqdQ5EKLtW6Vg" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RLs4Q47VEeqdQ5EKLtW6Vg" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_HISiEJRFEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_HIJ_MJRFEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_HISiEZRFEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_AlaXgJ9UEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_BMsoEJXfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_AlaXgZ9UEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_AlbloJ9UEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Xmrh0JXfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_AlbloZ9UEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_Alblop9UEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_sgCXMJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Alblo59UEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_AlblpJ9UEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_w0i5UJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_AlblpZ9UEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_AlcMsJ9UEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_2chOcJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_AlcMsZ9UEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_AlcMsp9UEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Ch_KkJXgEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_AlcMs59UEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_KFigQDDbEeudTfGrNe5Q3w" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_lZCp4CKGEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_KFigQTDbEeudTfGrNe5Q3w"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RLs4RI7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_RLs4RY7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_RLs4Ro7VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RLs4R47VEeqdQ5EKLtW6Vg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RLtfUI7VEeqdQ5EKLtW6Vg" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RLtfUY7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_RLtfUo7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_RLtfU47VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RLtfVI7VEeqdQ5EKLtW6Vg"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_RLrqII7VEeqdQ5EKLtW6Vg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RLs4QY7VEeqdQ5EKLtW6Vg" x="360" y="360" height="201"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_S6tXwI7VEeqdQ5EKLtW6Vg" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_S6tXwo7VEeqdQ5EKLtW6Vg" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_S6tXw47VEeqdQ5EKLtW6Vg" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_xO6HkJ9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_BMsoEJXfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO6HkZ9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xO6uoJ9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Xmrh0JXfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO6uoZ9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xO7VsJ9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_sgCXMJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO7VsZ9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xO7Vsp9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_w0i5UJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO7Vs59TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xO78wJ9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_2chOcJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO78wZ9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xO78wp9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_9XBicJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO78w59TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xO78xJ9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Ch_KkJXgEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO78xZ9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xO8j0J9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_UMEKMJXhEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO8j0Z9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xO8j0p9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_kmnk8Zj-EeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO8j059TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xO9K4J9TEeqHH8LtZOjghw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_ZV4uQJXiEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xO9K4Z9TEeqHH8LtZOjghw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_lyNvIKr2EeqCiIVjjvsakg" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_bo7K8Kr2EeqCiIVjjvsakg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_lyNvIar2EeqCiIVjjvsakg"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_S6tXxI7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_S6tXxY7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_S6tXxo7VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_S6tXx47VEeqdQ5EKLtW6Vg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_S6tXyI7VEeqdQ5EKLtW6Vg" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_S6tXyY7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_S6tXyo7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_S6tXy47VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_S6tXzI7VEeqdQ5EKLtW6Vg"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_S6sJoI7VEeqdQ5EKLtW6Vg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_S6tXwY7VEeqdQ5EKLtW6Vg" y="620" width="421" height="221"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_3rjCUI7VEeqdQ5EKLtW6Vg" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_3rjCUo7VEeqdQ5EKLtW6Vg" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_3rjCU47VEeqdQ5EKLtW6Vg" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_446NUI7VEeqdQ5EKLtW6Vg" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_44174I7VEeqdQ5EKLtW6Vg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_446NUY7VEeqdQ5EKLtW6Vg"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_50j9QI7VEeqdQ5EKLtW6Vg" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_50fEwI7VEeqdQ5EKLtW6Vg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_50j9QY7VEeqdQ5EKLtW6Vg"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_3rjCVI7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_3rjCVY7VEeqdQ5EKLtW6Vg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_3rjCVo7VEeqdQ5EKLtW6Vg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3rjCV47VEeqdQ5EKLtW6Vg"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_3rh0MI7VEeqdQ5EKLtW6Vg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3rjCUY7VEeqdQ5EKLtW6Vg" x="780" y="40"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_3MuZ4JQbEeqsmLiGoCAZPQ" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3MvoAJQbEeqsmLiGoCAZPQ" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3MvoAZQbEeqsmLiGoCAZPQ" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3MwPEJQbEeqsmLiGoCAZPQ" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3MwPEZQbEeqsmLiGoCAZPQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3MwPEpQbEeqsmLiGoCAZPQ" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_3MwPE5QbEeqsmLiGoCAZPQ" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_3MvA8JQbEeqsmLiGoCAZPQ" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3MvA8ZQbEeqsmLiGoCAZPQ" x="360" y="-180" width="400"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_t0CMIJTfEeqsmLiGoCAZPQ" type="DataType_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_t0CzMJTfEeqsmLiGoCAZPQ" type="DataType_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_t0DaQJTfEeqsmLiGoCAZPQ" type="DataType_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_wbxqcJTfEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_wbjA8JTfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_wbxqcZTfEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xfgYUJTfEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_xfULEJTfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xfgYUZTfEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_t0DaQZTfEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_t0DaQpTfEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_t0DaQ5TfEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t0DaRJTfEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_t0DaRZTfEeqsmLiGoCAZPQ" type="DataType_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_t0DaRpTfEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_t0DaR5TfEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_t0DaSJTfEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t0DaSZTfEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:DataType" href="aas.profile.uml#_tz5pQJTfEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t0CMIZTfEeqsmLiGoCAZPQ" x="780" y="160"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_oOYUwJTrEeqsmLiGoCAZPQ" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_oOY70JTrEeqsmLiGoCAZPQ" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_oOY70ZTrEeqsmLiGoCAZPQ" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_sgQZoJTrEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_sgCXMJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_sgQZoZTrEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_w0vtoJTrEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_w0i5UJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_w0vtoZTrEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_2cs0oJTrEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_2chOcJTrEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_2cs0oZTrEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_CiMl8JXgEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Ch_KkJXgEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_CiMl8ZXgEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_oOY70pTrEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_oOY705TrEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_oOY71JTrEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oOY71ZTrEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_oOY71pTrEeqsmLiGoCAZPQ" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_oOY715TrEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_oOY72JTrEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_oOY72ZTrEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oOY72pTrEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_oOXGoJTrEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_oOYUwZTrEeqsmLiGoCAZPQ" x="520" y="-20"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_TEbNkJTtEeqsmLiGoCAZPQ" type="DataType_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_TEbNkpTtEeqsmLiGoCAZPQ" type="DataType_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_TEbNk5TtEeqsmLiGoCAZPQ" type="DataType_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_AC2vMJTvEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_ACoswJTvEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_AC2vMZTvEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_2C6e0JTvEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_2CpZEJTvEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_2C6e0ZTvEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_TEbNlJTtEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_TEbNlZTtEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_TEbNlpTtEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TEbNl5TtEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_TEbNmJTtEeqsmLiGoCAZPQ" type="DataType_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_TEbNmZTtEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_TEbNmpTtEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_TEbNm5TtEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TEbNnJTtEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:DataType" href="aas.profile.uml#_TEZYYJTtEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_TEbNkZTtEeqsmLiGoCAZPQ" x="1080" y="460"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_z5voUJTuEeqsmLiGoCAZPQ" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_z5voUpTuEeqsmLiGoCAZPQ" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_z5voU5TuEeqsmLiGoCAZPQ" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_187oEJTuEeqsmLiGoCAZPQ" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_18sXgJTuEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_187oEZTuEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_22EPgJTuEeqsmLiGoCAZPQ" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_214CQJTuEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_22EPgZTuEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_6BaxMJTuEeqsmLiGoCAZPQ" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_6BN84JTuEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_6BaxMZTuEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_z5voVJTuEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_z5voVZTuEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_z5voVpTuEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z5voV5TuEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_z5tzIJTuEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_z5voUZTuEeqsmLiGoCAZPQ" x="1080" y="300"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_wbIbEJWsEeqsmLiGoCAZPQ" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_wbJCIJWsEeqsmLiGoCAZPQ" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_wbJCIZWsEeqsmLiGoCAZPQ" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_BM4OQJXfEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_BMsoEJXfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_BM4OQZXfEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_Xm6LUJXfEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Xmrh0JXfEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Xm6LUZXfEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_wbJCIpWsEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_wbJCI5WsEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wbJCJJWsEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wbJCJZWsEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_wbJCJpWsEeqsmLiGoCAZPQ" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_wbJCJ5WsEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_wbJCKJWsEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wbJCKZWsEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wbJCKpWsEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_wbHM8JWsEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wbIbEZWsEeqsmLiGoCAZPQ" x="340" y="180" width="381" height="101"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_KpwGcJXhEeqsmLiGoCAZPQ" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_KpwGcpXhEeqsmLiGoCAZPQ" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_KpwGc5XhEeqsmLiGoCAZPQ" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_MioToJXhEeqsmLiGoCAZPQ" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_MicGYJXhEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_MioToZXhEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_NxDOkJXhEeqsmLiGoCAZPQ" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_Nw2aQJXhEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_NxDOkZXhEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_KpwGdJXhEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_KpwGdZXhEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_KpwGdpXhEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KpwGd5XhEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_KptDIJXhEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_KpwGcZXhEeqsmLiGoCAZPQ" x="920" y="40"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Q2Pd4JXhEeqsmLiGoCAZPQ" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Q2QE8JXhEeqsmLiGoCAZPQ" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Q2QE8ZXhEeqsmLiGoCAZPQ" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_UMSzsJXhEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_UMEKMJXhEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_UMSzsZXhEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Q2QE8pXhEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Q2QE85XhEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Q2QE9JXhEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q2QE9ZXhEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Q2QE9pXhEeqsmLiGoCAZPQ" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Q2QE95XhEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Q2QE-JXhEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Q2QE-ZXhEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q2QE-pXhEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_Q2O20JXhEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q2Pd4ZXhEeqsmLiGoCAZPQ" x="160" y="420" height="61"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_MYBwsJXiEeqsmLiGoCAZPQ" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_MYBwspXiEeqsmLiGoCAZPQ" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_MYBws5XiEeqsmLiGoCAZPQ" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_ZWH-0JXiEeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_ZV4uQJXiEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ZWH-0ZXiEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_MYBwtJXiEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_MYBwtZXiEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_MYBwtpXiEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MYBwt5XiEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_MYBwuJXiEeqsmLiGoCAZPQ" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_MYBwuZXiEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_MYBwupXiEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_MYBwu5XiEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MYBwvJXiEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_MX_UcJXiEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_MYBwsZXiEeqsmLiGoCAZPQ" x="-20" y="420" height="61"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_dawbMJj-EeqsmLiGoCAZPQ" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_daxCQJj-EeqsmLiGoCAZPQ" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_daxCQZj-EeqsmLiGoCAZPQ" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_daxCQpj-EeqsmLiGoCAZPQ" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_daxCQ5j-EeqsmLiGoCAZPQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_daxCRJj-EeqsmLiGoCAZPQ" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_daxCRZj-EeqsmLiGoCAZPQ" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_dawbMpj-EeqsmLiGoCAZPQ" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dawbM5j-EeqsmLiGoCAZPQ" y="320" width="321"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_obk7oJ9REeqHH8LtZOjghw" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_obmw0J9REeqHH8LtZOjghw" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="aas.profile.uml#_obeN8J9REeqHH8LtZOjghw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_obk7oZ9REeqHH8LtZOjghw" x="1220" y="300"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_6vaYAJ9UEeqHH8LtZOjghw" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_6va_EJ9UEeqHH8LtZOjghw" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="aas.profile.uml#_6vYi0J9UEeqHH8LtZOjghw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6vaYAZ9UEeqHH8LtZOjghw" x="880" y="600"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_BI_wQJ9VEeqHH8LtZOjghw" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_BI_wQp9VEeqHH8LtZOjghw" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="aas.profile.uml#_BI97EJ9VEeqHH8LtZOjghw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BI_wQZ9VEeqHH8LtZOjghw" x="480" y="760"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_SEkrIJ9WEeqHH8LtZOjghw" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_SElSMJ9WEeqHH8LtZOjghw" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="aas.profile.uml#_SEhAwJ9WEeqHH8LtZOjghw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SEkrIZ9WEeqHH8LtZOjghw" x="880" y="680" width="181"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_13lpQJ9bEeqHH8LtZOjghw" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_13mQUJ9bEeqHH8LtZOjghw" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="aas.profile.uml#_13il8J9bEeqHH8LtZOjghw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_13lpQZ9bEeqHH8LtZOjghw" x="520" y="580"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Gj9f8J9cEeqHH8LtZOjghw" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Gj-HAJ9cEeqHH8LtZOjghw" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="aas.profile.uml#_Gj5OgJ9cEeqHH8LtZOjghw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Gj9f8Z9cEeqHH8LtZOjghw" x="1040" y="600"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Zv6XcJ9cEeqHH8LtZOjghw" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Zv6Xcp9cEeqHH8LtZOjghw" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="aas.profile.uml#_Zv37MJ9cEeqHH8LtZOjghw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Zv6XcZ9cEeqHH8LtZOjghw" x="-240" y="520"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_JDXlEKr2EeqCiIVjjvsakg" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_JDZaQKr2EeqCiIVjjvsakg" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_JDZaQar2EeqCiIVjjvsakg" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_LpWv4Kr2EeqCiIVjjvsakg" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_Li1RIKr2EeqCiIVjjvsakg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_LpWv4ar2EeqCiIVjjvsakg"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_P-2wgKr2EeqCiIVjjvsakg" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_P4AhoKr2EeqCiIVjjvsakg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_P-2wgar2EeqCiIVjjvsakg"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_JDZaQqr2EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_JDZaQ6r2EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JDZaRKr2EeqCiIVjjvsakg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JDZaRar2EeqCiIVjjvsakg"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_JDEqIKr2EeqCiIVjjvsakg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JDXlEar2EeqCiIVjjvsakg" x="560" y="860"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Yf49cKr2EeqCiIVjjvsakg" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MgmLMP5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MgmLMf5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Yf49cqr2EeqCiIVjjvsakg" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MgmLMv5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MgmLM_5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Yf5kgKr2EeqCiIVjjvsakg" visible="false" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MgmLNP5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MgmLNf5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Yf5kgar2EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Yf5kgqr2EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Yf5kg6r2EeqCiIVjjvsakg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Yf5khKr2EeqCiIVjjvsakg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Yf5khar2EeqCiIVjjvsakg" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Yf5khqr2EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Yf5kh6r2EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Yf5kiKr2EeqCiIVjjvsakg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Yf5kiar2EeqCiIVjjvsakg"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_Yf1TEKr2EeqCiIVjjvsakg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Yf49car2EeqCiIVjjvsakg" x="180" y="940" height="80"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_o9u2oKr7EeqCiIVjjvsakg" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MgmyQP5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MgmyQf5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_o9vdsKr7EeqCiIVjjvsakg" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MgmyQv5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MgmyQ_5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_o9vdsar7EeqCiIVjjvsakg" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MgmyRP5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MgmyRf5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <children xmi:type="notation:Shape" xmi:id="_-dOH8KsEEeqnq7OKRN2fbg" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_-TEtcKsEEeqnq7OKRN2fbg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_-dOH8asEEeqnq7OKRN2fbg"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_HFF8sKsFEeqnq7OKRN2fbg" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_G9kYYKsFEeqnq7OKRN2fbg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_HFF8sasFEeqnq7OKRN2fbg"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_o9vdsqr7EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_o9vds6r7EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_o9vdtKr7EeqCiIVjjvsakg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o9vdtar7EeqCiIVjjvsakg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_o9vdtqr7EeqCiIVjjvsakg" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_o9vdt6r7EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_o9vduKr7EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_o9vduar7EeqCiIVjjvsakg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o9vduqr7EeqCiIVjjvsakg"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_o9tBcKr7EeqCiIVjjvsakg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o9u2oar7EeqCiIVjjvsakg" x="200" y="1060" height="81"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_gJVMUKr8EeqCiIVjjvsakg" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zMLyMKr8EeqCiIVjjvsakg" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zMMZQKr8EeqCiIVjjvsakg" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_gJVzYKr8EeqCiIVjjvsakg" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zMMZQar8EeqCiIVjjvsakg" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zMMZQqr8EeqCiIVjjvsakg" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_gJVzYar8EeqCiIVjjvsakg" visible="false" type="Stereotype_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_gJVzYqr8EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_gJVzY6r8EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gJVzZKr8EeqCiIVjjvsakg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gJVzZar8EeqCiIVjjvsakg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_gJVzZqr8EeqCiIVjjvsakg" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_gJVzZ6r8EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_gJVzaKr8EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gJVzaar8EeqCiIVjjvsakg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gJVzaqr8EeqCiIVjjvsakg"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_oOXGoJTrEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gJVMUar8EeqCiIVjjvsakg" x="280" y="860" height="40"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_x8lLgKr8EeqCiIVjjvsakg" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zMJ9AKr8EeqCiIVjjvsakg" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zMJ9Aar8EeqCiIVjjvsakg" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_x8lykKr8EeqCiIVjjvsakg" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_zMKkEKr8EeqCiIVjjvsakg" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_zMKkEar8EeqCiIVjjvsakg" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_x8lykar8EeqCiIVjjvsakg" visible="false" type="Stereotype_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_x8lykqr8EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_x8lyk6r8EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_x8lylKr8EeqCiIVjjvsakg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_x8lylar8EeqCiIVjjvsakg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_x8mZoKr8EeqCiIVjjvsakg" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_x8mZoar8EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_x8mZoqr8EeqCiIVjjvsakg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_x8mZo6r8EeqCiIVjjvsakg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_x8mZpKr8EeqCiIVjjvsakg"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_MX_UcJXiEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_x8lLgar8EeqCiIVjjvsakg" x="340" y="920" height="42"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_qhUkwKsFEeqnq7OKRN2fbg" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_qhVy4KsFEeqnq7OKRN2fbg" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_qhVy4asFEeqnq7OKRN2fbg" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_qhVy4qsFEeqnq7OKRN2fbg" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_qhVy46sFEeqnq7OKRN2fbg" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_qhVy5KsFEeqnq7OKRN2fbg" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_qhVy5asFEeqnq7OKRN2fbg" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_qhVL0KsFEeqnq7OKRN2fbg" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Dependency"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qhVL0asFEeqnq7OKRN2fbg" x="420" y="980"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_uF3CgKsFEeqnq7OKRN2fbg" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_OsPjYP5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OsPjYf5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_uF3pkKsFEeqnq7OKRN2fbg" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_OsPjYv5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OsQKcP5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_uF3pkasFEeqnq7OKRN2fbg" visible="false" type="Stereotype_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_uF3pkqsFEeqnq7OKRN2fbg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_uF3pk6sFEeqnq7OKRN2fbg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_uF3plKsFEeqnq7OKRN2fbg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uF3plasFEeqnq7OKRN2fbg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_uF3plqsFEeqnq7OKRN2fbg" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_uF3pl6sFEeqnq7OKRN2fbg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_uF3pmKsFEeqnq7OKRN2fbg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_uF3pmasFEeqnq7OKRN2fbg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uF3pmqsFEeqnq7OKRN2fbg"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_uF0mQKsFEeqnq7OKRN2fbg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uF3CgasFEeqnq7OKRN2fbg" x="400" y="1060" height="61"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_VKjgEP5KEeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Mgk9EP5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Mgk9Ef5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_VKl8UP5KEeqmZsqm6Otq5g" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Mgk9Ev5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Mgk9E_5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_VKl8Uf5KEeqmZsqm6Otq5g" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Mgk9FP5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Mgk9Ff5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <children xmi:type="notation:Shape" xmi:id="_Z82xcP5KEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Z1LcIP5KEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Z82xcf5KEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_VKl8Uv5KEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_VKl8U_5KEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_VKl8VP5KEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VKl8Vf5KEeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_VKl8Vv5KEeqmZsqm6Otq5g" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_VKl8V_5KEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_VKl8WP5KEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_VKl8Wf5KEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VKl8Wv5KEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_VKU2kP5KEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VKjgEf5KEeqmZsqm6Otq5g" x="-120" y="1080" height="81"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_-1aNkP5KEeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MglkIP5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MglkIf5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_-1a0oP5KEeqmZsqm6Otq5g" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MglkIv5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MglkI_5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_-1a0of5KEeqmZsqm6Otq5g" visible="false" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_MglkJP5LEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_MglkJf5LEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_-1a0ov5KEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_-1a0o_5KEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_-1a0pP5KEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-1a0pf5KEeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_-1a0pv5KEeqmZsqm6Otq5g" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_-1a0p_5KEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_-1a0qP5KEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_-1a0qf5KEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-1a0qv5KEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_-1YYYP5KEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-1aNkf5KEeqmZsqm6Otq5g" x="100" y="1160" height="61"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_XsV_cCJ9EeuWq4zY-5mLEA" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XsYbsCJ9EeuWq4zY-5mLEA" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XsYbsSJ9EeuWq4zY-5mLEA" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XsYbsiJ9EeuWq4zY-5mLEA" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XsYbsyJ9EeuWq4zY-5mLEA" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XsYbtCJ9EeuWq4zY-5mLEA" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XsYbtSJ9EeuWq4zY-5mLEA" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_XsX0oCJ9EeuWq4zY-5mLEA" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#DataType"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XsX0oSJ9EeuWq4zY-5mLEA" x="-120" y="960"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_0YLb8DDaEeudTfGrNe5Q3w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_0YLb8TDaEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0YLb8zDaEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0YLb8jDaEeudTfGrNe5Q3w" x="560" y="-180"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_0Ye98zDaEeudTfGrNe5Q3w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_0Ye99DDaEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0YflADDaEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0Ye99TDaEeudTfGrNe5Q3w" x="200" y="320"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_0YtAYzDaEeudTfGrNe5Q3w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_0YtAZDDaEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0YtAZjDaEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Dependency"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0YtAZTDaEeudTfGrNe5Q3w" x="620" y="980"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_0Y3_gzDaEeudTfGrNe5Q3w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_0Y3_hDDaEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0Y3_hjDaEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#DataType"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0Y3_hTDaEeudTfGrNe5Q3w" x="80" y="960"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_Nbw1EY7QEeqdQ5EKLtW6Vg" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_Nbw1Eo7QEeqdQ5EKLtW6Vg"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_Nbw1E47QEeqdQ5EKLtW6Vg" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+      <owner xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    </styles>
+    <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_Cl9FcJTsEeqsmLiGoCAZPQ" name="css_stylesheets" eObjectListValue="_Cl9sgJTsEeqsmLiGoCAZPQ"/>
+    <element xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    <edges xmi:type="notation:Connector" xmi:id="_9XQL8JTrEeqsmLiGoCAZPQ" type="Extension_Edge" source="_oOYUwJTrEeqsmLiGoCAZPQ" target="_3MuZ4JQbEeqsmLiGoCAZPQ">
+      <styles xmi:type="notation:FontStyle" xmi:id="_9XQL8ZTrEeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_9W_GMJTrEeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9XQL8pTrEeqsmLiGoCAZPQ" points="[680, 340, -643984, -643984]$[400, 70, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XljIJTrEeqsmLiGoCAZPQ" id="(0.3821656050955414,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9XljIZTrEeqsmLiGoCAZPQ" id="(0.55,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_il_IAJXfEeqsmLiGoCAZPQ" type="Generalization_Edge" source="_wbIbEJWsEeqsmLiGoCAZPQ" target="_oOYUwJTrEeqsmLiGoCAZPQ">
+      <children xmi:type="notation:DecorationNode" xmi:id="_il_IA5XfEeqsmLiGoCAZPQ" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_i-3iEJXfEeqsmLiGoCAZPQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_il_IBJXfEeqsmLiGoCAZPQ" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_il_IAZXfEeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_ilupUJXfEeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_il_IApXfEeqsmLiGoCAZPQ" points="[600, 260, -643984, -643984]$[600, 209, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_imbM4JXfEeqsmLiGoCAZPQ" id="(0.6824146981627297,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_imbz8JXfEeqsmLiGoCAZPQ" id="(0.5095541401273885,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_nFwFoJXkEeqsmLiGoCAZPQ" type="Generalization_Edge" source="_QVzyEI7VEeqdQ5EKLtW6Vg" target="_wbIbEJWsEeqsmLiGoCAZPQ">
+      <children xmi:type="notation:DecorationNode" xmi:id="_nFwFo5XkEeqsmLiGoCAZPQ" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_7Gw84JXkEeqsmLiGoCAZPQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_nFwFpJXkEeqsmLiGoCAZPQ" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_nFwFoZXkEeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_nFiqQJXkEeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nFwFopXkEeqsmLiGoCAZPQ" points="[580, 340, -643984, -643984]$[580, 301, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nGK8YJXkEeqsmLiGoCAZPQ" id="(0.19933554817275748,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nGK8YZXkEeqsmLiGoCAZPQ" id="(0.7874015748031497,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_6N1w0JXkEeqsmLiGoCAZPQ" type="Generalization_Edge" source="_RLs4QI7VEeqdQ5EKLtW6Vg" target="_wbIbEJWsEeqsmLiGoCAZPQ">
+      <children xmi:type="notation:DecorationNode" xmi:id="_6N1w05XkEeqsmLiGoCAZPQ" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_6sSnYJXkEeqsmLiGoCAZPQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_6N1w1JXkEeqsmLiGoCAZPQ" y="59"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_6N1w0ZXkEeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_6NnHUJXkEeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6N1w0pXkEeqsmLiGoCAZPQ" points="[340, 340, -643984, -643984]$[480, 301, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6OScwJXkEeqsmLiGoCAZPQ" id="(0.631578947368421,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6OTD0JXkEeqsmLiGoCAZPQ" id="(0.7349081364829396,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_xDsgAJXlEeqsmLiGoCAZPQ" type="Generalization_Edge" source="_S6tXwI7VEeqdQ5EKLtW6Vg" target="_wbIbEJWsEeqsmLiGoCAZPQ">
+      <children xmi:type="notation:DecorationNode" xmi:id="_xDtHEJXlEeqsmLiGoCAZPQ" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lB6w8JjqEeqsmLiGoCAZPQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_xDtHEZXlEeqsmLiGoCAZPQ" x="-1" y="59"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_xDsgAZXlEeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_xDedkJXlEeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xDsgApXlEeqsmLiGoCAZPQ" points="[280, 360, -643984, -643984]$[460, 301, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xEHWwJXlEeqsmLiGoCAZPQ" id="(0.8076009501187649,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xEHWwZXlEeqsmLiGoCAZPQ" id="(0.0,0.9900990099009901)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_FD2boJXmEeqsmLiGoCAZPQ" type="Generalization_Edge" source="_S6tXwI7VEeqdQ5EKLtW6Vg" target="_Q2Pd4JXhEeqsmLiGoCAZPQ">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_pogxgJj-EeqsmLiGoCAZPQ" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pogxgZj-EeqsmLiGoCAZPQ" key="routing" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_FD2bo5XmEeqsmLiGoCAZPQ" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_lCFJAJjqEeqsmLiGoCAZPQ" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_FD2bpJXmEeqsmLiGoCAZPQ" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_FD2boZXmEeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_FDnyIJXmEeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FD2bopXmEeqsmLiGoCAZPQ"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FEQEQJXmEeqsmLiGoCAZPQ" id="(0.6175771971496437,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FEQEQZXmEeqsmLiGoCAZPQ" id="(0.6211180124223602,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_j7gLYJj-EeqsmLiGoCAZPQ" type="Extension_Edge" source="_MYBwsJXiEeqsmLiGoCAZPQ" target="_dawbMJj-EeqsmLiGoCAZPQ">
+      <styles xmi:type="notation:FontStyle" xmi:id="_j7gLYZj-EeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_j7PFoJj-EeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_j7gLYpj-EeqsmLiGoCAZPQ" points="[60, 420, -643984, -643984]$[60, 370, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_j75M8Jj-EeqsmLiGoCAZPQ" id="(0.47904191616766467,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_j750AJj-EeqsmLiGoCAZPQ" id="(0.18691588785046728,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_km3ckJj-EeqsmLiGoCAZPQ" type="Extension_Edge" source="_Q2Pd4JXhEeqsmLiGoCAZPQ" target="_dawbMJj-EeqsmLiGoCAZPQ">
+      <styles xmi:type="notation:FontStyle" xmi:id="_km3ckZj-EeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_kmm94Jj-EeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_km3ckpj-EeqsmLiGoCAZPQ" points="[240, 420, -643984, -643984]$[240, 370, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_knPQAJj-EeqsmLiGoCAZPQ" id="(0.4968944099378882,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_knP3EJj-EeqsmLiGoCAZPQ" id="(0.7476635514018691,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_uqonkJj-EeqsmLiGoCAZPQ" type="Generalization_Edge" source="_S6tXwI7VEeqdQ5EKLtW6Vg" target="_MYBwsJXiEeqsmLiGoCAZPQ">
+      <children xmi:type="notation:DecorationNode" xmi:id="_uqonk5j-EeqsmLiGoCAZPQ" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_WK7HYJ9UEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_uqonlJj-EeqsmLiGoCAZPQ" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_uqonkZj-EeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_uqbzQJj-EeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_uqonkpj-EeqsmLiGoCAZPQ" points="[220, 560, -643984, -643984]$[100, 481, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_urCQMJj-EeqsmLiGoCAZPQ" id="(0.19002375296912113,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_urCQMZj-EeqsmLiGoCAZPQ" id="(0.5988023952095808,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_xc-qsJ9REeqHH8LtZOjghw" type="Comment_AnnotatedElementEdge" source="_obk7oJ9REeqHH8LtZOjghw" target="_z5voUJTuEeqsmLiGoCAZPQ">
+      <styles xmi:type="notation:FontStyle" xmi:id="_xc-qsZ9REeqHH8LtZOjghw"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xc-qsp9REeqHH8LtZOjghw" points="[1080, 340, -643984, -643984]$[1061, 360, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xhG8wJ9REeqHH8LtZOjghw" id="(0.0,0.6666666666666666)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xhG8wZ9REeqHH8LtZOjghw" id="(1.0,0.6)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_Jy6eUJ9TEeqHH8LtZOjghw" type="Association_Edge" source="_QVzyEI7VEeqdQ5EKLtW6Vg" target="_RLs4QI7VEeqdQ5EKLtW6Vg">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_OiJYIJ9UEeqHH8LtZOjghw" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OiJYIZ9UEeqHH8LtZOjghw" key="routing" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Jy6eU59TEeqHH8LtZOjghw" type="Association_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Q2kuUJ9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Jy6eVJ9TEeqHH8LtZOjghw" y="60"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Jy7FYJ9TEeqHH8LtZOjghw" type="Association_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Q4YFIJ9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Jy7FYZ9TEeqHH8LtZOjghw" y="20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Jy7FYp9TEeqHH8LtZOjghw" visible="false" type="Association_TargetRoleLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Q58ycJ9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Jy7FY59TEeqHH8LtZOjghw" x="-5" y="20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Jy7FZJ9TEeqHH8LtZOjghw" visible="false" type="Association_SourceRoleLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Q7Zj8J9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Jy7FZZ9TEeqHH8LtZOjghw" x="5" y="-20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Jy7FZp9TEeqHH8LtZOjghw" type="Association_SourceMultiplicityLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Q9X54J9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Jy7FZ59TEeqHH8LtZOjghw" x="5" y="20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Jy7FaJ9TEeqHH8LtZOjghw" type="Association_TargetMultiplicityLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Q-etIJ9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Jy7FaZ9TEeqHH8LtZOjghw" x="-5" y="-20"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_Jy6eUZ9TEeqHH8LtZOjghw"/>
+      <element xmi:type="uml:Association" href="aas.profile.uml#_JwQy8J9TEeqHH8LtZOjghw"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Jy6eUp9TEeqHH8LtZOjghw" points="[640, 420, -643984, -643984]$[645, 420, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J29Q0J9TEeqHH8LtZOjghw" id="(0.0,0.36199095022624433)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J29Q0Z9TEeqHH8LtZOjghw" id="(1.0,0.29850746268656714)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_WaPyQJ9TEeqHH8LtZOjghw" type="Association_Edge" source="_QVzyEI7VEeqdQ5EKLtW6Vg" target="_S6tXwI7VEeqdQ5EKLtW6Vg">
+      <children xmi:type="notation:DecorationNode" xmi:id="_WaQZUJ9TEeqHH8LtZOjghw" type="Association_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_p15SoJ9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_WaQZUZ9TEeqHH8LtZOjghw" y="60"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_WaQZUp9TEeqHH8LtZOjghw" type="Association_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_p3ueoJ9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_WaQZU59TEeqHH8LtZOjghw" y="20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_WaQZVJ9TEeqHH8LtZOjghw" visible="false" type="Association_TargetRoleLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_p5MeQJ9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_WaQZVZ9TEeqHH8LtZOjghw" x="-60" y="20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_WaQZVp9TEeqHH8LtZOjghw" visible="false" type="Association_SourceRoleLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_p635QJ9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_WaQZV59TEeqHH8LtZOjghw" x="60" y="-20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_WaQZWJ9TEeqHH8LtZOjghw" type="Association_SourceMultiplicityLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_p8YVIJ9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_WaQZWZ9TEeqHH8LtZOjghw" x="27" y="14"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_WaRAYJ9TEeqHH8LtZOjghw" type="Association_TargetMultiplicityLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_p9a28J9TEeqHH8LtZOjghw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_WaRAYZ9TEeqHH8LtZOjghw" x="-60" y="-20"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_WaPyQZ9TEeqHH8LtZOjghw"/>
+      <element xmi:type="uml:Association" href="aas.profile.uml#_WYbNUJ9TEeqHH8LtZOjghw"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_WaPyQp9TEeqHH8LtZOjghw" points="[760, 561, -643984, -643984]$[760, 680, -643984, -643984]$[421, 680, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_WeEiUJ9TEeqHH8LtZOjghw" id="(0.26578073089701,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_WeFJYJ9TEeqHH8LtZOjghw" id="(1.0,0.27149321266968324)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="__HDtsJ9UEeqHH8LtZOjghw" type="Comment_AnnotatedElementEdge" source="_6vaYAJ9UEeqHH8LtZOjghw" target="_QVzyEI7VEeqdQ5EKLtW6Vg">
+      <styles xmi:type="notation:FontStyle" xmi:id="__HDtsZ9UEeqHH8LtZOjghw"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__HDtsp9UEeqHH8LtZOjghw" points="[920, 600, -643984, -643984]$[920, 561, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__L5xcJ9UEeqHH8LtZOjghw" id="(0.3252032520325203,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__L6YgJ9UEeqHH8LtZOjghw" id="(0.7973421926910299,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_DGDS0J9VEeqHH8LtZOjghw" type="Comment_AnnotatedElementEdge" source="_BI_wQJ9VEeqHH8LtZOjghw" target="_S6tXwI7VEeqdQ5EKLtW6Vg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_DGDS0Z9VEeqHH8LtZOjghw"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DGDS0p9VEeqHH8LtZOjghw" points="[480, 780, -643984, -643984]$[421, 780, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DMJTwJ9VEeqHH8LtZOjghw" id="(0.0,0.3333333333333333)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DMJTwZ9VEeqHH8LtZOjghw" id="(1.0,0.7239819004524887)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_4ls1UJ9bEeqHH8LtZOjghw" type="Comment_AnnotatedElementEdge" source="_13lpQJ9bEeqHH8LtZOjghw" target="_RLs4QI7VEeqdQ5EKLtW6Vg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_4ls1UZ9bEeqHH8LtZOjghw"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_4ls1Up9bEeqHH8LtZOjghw" points="[600, 580, -643984, -643984]$[600, 561, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_40Sq8J9bEeqHH8LtZOjghw" id="(0.47619047619047616,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_40Sq8Z9bEeqHH8LtZOjghw" id="(0.8421052631578947,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_CAU8sJ9cEeqHH8LtZOjghw" type="Comment_AnnotatedElementEdge" source="_SEkrIJ9WEeqHH8LtZOjghw" target="_QVzyEI7VEeqdQ5EKLtW6Vg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_CAU8sZ9cEeqHH8LtZOjghw"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CAU8sp9cEeqHH8LtZOjghw" points="[900, 680, -643984, -643984]$[840, 561, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CREHYJ9cEeqHH8LtZOjghw" id="(0.11049723756906077,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CREucJ9cEeqHH8LtZOjghw" id="(0.53156146179402,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_DbYlcJ9cEeqHH8LtZOjghw" type="Comment_AnnotatedElementEdge" source="_SEkrIJ9WEeqHH8LtZOjghw" target="_S6tXwI7VEeqdQ5EKLtW6Vg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_DbYlcZ9cEeqHH8LtZOjghw"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_DbYlcp9cEeqHH8LtZOjghw" points="[880, 740, -643984, -643984]$[421, 720, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DtebAJ9cEeqHH8LtZOjghw" id="(0.0,0.2702702702702703)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_DtebAZ9cEeqHH8LtZOjghw" id="(1.0,0.45248868778280543)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_KlwhcJ9cEeqHH8LtZOjghw" type="Comment_AnnotatedElementEdge" source="_Gj9f8J9cEeqHH8LtZOjghw" target="_QVzyEI7VEeqdQ5EKLtW6Vg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_KlwhcZ9cEeqHH8LtZOjghw"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Klwhcp9cEeqHH8LtZOjghw" points="[1080, 600, -643984, -643984]$[940, 561, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_K5t_QJ9cEeqHH8LtZOjghw" id="(0.12232415902140673,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_K5t_QZ9cEeqHH8LtZOjghw" id="(0.8637873754152824,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_ekMl0J9cEeqHH8LtZOjghw" type="Comment_AnnotatedElementEdge" source="_Zv6XcJ9cEeqHH8LtZOjghw" target="_MYBwsJXiEeqsmLiGoCAZPQ">
+      <styles xmi:type="notation:FontStyle" xmi:id="_ekMl0Z9cEeqHH8LtZOjghw"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ekMl0p9cEeqHH8LtZOjghw" points="[-60, 520, -643984, -643984]$[0, 481, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e6JAoJ9cEeqHH8LtZOjghw" id="(0.6741573033707865,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_e6JAoZ9cEeqHH8LtZOjghw" id="(0.11976047904191617,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_buSMEKr2EeqCiIVjjvsakg" type="Association_Edge" source="_S6tXwI7VEeqdQ5EKLtW6Vg" target="_Yf49cKr2EeqCiIVjjvsakg">
+      <children xmi:type="notation:DecorationNode" xmi:id="_buSzIKr2EeqCiIVjjvsakg" type="Association_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_XxkFkKr7EeqCiIVjjvsakg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_buSzIar2EeqCiIVjjvsakg" x="-1" y="58"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_buSzIqr2EeqCiIVjjvsakg" type="Association_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_X50psKr7EeqCiIVjjvsakg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_buSzI6r2EeqCiIVjjvsakg" x="-1" y="18"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_buSzJKr2EeqCiIVjjvsakg" type="Association_TargetRoleLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_YAxmQKr7EeqCiIVjjvsakg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_buSzJar2EeqCiIVjjvsakg" x="-9" y="18"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_buSzJqr2EeqCiIVjjvsakg" type="Association_SourceRoleLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_YHiVkKr7EeqCiIVjjvsakg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_buSzJ6r2EeqCiIVjjvsakg" x="9" y="-18"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_buSzKKr2EeqCiIVjjvsakg" type="Association_SourceMultiplicityLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_YPQHIKr7EeqCiIVjjvsakg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_buSzKar2EeqCiIVjjvsakg" x="9" y="18"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_buSzKqr2EeqCiIVjjvsakg" type="Association_TargetMultiplicityLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_YWkQEKr7EeqCiIVjjvsakg" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_buSzK6r2EeqCiIVjjvsakg" x="-9" y="-18"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_buSMEar2EeqCiIVjjvsakg"/>
+      <element xmi:type="uml:Association" href="aas.profile.uml#_bo3gkKr2EeqCiIVjjvsakg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_buSMEqr2EeqCiIVjjvsakg" points="[220, 841, -643984, -643984]$[240, 900, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_b6QykKr2EeqCiIVjjvsakg" id="(0.5225653206650831,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_b6Qykar2EeqCiIVjjvsakg" id="(0.4,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_t6TeUKr7EeqCiIVjjvsakg" type="Generalization_Edge" source="_o9u2oKr7EeqCiIVjjvsakg" target="_Yf49cKr2EeqCiIVjjvsakg">
+      <children xmi:type="notation:DecorationNode" xmi:id="_t6UFYKr7EeqCiIVjjvsakg" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_HTwS4P5LEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_t6UFYar7EeqCiIVjjvsakg" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_t6TeUar7EeqCiIVjjvsakg"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_tz0b0Kr7EeqCiIVjjvsakg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t6TeUqr7EeqCiIVjjvsakg" points="[240, 1060, -643984, -643984]$[240, 1020, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_uHsaEKr7EeqCiIVjjvsakg" id="(0.38961038961038963,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_uHsaEar7EeqCiIVjjvsakg" id="(0.6,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_tSASwKr8EeqCiIVjjvsakg" type="Generalization_Edge" source="_Yf49cKr2EeqCiIVjjvsakg" target="_gJVMUKr8EeqCiIVjjvsakg">
+      <children xmi:type="notation:DecorationNode" xmi:id="_tSASw6r8EeqCiIVjjvsakg" type="Generalization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_tSASxKr8EeqCiIVjjvsakg" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_tSASwar8EeqCiIVjjvsakg"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_tLQxkKr8EeqCiIVjjvsakg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_tSASwqr8EeqCiIVjjvsakg" points="[260, 940, -643984, -643984]$[300, 900, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_td718Kr8EeqCiIVjjvsakg" id="(0.8,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_td718ar8EeqCiIVjjvsakg" id="(0.2,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_1xN6wKr8EeqCiIVjjvsakg" type="Generalization_Edge" source="_Yf49cKr2EeqCiIVjjvsakg" target="_x8lLgKr8EeqCiIVjjvsakg">
+      <children xmi:type="notation:DecorationNode" xmi:id="_1xN6w6r8EeqCiIVjjvsakg" type="Generalization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_1xN6xKr8EeqCiIVjjvsakg" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_1xN6war8EeqCiIVjjvsakg"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_1qkgMKr8EeqCiIVjjvsakg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1xN6wqr8EeqCiIVjjvsakg" points="[260, 940, -643984, -643984]$[340, 940, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1-e6sKr8EeqCiIVjjvsakg" id="(1.0,0.25)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1-fhwKr8EeqCiIVjjvsakg" id="(0.0,0.47619047619047616)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_AhRYcKsHEeqnq7OKRN2fbg" type="Extension_Edge" source="_uF3CgKsFEeqnq7OKRN2fbg" target="_qhUkwKsFEeqnq7OKRN2fbg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_AhRYcasHEeqnq7OKRN2fbg"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_AZ4XAKsHEeqnq7OKRN2fbg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AhRYcqsHEeqnq7OKRN2fbg" points="[800, 1000, -643984, -643984]$[800, 950, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Av_w8KsHEeqnq7OKRN2fbg" id="(0.5882352941176471,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_AwAYAKsHEeqnq7OKRN2fbg" id="(0.4,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_Ji5xAKsHEeqnq7OKRN2fbg" type="Generalization_Edge" source="_uF3CgKsFEeqnq7OKRN2fbg" target="_Yf49cKr2EeqCiIVjjvsakg">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Ji5xA6sHEeqnq7OKRN2fbg" type="Generalization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Ji5xBKsHEeqnq7OKRN2fbg" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_Ji5xAasHEeqnq7OKRN2fbg"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_JbXloKsHEeqnq7OKRN2fbg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ji5xAqsHEeqnq7OKRN2fbg" points="[420, 1060, -643984, -643984]$[240, 1020, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JxYR4KsHEeqnq7OKRN2fbg" id="(0.19607843137254902,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JxYR4asHEeqnq7OKRN2fbg" id="(0.8,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_9XA88P5KEeqmZsqm6Otq5g" type="Generalization_Edge" source="_VKjgEP5KEeqmZsqm6Otq5g" target="_Yf49cKr2EeqCiIVjjvsakg">
+      <children xmi:type="notation:DecorationNode" xmi:id="_9XA88_5KEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_EM8S8P5LEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_9XA89P5KEeqmZsqm6Otq5g" y="59"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_9XA88f5KEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_9PjqEP5KEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_9XA88v5KEeqmZsqm6Otq5g" points="[80, 1060, -643984, -643984]$[180, 1020, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9mPEsP5KEeqmZsqm6Otq5g" id="(0.6134969325153374,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_9mPEsf5KEeqmZsqm6Otq5g" id="(0.0,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_AaYnUP5LEeqmZsqm6Otq5g" type="Generalization_Edge" source="_-1aNkP5KEeqmZsqm6Otq5g" target="_Yf49cKr2EeqCiIVjjvsakg">
+      <children xmi:type="notation:DecorationNode" xmi:id="_AaZOYP5LEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_DxjXcP5LEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_AaZOYf5LEeqmZsqm6Otq5g" y="59"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_AaYnUf5LEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_ASw8YP5LEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_AaYnUv5LEeqmZsqm6Otq5g" points="[-80, 1040, -643984, -643984]$[180, 1000, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ApUbMP5LEeqmZsqm6Otq5g" id="(0.8,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ApUbMf5LEeqmZsqm6Otq5g" id="(0.2,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_ZXjkECJ9EeuWq4zY-5mLEA" type="Extension_Edge" source="_VKjgEP5KEeqmZsqm6Otq5g" target="_XsV_cCJ9EeuWq4zY-5mLEA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_ZXjkESJ9EeuWq4zY-5mLEA"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_ZOOo8CJ9EeuWq4zY-5mLEA"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZXjkEiJ9EeuWq4zY-5mLEA" points="[-80, 1080, -643984, -643984]$[-80, 1010, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZpEx4CJ9EeuWq4zY-5mLEA" id="(0.24539877300613497,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZpFY8CJ9EeuWq4zY-5mLEA" id="(0.4,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_0YLb9DDaEeudTfGrNe5Q3w" type="StereotypeCommentLink" source="_3MuZ4JQbEeqsmLiGoCAZPQ" target="_0YLb8DDaEeudTfGrNe5Q3w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_0YLb9TDaEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0YLb-TDaEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0YLb9jDaEeudTfGrNe5Q3w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0YLb9zDaEeudTfGrNe5Q3w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0YLb-DDaEeudTfGrNe5Q3w"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_0YflATDaEeudTfGrNe5Q3w" type="StereotypeCommentLink" source="_dawbMJj-EeqsmLiGoCAZPQ" target="_0Ye98zDaEeudTfGrNe5Q3w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_0YflAjDaEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0YflBjDaEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0YflAzDaEeudTfGrNe5Q3w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0YflBDDaEeudTfGrNe5Q3w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0YflBTDaEeudTfGrNe5Q3w"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_0YtAZzDaEeudTfGrNe5Q3w" type="StereotypeCommentLink" source="_qhUkwKsFEeqnq7OKRN2fbg" target="_0YtAYzDaEeudTfGrNe5Q3w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_0YtAaDDaEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0YtncjDaEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Dependency"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0YtAaTDaEeudTfGrNe5Q3w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0YtncDDaEeudTfGrNe5Q3w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0YtncTDaEeudTfGrNe5Q3w"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_0Y4mkDDaEeudTfGrNe5Q3w" type="StereotypeCommentLink" source="_XsV_cCJ9EeuWq4zY-5mLEA" target="_0Y3_gzDaEeudTfGrNe5Q3w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_0Y4mkTDaEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_0Y4mlTDaEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#DataType"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0Y4mkjDaEeudTfGrNe5Q3w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0Y4mkzDaEeudTfGrNe5Q3w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0Y4mlDDaEeudTfGrNe5Q3w"/>
+    </edges>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_4Iu5sJj-EeqsmLiGoCAZPQ" type="PapyrusUMLProfileDiagram" name="Security" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_711dkJj-EeqsmLiGoCAZPQ" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_711dkpj-EeqsmLiGoCAZPQ" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_711dk5j-EeqsmLiGoCAZPQ" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_F6YrsJj_EeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_F6UaQJj_EeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_F6YrsZj_EeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_IKshcJj_EeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_IKpeIJj_EeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_IKshcZj_EeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_LYkLoJj_EeqsmLiGoCAZPQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_LYfTIJj_EeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_LYkLoZj_EeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_711dlJj-EeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_711dlZj-EeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_711dlpj-EeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_711dl5j-EeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_711dmJj-EeqsmLiGoCAZPQ" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_711dmZj-EeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_711dmpj-EeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_711dm5j-EeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_711dnJj-EeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_710PcJj-EeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_711dkZj-EeqsmLiGoCAZPQ" x="80" y="220"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_-O18UJj-EeqsmLiGoCAZPQ" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_-O18VJj-EeqsmLiGoCAZPQ" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-O18VZj-EeqsmLiGoCAZPQ" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-O18Vpj-EeqsmLiGoCAZPQ" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-O18V5j-EeqsmLiGoCAZPQ" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-O18WJj-EeqsmLiGoCAZPQ" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_-O18WZj-EeqsmLiGoCAZPQ" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_-O18Upj-EeqsmLiGoCAZPQ" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-O18U5j-EeqsmLiGoCAZPQ" x="160" y="60"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_BD8rwJkAEeqsmLiGoCAZPQ" type="DataType_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_BD9S0JkAEeqsmLiGoCAZPQ" type="DataType_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_BD9S0ZkAEeqsmLiGoCAZPQ" type="DataType_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_Pfvm8JkAEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_PfqucJkAEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Pfvm8ZkAEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_TV2V0JkAEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_TVwPMJkAEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_TV2V0ZkAEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_YUUa8JkAEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_YUNtQJkAEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_YUUa8ZkAEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_cLT6oJkAEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_cLPCIJkAEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_cLT6oZkAEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_g22csJkAEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_g2wWEJkAEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_g22csZkAEeqsmLiGoCAZPQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_uEqh0JkAEeqsmLiGoCAZPQ" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_uEj0IJkAEeqsmLiGoCAZPQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_uEqh0ZkAEeqsmLiGoCAZPQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_BD9S0pkAEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_BD9S05kAEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_BD9S1JkAEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BD9S1ZkAEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_BD9S1pkAEeqsmLiGoCAZPQ" type="DataType_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_BD9S15kAEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_BD9S2JkAEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_BD9S2ZkAEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BD9S2pkAEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:DataType" href="aas.profile.uml#_BD7doJkAEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BD8rwZkAEeqsmLiGoCAZPQ" x="440" y="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="__nuI4JkAEeqsmLiGoCAZPQ" type="DataType_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="__nuI4pkAEeqsmLiGoCAZPQ" type="DataType_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__nuI45kAEeqsmLiGoCAZPQ" type="DataType_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="__nuI5JkAEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__nuI5ZkAEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__nuI5pkAEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__nuI55kAEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__nuI6JkAEeqsmLiGoCAZPQ" type="DataType_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="__nuI6ZkAEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__nuI6pkAEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__nuI65kAEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__nuI7JkAEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:DataType" href="aas.profile.uml#__nsTsJkAEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="__nuI4ZkAEeqsmLiGoCAZPQ" x="840" y="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_OlRtUJkBEeqsmLiGoCAZPQ" type="DataType_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_OlRtUpkBEeqsmLiGoCAZPQ" type="DataType_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_OlRtU5kBEeqsmLiGoCAZPQ" type="DataType_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_OlRtVJkBEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_OlRtVZkBEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_OlRtVpkBEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlRtV5kBEeqsmLiGoCAZPQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_OlRtWJkBEeqsmLiGoCAZPQ" type="DataType_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_OlRtWZkBEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_OlRtWpkBEeqsmLiGoCAZPQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_OlRtW5kBEeqsmLiGoCAZPQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlRtXJkBEeqsmLiGoCAZPQ"/>
+      </children>
+      <element xmi:type="uml:DataType" href="aas.profile.uml#_OlQfMJkBEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OlRtUZkBEeqsmLiGoCAZPQ" x="480" y="60"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_ccp7UymlEeurJuF7PIGu4w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_ccp7VCmlEeurJuF7PIGu4w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ccqiYCmlEeurJuF7PIGu4w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ccp7VSmlEeurJuF7PIGu4w" x="360" y="60"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_4Iu5sZj-EeqsmLiGoCAZPQ" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_4Iu5spj-EeqsmLiGoCAZPQ"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_4Iu5s5j-EeqsmLiGoCAZPQ" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+      <owner xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    </styles>
+    <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_nS7IQJkAEeqsmLiGoCAZPQ" name="css_stylesheets" eObjectListValue="_Cl9sgJTsEeqsmLiGoCAZPQ"/>
+    <element xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    <edges xmi:type="notation:Connector" xmi:id="__o_mIJj-EeqsmLiGoCAZPQ" type="Extension_Edge" source="_711dkJj-EeqsmLiGoCAZPQ" target="_-O18UJj-EeqsmLiGoCAZPQ">
+      <styles xmi:type="notation:FontStyle" xmi:id="__o_mIZj-EeqsmLiGoCAZPQ"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#__o44cJj-EeqsmLiGoCAZPQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__o_mIpj-EeqsmLiGoCAZPQ" points="[380, 180, -643984, -643984]$[380, 110, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__pFFsJj-EeqsmLiGoCAZPQ" id="(0.4225352112676056,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__pFFsZj-EeqsmLiGoCAZPQ" id="(0.4,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_ccqiYSmlEeurJuF7PIGu4w" type="StereotypeCommentLink" source="_-O18UJj-EeqsmLiGoCAZPQ" target="_ccp7UymlEeurJuF7PIGu4w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_ccqiYimlEeurJuF7PIGu4w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_ccrJcimlEeurJuF7PIGu4w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ccqiYymlEeurJuF7PIGu4w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ccrJcCmlEeurJuF7PIGu4w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ccrJcSmlEeurJuF7PIGu4w"/>
+    </edges>
+  </notation:Diagram>
+  <css:ModelStyleSheets xmi:id="_xqwDYKr2EeqCiIVjjvsakg">
+    <stylesheets xmi:type="css:StyleSheetReference" xmi:id="_Cl9sgJTsEeqsmLiGoCAZPQ" path="/com.cea.papyrus.aas.profile/resources/style.css"/>
+  </css:ModelStyleSheets>
+  <notation:Diagram xmi:id="_Q5ps0P2gEeqo7uz4QZ84uw" type="PapyrusUMLProfileDiagram" name="SubmodelElement" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_vXz7kP2kEeqo7uz4QZ84uw" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf2nxv5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf2nx_5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_vXz7kv2kEeqo7uz4QZ84uw" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf2nyP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf3O0P5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_vXz7k_2kEeqo7uz4QZ84uw" visible="false" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf3O0f5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf3O0v5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_vXz7lP2kEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_vXz7lf2kEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_vXz7lv2kEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vXz7l_2kEeqo7uz4QZ84uw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_vXz7mP2kEeqo7uz4QZ84uw" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_vXz7mf2kEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_vXz7mv2kEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_vXz7m_2kEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vXz7nP2kEeqo7uz4QZ84uw"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_Yf1TEKr2EeqCiIVjjvsakg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vXz7kf2kEeqo7uz4QZ84uw" x="140" y="160" width="701" height="61"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_qCJpAP2lEeqo7uz4QZ84uw" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XW_QgP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XW_Qgf5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_qCLeMP2lEeqo7uz4QZ84uw" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XW_Qgv5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XW_Qg_5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_qCLeMf2lEeqo7uz4QZ84uw" visible="false" type="Stereotype_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_qCLeMv2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_qCLeM_2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_qCLeNP2lEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qCLeNf2lEeqo7uz4QZ84uw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_qCLeNv2lEeqo7uz4QZ84uw" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_qCLeN_2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_qCLeOP2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_qCLeOf2lEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qCLeOv2lEeqo7uz4QZ84uw"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_oOXGoJTrEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qCJpAf2lEeqo7uz4QZ84uw" x="280" y="40" height="60"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_qy-pAP2lEeqo7uz4QZ84uw" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XW-pcP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XW-pcf5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_qy_QEP2lEeqo7uz4QZ84uw" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_XW-pcv5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_XW-pc_5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_qy_QEf2lEeqo7uz4QZ84uw" visible="false" type="Stereotype_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_qy_QEv2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_qy_QE_2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_qy_QFP2lEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qy_QFf2lEeqo7uz4QZ84uw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_qy_QFv2lEeqo7uz4QZ84uw" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_qy_QF_2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_qy_QGP2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_qy_QGf2lEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qy_QGv2lEeqo7uz4QZ84uw"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_MX_UcJXiEeqsmLiGoCAZPQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qy-pAf2lEeqo7uz4QZ84uw" x="400" y="40" height="60"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="__Lc-AP2lEeqo7uz4QZ84uw" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf1ZoP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf1Zof5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="__Lc-Av2lEeqo7uz4QZ84uw" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf1Zov5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf1Zo_5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__LdlEP2lEeqo7uz4QZ84uw" visible="false" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf1ZpP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf1Zpf5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:TitleStyle" xmi:id="__LdlEf2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__LdlEv2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__LdlE_2lEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__LdlFP2lEeqo7uz4QZ84uw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__LdlFf2lEeqo7uz4QZ84uw" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="__LdlFv2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__LdlF_2lEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__LdlGP2lEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__LdlGf2lEeqo7uz4QZ84uw"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#__LZ6sP2lEeqo7uz4QZ84uw"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="__Lc-Af2lEeqo7uz4QZ84uw" x="400" y="360" height="60"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_GOgxEP2mEeqo7uz4QZ84uw" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf0ykP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf0ykf5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_GOgxEv2mEeqo7uz4QZ84uw" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf0ykv5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf0yk_5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_GOgxE_2mEeqo7uz4QZ84uw" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf0ylP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf0ylf5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <children xmi:type="notation:Shape" xmi:id="_SJfVUP2mEeqo7uz4QZ84uw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_-TEtcKsEEeqnq7OKRN2fbg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_SJfVUf2mEeqo7uz4QZ84uw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_SJfVUv2mEeqo7uz4QZ84uw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_G9kYYKsFEeqnq7OKRN2fbg"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_SJfVU_2mEeqo7uz4QZ84uw"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_GOgxFP2mEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_GOgxFf2mEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_GOgxFv2mEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GOgxF_2mEeqo7uz4QZ84uw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_GOhYIP2mEeqo7uz4QZ84uw" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_GOhYIf2mEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_GOhYIv2mEeqo7uz4QZ84uw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_GOhYI_2mEeqo7uz4QZ84uw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GOhYJP2mEeqo7uz4QZ84uw"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_o9tBcKr7EeqCiIVjjvsakg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_GOgxEf2mEeqo7uz4QZ84uw" x="528" y="368"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_tHwDkP5LEeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf2nwP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf2nwf5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_tHwqoP5LEeqmZsqm6Otq5g" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf2nwv5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf2nw_5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_tHwqof5LEeqmZsqm6Otq5g" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf2nxP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf2nxf5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <children xmi:type="notation:Shape" xmi:id="_mpjboP5MEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Z1LcIP5KEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_mpjbof5MEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_tHwqov5LEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_tHwqo_5LEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_tHwqpP5LEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tHwqpf5LEeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_tHwqpv5LEeqmZsqm6Otq5g" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_tHwqp_5LEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_tHwqqP5LEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_tHwqqf5LEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tHwqqv5LEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_VKU2kP5KEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_tHwDkf5LEeqmZsqm6Otq5g" x="82" y="360" height="81"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_t3O_wP5LEeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf2AsP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf2Asf5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_t3Pm0P5LEeqmZsqm6Otq5g" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf2Asv5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf2As_5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_t3Pm0f5LEeqmZsqm6Otq5g" visible="false" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cf2AtP5MEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cf2Atf5MEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_t3Pm0v5LEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_t3Pm0_5LEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_t3Pm1P5LEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t3Pm1f5LEeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_t3Pm1v5LEeqmZsqm6Otq5g" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_t3Pm1_5LEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_t3Pm2P5LEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_t3Pm2f5LEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t3Pm2v5LEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_-1YYYP5KEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t3O_wf5LEeqmZsqm6Otq5g" x="280" y="360" height="60"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Yy9p0P5NEeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_aOw5cP5NEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_aOw5cf5NEeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Yy9p0v5NEeqmZsqm6Otq5g" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_aOw5cv5NEeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_aOw5c_5NEeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Yy9p0_5NEeqmZsqm6Otq5g" visible="false" type="Stereotype_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Yy9p1P5NEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Yy9p1f5NEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Yy9p1v5NEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Yy9p1_5NEeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Yy-Q4P5NEeqmZsqm6Otq5g" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Yy-Q4f5NEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Yy-Q4v5NEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Yy-Q4_5NEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Yy-Q5P5NEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_UZQJgP5LEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Yy9p0f5NEeqmZsqm6Otq5g" x="280" y="540" height="60"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_euudoP5NEeqmZsqm6Otq5g" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_euvEsv5NEeqmZsqm6Otq5g" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_euvrwP5NEeqmZsqm6Otq5g" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_euvrwf5NEeqmZsqm6Otq5g" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_euvrwv5NEeqmZsqm6Otq5g" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_euvrw_5NEeqmZsqm6Otq5g" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_euvrxP5NEeqmZsqm6Otq5g" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_euvEsP5NEeqmZsqm6Otq5g" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_euvEsf5NEeqmZsqm6Otq5g" x="520" y="240"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_hfackP5NEeqmZsqm6Otq5g" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_hfbDoP5NEeqmZsqm6Otq5g" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_hfbDof5NEeqmZsqm6Otq5g" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_hfbDov5NEeqmZsqm6Otq5g" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_hfbDo_5NEeqmZsqm6Otq5g" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_hfbDpP5NEeqmZsqm6Otq5g" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_hfbDpf5NEeqmZsqm6Otq5g" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_hfackv5NEeqmZsqm6Otq5g" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hfack_5NEeqmZsqm6Otq5g" x="273" y="303" width="81" height="30"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_wS97AP5OEeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_prg-gP5REeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_priMoP5REeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_wS97Av5OEeqmZsqm6Otq5g" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_priMof5REeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_priMov5REeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_wS97A_5OEeqmZsqm6Otq5g" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_priMo_5REeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_priMpP5REeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <children xmi:type="notation:Shape" xmi:id="_252vcP5OEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_25vasP5OEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_252vcf5OEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_HdAYsP5PEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Hc4c4P5PEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_HdAYsf5PEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_wS97BP5OEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_wS97Bf5OEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wS97Bv5OEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wS97B_5OEeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_wS97CP5OEeqmZsqm6Otq5g" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_wS97Cf5OEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_wS97Cv5OEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wS97C_5OEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wS97DP5OEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_wS63sP5OEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wS97Af5OEeqmZsqm6Otq5g" x="400" y="540" height="81"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_CEWnEP5REeqmZsqm6Otq5g" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_CEXOIP5REeqmZsqm6Otq5g" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_CEXOIf5REeqmZsqm6Otq5g" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_DSwT4P5REeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_DSnxAP5REeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_DSwT4f5REeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_GNg00P5REeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_GNY5AP5REeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_GNg00f5REeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_G8v5YP5REeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_G8nWgP5REeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_G8v5Yf5REeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_RF7v4P5REeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_RFyl8P5REeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_RF7v4f5REeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_c4qXEP5REeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_c4hNIP5REeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_c4qXEf5REeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_j1F9sP5REeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_j08zwP5REeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_j1F9sf5REeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_k669UP5REeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_k6xzYP5REeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_k669Uf5REeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_CEXOIv5REeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_CEXOI_5REeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_CEXOJP5REeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CEXOJf5REeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_CEUK0P5REeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CEWnEf5REeqmZsqm6Otq5g" y="460"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_yHG_4P5TEeqmZsqm6Otq5g" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_yHG_4v5TEeqmZsqm6Otq5g" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="aas.profile.uml#_yG6LkP5TEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yHG_4f5TEeqmZsqm6Otq5g" x="600" y="520" width="81"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_sPNkIP5uEeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_sPNkIv5uEeqmZsqm6Otq5g" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_sPNkI_5uEeqmZsqm6Otq5g" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_zIsyMP5zEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_zHRO0P5zEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_zIsyMf5zEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_sPNkJP5uEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_sPNkJf5uEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_sPNkJv5uEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sPNkJ_5uEeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_sPOLMP5uEeqmZsqm6Otq5g" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_sPOLMf5uEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_sPOLMv5uEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_sPOLM_5uEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sPOLNP5uEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_sPLH4P5uEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sPNkIf5uEeqmZsqm6Otq5g" x="120" y="540"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_T9uugP50EeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cGUmQP50EeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cGUmQf50EeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_T9uugv50EeqmZsqm6Otq5g" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cGUmQv50EeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cGUmQ_50EeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_T9uug_50EeqmZsqm6Otq5g" visible="false" type="Stereotype_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_T9uuhP50EeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_T9uuhf50EeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_T9uuhv50EeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T9uuh_50EeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_T9uuiP50EeqmZsqm6Otq5g" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_T9uuif50EeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_T9uuiv50EeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_T9uui_50EeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T9uujP50EeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_T9sSQP50EeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_T9uugf50EeqmZsqm6Otq5g" x="740" y="300" height="40"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_jHFhAP55EeqmZsqm6Otq5g" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jHHWMv55EeqmZsqm6Otq5g" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jHHWM_55EeqmZsqm6Otq5g" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jHHWNP55EeqmZsqm6Otq5g" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jHHWNf55EeqmZsqm6Otq5g" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jHHWNv55EeqmZsqm6Otq5g" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_jHHWN_55EeqmZsqm6Otq5g" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_jHHWMP55EeqmZsqm6Otq5g" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jHHWMf55EeqmZsqm6Otq5g" x="820" y="240" height="30"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_pgLKAP55EeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GRHl0P56EeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GRHl0f56EeqmZsqm6Otq5g" key="visible" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_pgLKAv55EeqmZsqm6Otq5g" type="Stereotype_NameLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GRHl0v56EeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GRHl0_56EeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_pgLKA_55EeqmZsqm6Otq5g" type="Stereotype_AttributeCompartment">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_GRHl1P56EeqmZsqm6Otq5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_GRHl1f56EeqmZsqm6Otq5g" key="visible" value="true"/>
+        </eAnnotations>
+        <children xmi:type="notation:Shape" xmi:id="_rf17sP55EeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_relXcP55EeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_rf17sf55EeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_pgLKBP55EeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_pgLKBf55EeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_pgLKBv55EeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pgLKB_55EeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_pgLxEP55EeqmZsqm6Otq5g" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_pgLxEf55EeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_pgLxEv55EeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_pgLxE_55EeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pgLxFP55EeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_pgIGsP55EeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pgLKAf55EeqmZsqm6Otq5g" x="740" y="420" height="61"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_OYFF4P56EeqmZsqm6Otq5g" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_OYFs8v56EeqmZsqm6Otq5g" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OYFs8_56EeqmZsqm6Otq5g" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OYFs9P56EeqmZsqm6Otq5g" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OYFs9f56EeqmZsqm6Otq5g" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OYFs9v56EeqmZsqm6Otq5g" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_OYFs9_56EeqmZsqm6Otq5g" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_OYFs8P56EeqmZsqm6Otq5g" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Element"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_OYFs8f56EeqmZsqm6Otq5g" x="820" y="100"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_kkvEUP81Eeq1EMHDrQJzfQ" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_kkwScP81Eeq1EMHDrQJzfQ" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_kkwScf81Eeq1EMHDrQJzfQ" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_lhwtQP81Eeq1EMHDrQJzfQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_lgZbUP81Eeq1EMHDrQJzfQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_lhwtQf81Eeq1EMHDrQJzfQ"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_sLQJwP81Eeq1EMHDrQJzfQ" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_sKAMkP81Eeq1EMHDrQJzfQ"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_sLQJwf81Eeq1EMHDrQJzfQ"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_kkwScv81Eeq1EMHDrQJzfQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_kkwSc_81Eeq1EMHDrQJzfQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_kkwSdP81Eeq1EMHDrQJzfQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kkwSdf81Eeq1EMHDrQJzfQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_kkw5gP81Eeq1EMHDrQJzfQ" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_kkw5gf81Eeq1EMHDrQJzfQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_kkw5gv81Eeq1EMHDrQJzfQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_kkw5g_81Eeq1EMHDrQJzfQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kkw5hP81Eeq1EMHDrQJzfQ"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_kkeloP81Eeq1EMHDrQJzfQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kkvEUf81Eeq1EMHDrQJzfQ" x="320" y="680"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_ICcywP85Eeq1EMHDrQJzfQ" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_ICcywv85Eeq1EMHDrQJzfQ" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ICdZ0P85Eeq1EMHDrQJzfQ" type="Stereotype_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ICdZ0f85Eeq1EMHDrQJzfQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ICdZ0v85Eeq1EMHDrQJzfQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ICdZ0_85Eeq1EMHDrQJzfQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ICdZ1P85Eeq1EMHDrQJzfQ"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ICdZ1f85Eeq1EMHDrQJzfQ" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ICdZ1v85Eeq1EMHDrQJzfQ"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ICdZ1_85Eeq1EMHDrQJzfQ"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ICdZ2P85Eeq1EMHDrQJzfQ"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ICdZ2f85Eeq1EMHDrQJzfQ"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_ICZIYP85Eeq1EMHDrQJzfQ"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ICcywf85Eeq1EMHDrQJzfQ" x="20" y="260"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_FNVZ0DCcEeudTfGrNe5Q3w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_FNVZ0TCcEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FNWA4DCcEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FNVZ0jCcEeudTfGrNe5Q3w" x="720" y="240"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_FNejwDCcEeudTfGrNe5Q3w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_FNejwTCcEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FNejwzCcEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FNejwjCcEeudTfGrNe5Q3w" x="473" y="303"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_FNubYDCcEeudTfGrNe5Q3w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_FNubYTCcEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FNubYzCcEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FNubYjCcEeudTfGrNe5Q3w" x="1020" y="240"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_FN3lUDCcEeudTfGrNe5Q3w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_FN3lUTCcEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FN3lUzCcEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Element"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FN3lUjCcEeudTfGrNe5Q3w" x="1020" y="100"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_Q5ps0f2gEeqo7uz4QZ84uw" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_Q5ps0v2gEeqo7uz4QZ84uw"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_Q5ps0_2gEeqo7uz4QZ84uw" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+      <owner xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    </styles>
+    <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_LujkIP2kEeqo7uz4QZ84uw" name="css_stylesheets" eObjectListValue="_Cl9sgJTsEeqsmLiGoCAZPQ"/>
+    <element xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    <edges xmi:type="notation:Connector" xmi:id="_qCb84P2lEeqo7uz4QZ84uw" type="Generalization_Edge" source="_vXz7kP2kEeqo7uz4QZ84uw" target="_qCJpAP2lEeqo7uz4QZ84uw">
+      <children xmi:type="notation:DecorationNode" xmi:id="_qCb84_2lEeqo7uz4QZ84uw" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_rbcXMP2lEeqo7uz4QZ84uw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_qCb85P2lEeqo7uz4QZ84uw" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_qCb84f2lEeqo7uz4QZ84uw"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_tLQxkKr8EeqCiIVjjvsakg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_qCb84v2lEeqo7uz4QZ84uw" points="[315, 121, -643984, -643984]$[0, 0, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rbokcP2lEeqo7uz4QZ84uw" id="(0.31383737517831667,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rbpLgP2lEeqo7uz4QZ84uw" id="(0.8,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_qzNSgP2lEeqo7uz4QZ84uw" type="Generalization_Edge" source="_vXz7kP2kEeqo7uz4QZ84uw" target="_qy-pAP2lEeqo7uz4QZ84uw">
+      <children xmi:type="notation:DecorationNode" xmi:id="_qzN5kf2lEeqo7uz4QZ84uw" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_0_BmQP2lEeqo7uz4QZ84uw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_qzN5kv2lEeqo7uz4QZ84uw" x="-1" y="58"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_qzNSgf2lEeqo7uz4QZ84uw"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_1qkgMKr8EeqCiIVjjvsakg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_qzN5kP2lEeqo7uz4QZ84uw" points="[315, 121, -643984, -643984]$[0, 0, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0_KJIP2lEeqo7uz4QZ84uw" id="(0.34236804564907275,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0_KJIf2lEeqo7uz4QZ84uw" id="(0.4,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_EJqkcP2mEeqo7uz4QZ84uw" type="Generalization_Edge" source="__Lc-AP2lEeqo7uz4QZ84uw" target="_vXz7kP2kEeqo7uz4QZ84uw">
+      <children xmi:type="notation:DecorationNode" xmi:id="_EJqkc_2mEeqo7uz4QZ84uw" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_gC20cP5MEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_EJqkdP2mEeqo7uz4QZ84uw" y="59"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_EJqkcf2mEeqo7uz4QZ84uw"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_EJkd0P2mEeqo7uz4QZ84uw"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_EJqkcv2mEeqo7uz4QZ84uw" points="[320, 360, -643984, -643984]$[360, 319, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EJ51AP2mEeqo7uz4QZ84uw" id="(0.6,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EJ51Af2mEeqo7uz4QZ84uw" id="(0.34236804564907275,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_HLCDsP2mEeqo7uz4QZ84uw" type="Generalization_Edge" source="_GOgxEP2mEeqo7uz4QZ84uw" target="_vXz7kP2kEeqo7uz4QZ84uw">
+      <children xmi:type="notation:DecorationNode" xmi:id="_HLCDs_2mEeqo7uz4QZ84uw" type="Generalization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_HLCDtP2mEeqo7uz4QZ84uw" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_HLCDsf2mEeqo7uz4QZ84uw"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_tz0b0Kr7EeqCiIVjjvsakg"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HLCDsv2mEeqo7uz4QZ84uw" points="[527, 368, -643984, -643984]$[478, 318, -643984, -643984]"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_sNEzAP2mEeqo7uz4QZ84uw" id="(0.37089871611982883,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_TfRYEP5MEeqmZsqm6Otq5g" type="Generalization_Edge" source="_t3O_wP5LEeqmZsqm6Otq5g" target="_vXz7kP2kEeqo7uz4QZ84uw">
+      <children xmi:type="notation:DecorationNode" xmi:id="_TfR_IP5MEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_g-Sh8P5MEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_TfR_If5MEeqmZsqm6Otq5g" x="1" y="58"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_TfRYEf5MEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_ASw8YP5LEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TfRYEv5MEeqmZsqm6Otq5g" points="[240, 331, -643984, -643984]$[320, 285, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_g-fWQP5MEeqmZsqm6Otq5g" id="(0.8,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_g-f9UP5MEeqmZsqm6Otq5g" id="(0.31383737517831667,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_ICtYsP5NEeqmZsqm6Otq5g" type="Generalization_Edge" source="_tHwDkP5LEeqmZsqm6Otq5g" target="_vXz7kP2kEeqo7uz4QZ84uw">
+      <children xmi:type="notation:DecorationNode" xmi:id="_ICvN4P5NEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_Ea1d0P5zEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_ICvN4f5NEeqmZsqm6Otq5g" y="58"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_ICtYsf5NEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_9PjqEP5KEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ICtYsv5NEeqmZsqm6Otq5g" points="[263, 376, -643984, -643984]$[325, 312, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ixo7QP5NEeqmZsqm6Otq5g" id="(0.6012269938650306,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JCgo0P5NEeqmZsqm6Otq5g" id="(0.28530670470756064,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_YzNhcP5NEeqmZsqm6Otq5g" type="Generalization_Edge" source="_Yy9p0P5NEeqmZsqm6Otq5g" target="_t3O_wP5LEeqmZsqm6Otq5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_YzNhc_5NEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_ZXMYQP5NEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_YzNhdP5NEeqmZsqm6Otq5g" x="-1" y="58"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_YzNhcf5NEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_eKEjUP5LEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YzNhcv5NEeqmZsqm6Otq5g" points="[0, 0, -643984, -643984]$[304, 360, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZXYlgP5NEeqmZsqm6Otq5g" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZXZMkP5NEeqmZsqm6Otq5g" id="(0.4,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_fcIWMP5NEeqmZsqm6Otq5g" type="Extension_Edge" source="__Lc-AP2lEeqo7uz4QZ84uw" target="_euudoP5NEeqmZsqm6Otq5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_fcIWMf5NEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_fUzmMP5NEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_fcIWMv5NEeqmZsqm6Otq5g" points="[560, 368, -643984, -643984]$[560, 290, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fcUjcP5NEeqmZsqm6Otq5g" id="(0.8,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fcUjcf5NEeqmZsqm6Otq5g" id="(0.4,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_jhpaEP5NEeqmZsqm6Otq5g" type="Extension_Edge" source="_t3O_wP5LEeqmZsqm6Otq5g" target="_hfackP5NEeqmZsqm6Otq5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_jhpaEf5NEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_jaoMEP5NEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jhpaEv5NEeqmZsqm6Otq5g" points="[360, 540, -643984, -643984]$[360, 493, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jh1AQP5NEeqmZsqm6Otq5g" id="(0.2,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jh1AQf5NEeqmZsqm6Otq5g" id="(0.3333333333333333,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_0-P-YP5OEeqmZsqm6Otq5g" type="Generalization_Edge" source="_wS97AP5OEeqmZsqm6Otq5g" target="_t3O_wP5LEeqmZsqm6Otq5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_0-P-Y_5OEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_0-P-ZP5OEeqmZsqm6Otq5g" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_0-P-Yf5OEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_0-JQsP5OEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_0-P-Yv5OEeqmZsqm6Otq5g" points="[420, 540, -643984, -643984]$[340, 420, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0-dZwP5OEeqmZsqm6Otq5g" id="(0.26490066225165565,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_0-dZwf5OEeqmZsqm6Otq5g" id="(0.6,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_2MNNAP5TEeqmZsqm6Otq5g" type="Comment_AnnotatedElementEdge" source="_yHG_4P5TEeqmZsqm6Otq5g" target="_wS97AP5OEeqmZsqm6Otq5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_2MNNAf5TEeqmZsqm6Otq5g"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2MNNAv5TEeqmZsqm6Otq5g" points="[600, 580, -643984, -643984]$[551, 580, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2OaMcP5TEeqmZsqm6Otq5g" id="(0.0,0.3191489361702128)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2OaMcf5TEeqmZsqm6Otq5g" id="(1.0,0.49382716049382713)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_b_xu0P5zEeqmZsqm6Otq5g" type="Generalization_Edge" source="_sPNkIP5uEeqmZsqm6Otq5g" target="_t3O_wP5LEeqmZsqm6Otq5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_b_xu0_5zEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_b_xu1P5zEeqmZsqm6Otq5g" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_b_xu0f5zEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_b-ofUP5zEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_b_xu0v5zEeqmZsqm6Otq5g" points="[160, 540, -643984, -643984]$[300, 420, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cCLikP5zEeqmZsqm6Otq5g" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cCLikf5zEeqmZsqm6Otq5g" id="(0.2,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_mCfNEP53EeqmZsqm6Otq5g" type="Extension_Edge" source="_tHwDkP5LEeqmZsqm6Otq5g" target="_hfackP5NEeqmZsqm6Otq5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_mCfNEf53EeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_l49doP53EeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_mCfNEv53EeqmZsqm6Otq5g" points="[220, 341, -643984, -643984]$[273, 320, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mEyTIP53EeqmZsqm6Otq5g" id="(0.8466257668711656,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_mEyTIf53EeqmZsqm6Otq5g" id="(0.3333333333333333,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_QDH9UP54EeqmZsqm6Otq5g" type="Generalization_Edge" source="_T9uugP50EeqmZsqm6Otq5g" target="_vXz7kP2kEeqo7uz4QZ84uw">
+      <children xmi:type="notation:DecorationNode" xmi:id="_QDH9U_54EeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_RDsCcP54EeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_QDH9VP54EeqmZsqm6Otq5g" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_QDH9Uf54EeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_QB9fsP54EeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QDH9Uv54EeqmZsqm6Otq5g" points="[780, 240, -643984, -643984]$[780, 221, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QFmpkP54EeqmZsqm6Otq5g" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QFnQoP54EeqmZsqm6Otq5g" id="(0.912981455064194,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_kIU7kP55EeqmZsqm6Otq5g" type="Extension_Edge" source="_T9uugP50EeqmZsqm6Otq5g" target="_jHFhAP55EeqmZsqm6Otq5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_kIU7kf55EeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_kG70cP55EeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kIU7kv55EeqmZsqm6Otq5g" points="[820, 280, -643984, -643984]$[860, 250, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kKuvUP55EeqmZsqm6Otq5g" id="(0.8,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kKuvUf55EeqmZsqm6Otq5g" id="(0.2,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_EnA0cP56EeqmZsqm6Otq5g" type="Generalization_Edge" source="_pgLKAP55EeqmZsqm6Otq5g" target="_T9uugP50EeqmZsqm6Otq5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_EnA0c_56EeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_FCz_oP56EeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_EnA0dP56EeqmZsqm6Otq5g" x="-1" y="58"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_EnA0cf56EeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_ElvCEP56EeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_EnA0cv56EeqmZsqm6Otq5g" points="[820, 360, -643984, -643984]$[800, 320, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EpikAP56EeqmZsqm6Otq5g" id="(0.3669064748201439,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EpjLEP56EeqmZsqm6Otq5g" id="(0.6,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="__Fi0EP82Eeq1EMHDrQJzfQ" type="Generalization_Edge" source="_kkvEUP81Eeq1EMHDrQJzfQ" target="_t3O_wP5LEeqmZsqm6Otq5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="__Fi0E_82Eeq1EMHDrQJzfQ" type="Generalization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="__Fi0FP82Eeq1EMHDrQJzfQ" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="__Fi0Ef82Eeq1EMHDrQJzfQ"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#__Db7QP82Eeq1EMHDrQJzfQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__Fi0Ev82Eeq1EMHDrQJzfQ" points="[400, 680, -643984, -643984]$[320, 420, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__IASMP82Eeq1EMHDrQJzfQ" id="(0.6504065040650406,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__IA5QP82Eeq1EMHDrQJzfQ" id="(0.4,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_JvduMP85Eeq1EMHDrQJzfQ" type="Generalization_Edge" source="_ICcywP85Eeq1EMHDrQJzfQ" target="_vXz7kP2kEeqo7uz4QZ84uw">
+      <children xmi:type="notation:DecorationNode" xmi:id="_JvduM_85Eeq1EMHDrQJzfQ" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_BAJgECKYEeuEAdH_l0B0vw" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_JvduNP85Eeq1EMHDrQJzfQ" x="-1" y="59"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_JvduMf85Eeq1EMHDrQJzfQ"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_JtrlgP85Eeq1EMHDrQJzfQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JvduMv85Eeq1EMHDrQJzfQ" points="[80, 280, -643984, -643984]$[240, 221, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JyDvMP85Eeq1EMHDrQJzfQ" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JyEWQP85Eeq1EMHDrQJzfQ" id="(0.14265335235378032,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="__RGccP85Eeq1EMHDrQJzfQ" type="Extension_Edge" source="_ICcywP85Eeq1EMHDrQJzfQ" target="_hfackP5NEeqmZsqm6Otq5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="__RGccf85Eeq1EMHDrQJzfQ"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#__PUTwP85Eeq1EMHDrQJzfQ"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__RGccv85Eeq1EMHDrQJzfQ" points="[80, 280, -643984, -643984]$[273, 320, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__TXtUP85Eeq1EMHDrQJzfQ" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__TXtUf85Eeq1EMHDrQJzfQ" id="(0.0,0.5666666666666667)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_FNWA4TCcEeudTfGrNe5Q3w" type="StereotypeCommentLink" source="_euudoP5NEeqmZsqm6Otq5g" target="_FNVZ0DCcEeudTfGrNe5Q3w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_FNWA4jCcEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FNWA5jCcEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FNWA4zCcEeudTfGrNe5Q3w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FNWA5DCcEeudTfGrNe5Q3w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FNWA5TCcEeudTfGrNe5Q3w"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_FNejxDCcEeudTfGrNe5Q3w" type="StereotypeCommentLink" source="_hfackP5NEeqmZsqm6Otq5g" target="_FNejwDCcEeudTfGrNe5Q3w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_FNejxTCcEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FNejyTCcEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FNejxjCcEeudTfGrNe5Q3w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FNejxzCcEeudTfGrNe5Q3w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FNejyDCcEeudTfGrNe5Q3w"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_FNubZDCcEeudTfGrNe5Q3w" type="StereotypeCommentLink" source="_jHFhAP55EeqmZsqm6Otq5g" target="_FNubYDCcEeudTfGrNe5Q3w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_FNubZTCcEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FNubaTCcEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FNubZjCcEeudTfGrNe5Q3w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FNubZzCcEeudTfGrNe5Q3w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FNubaDCcEeudTfGrNe5Q3w"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_FN3lVDCcEeudTfGrNe5Q3w" type="StereotypeCommentLink" source="_OYFF4P56EeqmZsqm6Otq5g" target="_FN3lUDCcEeudTfGrNe5Q3w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_FN3lVTCcEeudTfGrNe5Q3w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FN3lWTCcEeudTfGrNe5Q3w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Element"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FN3lVjCcEeudTfGrNe5Q3w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FN3lVzCcEeudTfGrNe5Q3w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FN3lWDCcEeudTfGrNe5Q3w"/>
+    </edges>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_1IGRYP5jEeqmZsqm6Otq5g" type="PapyrusUMLProfileDiagram" name="Reference" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_3B99EP5jEeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_3B-kIP5jEeqmZsqm6Otq5g" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_3B-kIf5jEeqmZsqm6Otq5g" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_XHY9MP5rEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_GxAkoP5rEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_XHY9Mf5rEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_3B-kIv5jEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_3B-kI_5jEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_3B-kJP5jEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3B-kJf5jEeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_3B-kJv5jEeqmZsqm6Otq5g" visible="false" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_3B-kJ_5jEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_3B-kKP5jEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_3B-kKf5jEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3B-kKv5jEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_3B8H4P5jEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3B99Ef5jEeqmZsqm6Otq5g" x="240" y="60"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Sg-28P5kEeqmZsqm6Otq5g" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Sg_eAP5kEeqmZsqm6Otq5g" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Sg_eAf5kEeqmZsqm6Otq5g" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_SCF0IP5nEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_SB9RQP5nEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_SCF0If5nEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_Z73z0P5nEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Z7xGIP5nEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Z73z0f5nEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_6dV68P5nEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_6dLi4P5nEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_6dV68f5nEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_3Q1bUP5qEeqmZsqm6Otq5g" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_3Qs4cP5qEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_3Q1bUf5qEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Sg_eAv5kEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Sg_eA_5kEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Sg_eBP5kEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Sg_eBf5kEeqmZsqm6Otq5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Sg_eBv5kEeqmZsqm6Otq5g" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Sg_eB_5kEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Sg_eCP5kEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Sg_eCf5kEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Sg_eCv5kEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_Sg9BwP5kEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Sg-28f5kEeqmZsqm6Otq5g" x="220" y="220"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_uPC5cP5kEeqmZsqm6Otq5g" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_uPC5cv5kEeqmZsqm6Otq5g" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_uPC5c_5kEeqmZsqm6Otq5g" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_wbos0P5kEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_wblpgP5kEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_wbos0f5kEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_x39g4P5kEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_x36dkP5kEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_x39g4f5kEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_y82FUP5kEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_y8xz4P5kEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_y82FUf5kEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_z5cQcP5kEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_z5ZNIP5kEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_z5cQcf5kEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_05afsP5kEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_05W1UP5kEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_05afsf5kEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_1y9W0P5kEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_1y5FYP5kEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_1y9W0f5kEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_2p17gP5kEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_2pyRIP5kEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_2p17gf5kEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_36XIMP5kEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_36S2wP5kEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_36XIMf5kEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_ttxtgP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_tttcEP5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_ttxtgf5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_uoqBYP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_uolv8P5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_uoqBYf5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_v1ox4P5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_v1j5YP5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_v1ox4f5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_wyI2YP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_wyD94P5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_wyJdcP5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_zLX-oP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_zLQC0P5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_zLX-of5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_0HwuYP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_0Hr14P5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_0HwuYf5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_1J2dgP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_1JxlAP5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_1J2dgf5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_2HMPgP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_2HGv8P5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_2HMPgf5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_3Opm0P5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_3OkHQP5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_3Opm0f5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_4iMSUP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_4iGywP5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_4iMSUf5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_5rgq0P5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_5rbLQP5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_5rgq0f5mEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_uPC5dP5kEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_uPC5df5kEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_uPC5dv5kEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uPC5d_5kEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_uPBEQP5kEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uPC5cf5kEeqmZsqm6Otq5g" x="40" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_72zdsP5mEeqmZsqm6Otq5g" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_720EwP5mEeqmZsqm6Otq5g" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_720Ewf5mEeqmZsqm6Otq5g" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_9hk9cP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_9hgE8P5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_9hk9cf5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_-YKnMP5mEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_-YFHoP5mEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_-YKnMf5mEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_Bl2rMP5nEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_BluvYP5nEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Bl2rMf5nEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_DGsL0P5nEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_DGmsQP5nEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_DGsL0f5nEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_720Ewv5mEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_720Ew_5mEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_720ExP5mEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_720Exf5mEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_72xogP5mEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_72zdsf5mEeqmZsqm6Otq5g" x="300" y="480"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_JVHc8P5nEeqmZsqm6Otq5g" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_JVHc8v5nEeqmZsqm6Otq5g" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_JVHc8_5nEeqmZsqm6Otq5g" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_LHbIEP5nEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_LHUaYP5nEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_LHbIEf5nEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_MJJDwP5nEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_MJC9IP5nEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_MJJDwf5nEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_JVHc9P5nEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_JVHc9f5nEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JVHc9v5nEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JVHc9_5nEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_JVGO0P5nEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JVHc8f5nEeqmZsqm6Otq5g" x="40" y="140"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_-8AzwP5pEeqmZsqm6Otq5g" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_-8Azwv5pEeqmZsqm6Otq5g" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_-8Azw_5pEeqmZsqm6Otq5g" type="Enumeration_LiteralCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_-8AzxP5pEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_-8Azxf5pEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_-8Azxv5pEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-8Azx_5pEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_-7--kP5pEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-8Azwf5pEeqmZsqm6Otq5g" x="400" y="360"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_RGve0P5qEeqmZsqm6Otq5g" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_RGve0v5qEeqmZsqm6Otq5g" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RGve0_5qEeqmZsqm6Otq5g" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_iGlrIP5qEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_iGdIQP5qEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_iGlrIf5qEeqmZsqm6Otq5g"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_jBw58P5qEeqmZsqm6Otq5g" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_jBplMP5qEeqmZsqm6Otq5g"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_jBw58f5qEeqmZsqm6Otq5g"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RGve1P5qEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_RGve1f5qEeqmZsqm6Otq5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_RGve1v5qEeqmZsqm6Otq5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RGve1_5qEeqmZsqm6Otq5g"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_RGtpoP5qEeqmZsqm6Otq5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RGve0f5qEeqmZsqm6Otq5g" x="420" y="220"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5TMlkP5zEeqmZsqm6Otq5g" type="Class_MetaclassShape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_5TMllP5zEeqmZsqm6Otq5g" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5TNMoP5zEeqmZsqm6Otq5g" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5TNMof5zEeqmZsqm6Otq5g" key="StereotypeList" value="StandardProfile::Metaclass"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5TNMov5zEeqmZsqm6Otq5g" key="Stereotype_Presentation_Kind" value="HorizontalStereo"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5TNMo_5zEeqmZsqm6Otq5g" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_5TNMpP5zEeqmZsqm6Otq5g" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_5TMlkv5zEeqmZsqm6Otq5g" type="Class_MetaclassNameLabel"/>
+      <element xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5TMlk_5zEeqmZsqm6Otq5g" x="240" y="-80"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_cbPmECmlEeurJuF7PIGu4w" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_cbPmESmlEeurJuF7PIGu4w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_cbPmEymlEeurJuF7PIGu4w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_cbPmEimlEeurJuF7PIGu4w" x="440" y="-80"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_1IGRYf5jEeqmZsqm6Otq5g" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_1IGRYv5jEeqmZsqm6Otq5g"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_1IGRY_5jEeqmZsqm6Otq5g" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+      <owner xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    </styles>
+    <element xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    <edges xmi:type="notation:Connector" xmi:id="_EcvYwP5nEeqmZsqm6Otq5g" type="Generalization_Edge" source="_uPC5cP5kEeqmZsqm6Otq5g" target="_72zdsP5mEeqmZsqm6Otq5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_EcvYw_5nEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_TeCGUP5qEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_EcvYxP5nEeqmZsqm6Otq5g" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_EcvYwf5nEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_EcpSIP5nEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_EcvYwv5nEeqmZsqm6Otq5g" points="[204, 480, -643984, -643984]$[300, 480, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ec6-8P5nEeqmZsqm6Otq5g" id="(1.0,0.7407407407407407)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ec6-8f5nEeqmZsqm6Otq5g" id="(0.0,0.5405405405405406)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_OJGwYP5nEeqmZsqm6Otq5g" type="Generalization_Edge" source="_JVHc8P5nEeqmZsqm6Otq5g" target="_uPC5cP5kEeqmZsqm6Otq5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_OJGwY_5nEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_OJGwZP5nEeqmZsqm6Otq5g" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_OJGwYf5nEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_OJApwP5nEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_OJGwYv5nEeqmZsqm6Otq5g" points="[100, 240, -643984, -643984]$[100, 280, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OJTksP5nEeqmZsqm6Otq5g" id="(0.5172413793103449,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_OJULwP5nEeqmZsqm6Otq5g" id="(0.36585365853658536,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_k3YXwP5qEeqmZsqm6Otq5g" type="Generalization_Edge" source="_-8AzwP5pEeqmZsqm6Otq5g" target="_RGve0P5qEeqmZsqm6Otq5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_k3YXw_5qEeqmZsqm6Otq5g" type="Generalization_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_k3YXxP5qEeqmZsqm6Otq5g" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_k3YXwf5qEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Generalization" href="aas.profile.uml#_k3RqEP5qEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_k3YXwv5qEeqmZsqm6Otq5g" points="[440, 360, -643984, -643984]$[440, 320, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_k3nBQP5qEeqmZsqm6Otq5g" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_k3nBQf5qEeqmZsqm6Otq5g" id="(0.2,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_GxOAAP5rEeqmZsqm6Otq5g" type="Association_Edge" source="_3B99EP5jEeqmZsqm6Otq5g" target="_Sg-28P5kEeqmZsqm6Otq5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_GxOAA_5rEeqmZsqm6Otq5g" type="Association_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8BW08P5zEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_GxOABP5rEeqmZsqm6Otq5g" y="60"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_GxOABf5rEeqmZsqm6Otq5g" type="Association_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8Bgl8P5zEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_GxOABv5rEeqmZsqm6Otq5g" y="20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_GxOAB_5rEeqmZsqm6Otq5g" type="Association_TargetRoleLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8BpI0P5zEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_GxOACP5rEeqmZsqm6Otq5g" x="-15" y="20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_GxOACf5rEeqmZsqm6Otq5g" type="Association_SourceRoleLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8By50P5zEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_GxOACv5rEeqmZsqm6Otq5g" x="15" y="-20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_GxOAC_5rEeqmZsqm6Otq5g" type="Association_SourceMultiplicityLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8B7csP5zEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_GxOADP5rEeqmZsqm6Otq5g" x="15" y="20"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_GxOADf5rEeqmZsqm6Otq5g" type="Association_TargetMultiplicityLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_8CEmoP5zEeqmZsqm6Otq5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_GxOADv5rEeqmZsqm6Otq5g" x="-15" y="-20"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_GxOAAf5rEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Association" href="aas.profile.uml#_Gw9hUP5rEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_GxOAAv5rEeqmZsqm6Otq5g" points="[280, 120, -643984, -643984]$[280, 220, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Gxj-QP5rEeqmZsqm6Otq5g" id="(0.39215686274509803,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Gxj-Qf5rEeqmZsqm6Otq5g" id="(0.4,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_7KjIwP5zEeqmZsqm6Otq5g" type="Extension_Edge" source="_3B99EP5jEeqmZsqm6Otq5g" target="_5TMlkP5zEeqmZsqm6Otq5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_7Kjv0P5zEeqmZsqm6Otq5g"/>
+      <element xmi:type="uml:Extension" href="aas.profile.uml#_7KWUcP5zEeqmZsqm6Otq5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_7Kjv0f5zEeqmZsqm6Otq5g" points="[300, 20, -643984, -643984]$[180, 50, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7K9YcP5zEeqmZsqm6Otq5g" id="(0.5882352941176471,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7K9Ycf5zEeqmZsqm6Otq5g" id="(0.6,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_cbPmFCmlEeurJuF7PIGu4w" type="StereotypeCommentLink" source="_5TMlkP5zEeqmZsqm6Otq5g" target="_cbPmECmlEeurJuF7PIGu4w">
+      <styles xmi:type="notation:FontStyle" xmi:id="_cbPmFSmlEeurJuF7PIGu4w"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_cbPmGSmlEeurJuF7PIGu4w" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_cbPmFimlEeurJuF7PIGu4w" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cbPmFymlEeurJuF7PIGu4w"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_cbPmGCmlEeurJuF7PIGu4w"/>
+    </edges>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_0DuEsCJ9EeuWq4zY-5mLEA" type="PapyrusUMLProfileDiagram" name="Deployment" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_0ifEUCJ9EeuWq4zY-5mLEA" type="DataType_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_0ifEUiJ9EeuWq4zY-5mLEA" type="DataType_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_0ifEUyJ9EeuWq4zY-5mLEA" type="DataType_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_INU9oCKGEeuEAdH_l0B0vw" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_INNo4CKGEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_INU9oSKGEeuEAdH_l0B0vw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_Pa7z0CKGEeuEAdH_l0B0vw" type="Property_DataTypeAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_Pa0fECKGEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Pa7z0SKGEeuEAdH_l0B0vw"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_0ifEVCJ9EeuWq4zY-5mLEA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_0ifEVSJ9EeuWq4zY-5mLEA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_0ifEViJ9EeuWq4zY-5mLEA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0ifEVyJ9EeuWq4zY-5mLEA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_0ifrYCJ9EeuWq4zY-5mLEA" type="DataType_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_0ifrYSJ9EeuWq4zY-5mLEA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_0ifrYiJ9EeuWq4zY-5mLEA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_0ifrYyJ9EeuWq4zY-5mLEA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0ifrZCJ9EeuWq4zY-5mLEA"/>
+      </children>
+      <element xmi:type="uml:DataType" href="aas.profile.uml#_0icBACJ9EeuWq4zY-5mLEA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_0ifEUSJ9EeuWq4zY-5mLEA" x="240" y="120"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_YAjfcCJ-EeuWq4zY-5mLEA" type="Enumeration_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_YAjfciJ-EeuWq4zY-5mLEA" type="Enumeration_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_YAkGgCJ-EeuWq4zY-5mLEA" type="Enumeration_LiteralCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_IjIdQCKAEeuEAdH_l0B0vw" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_Ii2wcCKAEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_IjIdQSKAEeuEAdH_l0B0vw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_JbH1MCKAEeuEAdH_l0B0vw" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_Ja_SUCKAEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_JbH1MSKAEeuEAdH_l0B0vw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_KPQA0CKAEeuEAdH_l0B0vw" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_KPG24CKAEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_KPQA0SKAEeuEAdH_l0B0vw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_MumYICKAEeuEAdH_l0B0vw" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_MugRgCKAEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_MumYISKAEeuEAdH_l0B0vw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_PvAOECKAEeuEAdH_l0B0vw" type="EnumerationLiteral_LiteralLabel">
+          <element xmi:type="uml:EnumerationLiteral" href="aas.profile.uml#_Pu45UCKAEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_PvAOESKAEeuEAdH_l0B0vw"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_YAkGgSJ-EeuWq4zY-5mLEA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_YAkGgiJ-EeuWq4zY-5mLEA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_YAkGgyJ-EeuWq4zY-5mLEA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YAkGhCJ-EeuWq4zY-5mLEA"/>
+      </children>
+      <element xmi:type="uml:Enumeration" href="aas.profile.uml#_YAgcICJ-EeuWq4zY-5mLEA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YAjfcSJ-EeuWq4zY-5mLEA" x="420" y="120"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_aqBicCKGEeuEAdH_l0B0vw" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_aqD-sCKGEeuEAdH_l0B0vw" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_aqD-sSKGEeuEAdH_l0B0vw" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_lZLz0CKGEeuEAdH_l0B0vw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_lZCp4CKGEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_lZLz0SKGEeuEAdH_l0B0vw"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_aqD-siKGEeuEAdH_l0B0vw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_aqD-syKGEeuEAdH_l0B0vw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_aqD-tCKGEeuEAdH_l0B0vw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aqD-tSKGEeuEAdH_l0B0vw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_aqD-tiKGEeuEAdH_l0B0vw" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_aqD-tyKGEeuEAdH_l0B0vw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_aqD-uCKGEeuEAdH_l0B0vw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_aqD-uSKGEeuEAdH_l0B0vw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aqD-uiKGEeuEAdH_l0B0vw"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_RLrqII7VEeqdQ5EKLtW6Vg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_aqBicSKGEeuEAdH_l0B0vw" x="60" y="120"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_bX_bsCKGEeuEAdH_l0B0vw" type="Stereotype_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_bYACwCKGEeuEAdH_l0B0vw" type="Stereotype_NameLabel"/>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_bYACwSKGEeuEAdH_l0B0vw" type="Stereotype_AttributeCompartment">
+        <children xmi:type="notation:Shape" xmi:id="_uG05YCKGEeuEAdH_l0B0vw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_uGjzoCKGEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_uG05YSKGEeuEAdH_l0B0vw"/>
+        </children>
+        <children xmi:type="notation:Shape" xmi:id="_xdzcQCKGEeuEAdH_l0B0vw" type="Property_ClassAttributeLabel">
+          <element xmi:type="uml:Property" href="aas.profile.uml#_xdodICKGEeuEAdH_l0B0vw"/>
+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xdzcQSKGEeuEAdH_l0B0vw"/>
+        </children>
+        <styles xmi:type="notation:TitleStyle" xmi:id="_bYACwiKGEeuEAdH_l0B0vw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_bYACwyKGEeuEAdH_l0B0vw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_bYACxCKGEeuEAdH_l0B0vw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bYACxSKGEeuEAdH_l0B0vw"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_bYACxiKGEeuEAdH_l0B0vw" type="Stereotype_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_bYACxyKGEeuEAdH_l0B0vw"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_bYACyCKGEeuEAdH_l0B0vw"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_bYACySKGEeuEAdH_l0B0vw"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bYACyiKGEeuEAdH_l0B0vw"/>
+      </children>
+      <element xmi:type="uml:Stereotype" href="aas.profile.uml#_QVx84I7VEeqdQ5EKLtW6Vg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bX_bsSKGEeuEAdH_l0B0vw" x="60" y="260"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_QKKZgCmmEeurJuF7PIGu4w" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_QKLnoCmmEeurJuF7PIGu4w" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="aas.profile.uml#_QKBPkCmmEeurJuF7PIGu4w"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QKKZgSmmEeurJuF7PIGu4w" x="260" y="300"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_0DuEsSJ9EeuWq4zY-5mLEA" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_0DuEsiJ9EeuWq4zY-5mLEA"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_0DuEsyJ9EeuWq4zY-5mLEA" diagramKindId="org.eclipse.papyrus.uml.diagram.profile">
+      <owner xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    </styles>
+    <styles xmi:type="notation:EObjectListValueStyle" xmi:id="_5OM2cCKGEeuEAdH_l0B0vw" name="css_stylesheets" eObjectListValue="_Cl9sgJTsEeqsmLiGoCAZPQ"/>
+    <element xmi:type="uml:Profile" href="aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>
+    <edges xmi:type="notation:Connector" xmi:id="_bJ0lACmmEeurJuF7PIGu4w" type="Comment_AnnotatedElementEdge" source="_QKKZgCmmEeurJuF7PIGu4w" target="_bX_bsCKGEeuEAdH_l0B0vw">
+      <styles xmi:type="notation:FontStyle" xmi:id="_bJ0lASmmEeurJuF7PIGu4w"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bJ0lAimmEeurJuF7PIGu4w" points="[260, 320, -643984, -643984]$[184, 320, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bMGc8CmmEeurJuF7PIGu4w" id="(0.0,0.3333333333333333)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bMGc8SmmEeurJuF7PIGu4w" id="(1.0,0.5405405405405406)"/>
+    </edges>
+  </notation:Diagram>
+</xmi:XMI>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.profile.uml b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.profile.uml
new file mode 100644
index 0000000..47b41a6
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/aas.profile.uml
@@ -0,0 +1,1196 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Ecore="http://www.eclipse.org/uml2/schemas/Ecore/5" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/uml2/schemas/Ecore/5 pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA">
+  <uml:Profile xmi:id="_NbERgI7QEeqdQ5EKLtW6Vg" name="AAS" metaclassReference="_3MsksJQbEeqsmLiGoCAZPQ _qhSvkKsFEeqnq7OKRN2fbg _eutPgP5NEeqmZsqm6Otq5g _hfZOcP5NEeqmZsqm6Otq5g _OYD3wP56EeqmZsqm6Otq5g _XpjxMCJ9EeuWq4zY-5mLEA">
+    <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w5ywJWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_YoVUQJWsEeqsmLiGoCAZPQ" source="PapyrusVersion">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_YoVUQZWsEeqsmLiGoCAZPQ" key="Version" value="0.0.0"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_YoVUQpWsEeqsmLiGoCAZPQ" key="Comment" value="&lt;undefined>"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_YoVUQ5WsEeqsmLiGoCAZPQ" key="Copyright" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_YoVURJWsEeqsmLiGoCAZPQ" key="Date" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_YoVURZWsEeqsmLiGoCAZPQ" key="Author" value="&lt;undefined>"/>
+      </eAnnotations>
+      <contents xmi:type="ecore:EPackage" xmi:id="_cQFB4KfSEeqYZ7PZ7OG9lg" name="AASUMLProfile" nsURI="http:///schemas/AASUMLProfile/_cQCloKfSEeqYZ7PZ7OG9lg/5" nsPrefix="AASUMLProfile">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFB4afSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cQFB4qfSEeqYZ7PZ7OG9lg" key="originalName" value="AAS UML Profile"/>
+        </eAnnotations>
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFpAKfSEeqYZ7PZ7OG9lg" source="PapyrusVersion">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cQFpAafSEeqYZ7PZ7OG9lg" key="Version" value="0.0.6"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cQFpAqfSEeqYZ7PZ7OG9lg" key="Comment" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cQFpA6fSEeqYZ7PZ7OG9lg" key="Copyright" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cQFpBKfSEeqYZ7PZ7OG9lg" key="Date" value="2020-06-06"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cQFpBafSEeqYZ7PZ7OG9lg" key="Author" value=""/>
+        </eAnnotations>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFB46fSEeqYZ7PZ7OG9lg" name="AssetAdministrationShell" eSuperTypes="_cQFB7qfSEeqYZ7PZ7OG9lg">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFB5KfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_QVx84I7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFB5afSEeqYZ7PZ7OG9lg" name="derivedFrom" ordered="false" eType="_cQFB46fSEeqYZ7PZ7OG9lg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFB56fSEeqYZ7PZ7OG9lg" name="security" ordered="false" eType="_cQFCEqfSEeqYZ7PZ7OG9lg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFB6afSEeqYZ7PZ7OG9lg" name="asset" ordered="false" lowerBound="1" eType="_cQFCSafSEeqYZ7PZ7OG9lg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFB66fSEeqYZ7PZ7OG9lg" name="submodel" ordered="false" upperBound="-1" eType="_cQFCLKfSEeqYZ7PZ7OG9lg"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFB7qfSEeqYZ7PZ7OG9lg" name="Identifiable" abstract="true" eSuperTypes="_cQFB9afSEeqYZ7PZ7OG9lg">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFB76fSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wbHM8JWsEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFB8KfSEeqYZ7PZ7OG9lg" name="administration" ordered="false" eType="_cQFCAafSEeqYZ7PZ7OG9lg" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFB8qfSEeqYZ7PZ7OG9lg" name="identification" ordered="false" lowerBound="1" eType="_cQFCB6fSEeqYZ7PZ7OG9lg" containment="true"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFB9afSEeqYZ7PZ7OG9lg" name="Refereable" abstract="true">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFB9qfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_oOXGoJTrEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFB96fSEeqYZ7PZ7OG9lg" name="idShort" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFB-afSEeqYZ7PZ7OG9lg" name="category" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFB-6fSEeqYZ7PZ7OG9lg" name="description" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFB_afSEeqYZ7PZ7OG9lg" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFB_6fSEeqYZ7PZ7OG9lg" name="parent" ordered="false" eType="_cQFB9afSEeqYZ7PZ7OG9lg"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCAafSEeqYZ7PZ7OG9lg" name="AdministrativeInformation">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCAqfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_tz5pQJTfEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCA6fSEeqYZ7PZ7OG9lg" name="version" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCBafSEeqYZ7PZ7OG9lg" name="revision" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCB6fSEeqYZ7PZ7OG9lg" name="Identifier">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCCKfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_TEZYYJTtEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCCafSEeqYZ7PZ7OG9lg" name="idType" ordered="false" lowerBound="1" eType="_cQFCDafSEeqYZ7PZ7OG9lg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCC6fSEeqYZ7PZ7OG9lg" name="id" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cQFCDafSEeqYZ7PZ7OG9lg" name="IdentifierType">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCDqfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_z5tzIJTuEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_cQFCD6fSEeqYZ7PZ7OG9lg" name="Custom"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_cQFCEKfSEeqYZ7PZ7OG9lg" name="IRDI" value="1"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_cQFCEafSEeqYZ7PZ7OG9lg" name="IRI" value="2"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCEqfSEeqYZ7PZ7OG9lg" name="Security">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCE6fSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_710PcJj-EeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFCFKfSEeqYZ7PZ7OG9lg" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFCFqfSEeqYZ7PZ7OG9lg" name="accessControlPolicyPoints" ordered="false" lowerBound="1" eType="_cQFCHKfSEeqYZ7PZ7OG9lg" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFCGKfSEeqYZ7PZ7OG9lg" name="certificate" ordered="false" upperBound="-1" eType="_cQFCRafSEeqYZ7PZ7OG9lg" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFCGqfSEeqYZ7PZ7OG9lg" name="requiredCertificateExtension" ordered="false" upperBound="-1" eType="_cQFCR6fSEeqYZ7PZ7OG9lg" containment="true"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCHKfSEeqYZ7PZ7OG9lg" name="AccessControlPolicyPoints">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCHafSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_BD7doJkAEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFCHqfSEeqYZ7PZ7OG9lg" name="localAccessControl" ordered="false" lowerBound="1" eType="_cQFCKqfSEeqYZ7PZ7OG9lg" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCIKfSEeqYZ7PZ7OG9lg" name="externalAccessControl" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCIqfSEeqYZ7PZ7OG9lg" name="externalInformationPoints" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFCJKfSEeqYZ7PZ7OG9lg" name="internalInformationPoint" ordered="false" lowerBound="1" eType="_cQFCLKfSEeqYZ7PZ7OG9lg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCJqfSEeqYZ7PZ7OG9lg" name="externalPolicyDecisionPoints" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCKKfSEeqYZ7PZ7OG9lg" name="externalPolicyEnforcementPoint" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCKqfSEeqYZ7PZ7OG9lg" name="AccessControl">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCK6fSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="__nsTsJkAEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCLKfSEeqYZ7PZ7OG9lg" name="Submodel" eSuperTypes="_cQFB7qfSEeqYZ7PZ7OG9lg _cQFCMafSEeqYZ7PZ7OG9lg _cQFCPafSEeqYZ7PZ7OG9lg">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCLafSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_S6sJoI7VEeqdQ5EKLtW6Vg"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCMafSEeqYZ7PZ7OG9lg" name="HasKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCMqfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_Q2O20JXhEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCM6fSEeqYZ7PZ7OG9lg" name="kind" ordered="false" eType="_cQFCOafSEeqYZ7PZ7OG9lg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFCNafSEeqYZ7PZ7OG9lg" name="base_HasKind_Class" ordered="false">
+            <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCNqfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+              <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cQFCN6fSEeqYZ7PZ7OG9lg" key="originalName" value="base_Class"/>
+            </eAnnotations>
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cQFCOafSEeqYZ7PZ7OG9lg" name="ModelingKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCOqfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_KptDIJXhEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_cQFCO6fSEeqYZ7PZ7OG9lg" name="Template"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_cQFCPKfSEeqYZ7PZ7OG9lg" name="Instance" value="1"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCPafSEeqYZ7PZ7OG9lg" name="HasSemantics">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCPqfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_MX_UcJXiEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFCP6fSEeqYZ7PZ7OG9lg" name="semanticId" ordered="false" lowerBound="1" eType="_cQFB9afSEeqYZ7PZ7OG9lg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_cQFCQafSEeqYZ7PZ7OG9lg" name="base_HasSemantics_Class" ordered="false">
+            <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCQqfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+              <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_cQFCQ6fSEeqYZ7PZ7OG9lg" key="originalName" value="base_Class"/>
+            </eAnnotations>
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCRafSEeqYZ7PZ7OG9lg" name="Certificate">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCRqfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_OlQfMJkBEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCR6fSEeqYZ7PZ7OG9lg" name="Reference">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCSKfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_cQFCSafSEeqYZ7PZ7OG9lg" name="Asset" eSuperTypes="_cQFB7qfSEeqYZ7PZ7OG9lg">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCSqfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_RLrqII7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_cQFCS6fSEeqYZ7PZ7OG9lg" name="kind" ordered="false" lowerBound="1" eType="_cQFCTqfSEeqYZ7PZ7OG9lg"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_cQFCTqfSEeqYZ7PZ7OG9lg" name="AssetKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cQFCT6fSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_3rh0MI7VEeqdQ5EKLtW6Vg"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_cQFCUKfSEeqYZ7PZ7OG9lg" name="Type"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_cQFCUafSEeqYZ7PZ7OG9lg" name="Instance" value="1"/>
+        </eClassifiers>
+      </contents>
+      <contents xmi:type="ecore:EPackage" xmi:id="_QBR_AJkGEeqsmLiGoCAZPQ" name="AASUMLProfile" nsURI="http:///schemas/AASUMLProfile/_QBRX8JkGEeqsmLiGoCAZPQ/4" nsPrefix="AASUMLProfile">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBSmIZkGEeqsmLiGoCAZPQ" source="PapyrusVersion">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QBSmIpkGEeqsmLiGoCAZPQ" key="Version" value="0.0.5"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QBSmI5kGEeqsmLiGoCAZPQ" key="Comment" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QBSmJJkGEeqsmLiGoCAZPQ" key="Copyright" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QBSmJZkGEeqsmLiGoCAZPQ" key="Date" value="2020-05-18"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QBSmJpkGEeqsmLiGoCAZPQ" key="Author" value=""/>
+        </eAnnotations>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_AZkGEeqsmLiGoCAZPQ" name="AssetAdministrationShell" eSuperTypes="_QBR_DJkGEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_ApkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_QVx84I7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_A5kGEeqsmLiGoCAZPQ" name="derivedFrom" ordered="false" eType="_QBR_AZkGEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_BZkGEeqsmLiGoCAZPQ" name="security" ordered="false" eType="_QBR_MJkGEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_B5kGEeqsmLiGoCAZPQ" name="asset" ordered="false" lowerBound="1" eType="_QBR_Z5kGEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_CZkGEeqsmLiGoCAZPQ" name="submodel" ordered="false" upperBound="-1" eType="_QBR_SpkGEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_DJkGEeqsmLiGoCAZPQ" name="Identifiable" abstract="true" eSuperTypes="_QBR_E5kGEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_DZkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wbHM8JWsEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_DpkGEeqsmLiGoCAZPQ" name="administration" ordered="false" eType="_QBR_H5kGEeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_EJkGEeqsmLiGoCAZPQ" name="identification" ordered="false" lowerBound="1" eType="_QBR_JZkGEeqsmLiGoCAZPQ" containment="true"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_E5kGEeqsmLiGoCAZPQ" name="Refereable" abstract="true">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_FJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_oOXGoJTrEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_FZkGEeqsmLiGoCAZPQ" name="idShort" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_F5kGEeqsmLiGoCAZPQ" name="category" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_GZkGEeqsmLiGoCAZPQ" name="description" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_G5kGEeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_HZkGEeqsmLiGoCAZPQ" name="parent" ordered="false" eType="_QBR_E5kGEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_H5kGEeqsmLiGoCAZPQ" name="AdministrativeInformation">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_IJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_tz5pQJTfEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_IZkGEeqsmLiGoCAZPQ" name="version" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_I5kGEeqsmLiGoCAZPQ" name="revision" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_JZkGEeqsmLiGoCAZPQ" name="Identifier">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_JpkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_TEZYYJTtEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_J5kGEeqsmLiGoCAZPQ" name="idType" ordered="false" lowerBound="1" eType="_QBR_K5kGEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_KZkGEeqsmLiGoCAZPQ" name="id" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_QBR_K5kGEeqsmLiGoCAZPQ" name="IdentifierType">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_LJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_z5tzIJTuEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_QBR_LZkGEeqsmLiGoCAZPQ" name="Custom"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_QBR_LpkGEeqsmLiGoCAZPQ" name="IRDI" value="1"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_QBR_L5kGEeqsmLiGoCAZPQ" name="IRI" value="2"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_MJkGEeqsmLiGoCAZPQ" name="Security">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_MZkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_710PcJj-EeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_MpkGEeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_NJkGEeqsmLiGoCAZPQ" name="accessControlPolicyPoints" ordered="false" lowerBound="1" eType="_QBR_OpkGEeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_NpkGEeqsmLiGoCAZPQ" name="certificate" ordered="false" upperBound="-1" eType="_QBR_Y5kGEeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_OJkGEeqsmLiGoCAZPQ" name="requiredCertificateExtension" ordered="false" upperBound="-1" eType="_QBR_ZZkGEeqsmLiGoCAZPQ" containment="true"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_OpkGEeqsmLiGoCAZPQ" name="AccessControlPolicyPoints">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_O5kGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_BD7doJkAEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_PJkGEeqsmLiGoCAZPQ" name="localAccessControl" ordered="false" lowerBound="1" eType="_QBR_SJkGEeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_PpkGEeqsmLiGoCAZPQ" name="externalAccessControl" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_QJkGEeqsmLiGoCAZPQ" name="externalInformationPoints" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_QpkGEeqsmLiGoCAZPQ" name="internalInformationPoint" ordered="false" lowerBound="1" eType="_QBR_SpkGEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_RJkGEeqsmLiGoCAZPQ" name="externalPolicyDecisionPoints" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_RpkGEeqsmLiGoCAZPQ" name="externalPolicyEnforcementPoint" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_SJkGEeqsmLiGoCAZPQ" name="AccessControl">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_SZkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="__nsTsJkAEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_SpkGEeqsmLiGoCAZPQ" name="Submodel" eSuperTypes="_QBR_DJkGEeqsmLiGoCAZPQ _QBR_T5kGEeqsmLiGoCAZPQ _QBR_W5kGEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_S5kGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_S6sJoI7VEeqdQ5EKLtW6Vg"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_T5kGEeqsmLiGoCAZPQ" name="HasKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_UJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_Q2O20JXhEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_UZkGEeqsmLiGoCAZPQ" name="kind" ordered="false" eType="_QBR_V5kGEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_U5kGEeqsmLiGoCAZPQ" name="base_HasKind_Class" ordered="false">
+            <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_VJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+              <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QBR_VZkGEeqsmLiGoCAZPQ" key="originalName" value="base_Class"/>
+            </eAnnotations>
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_QBR_V5kGEeqsmLiGoCAZPQ" name="ModelingKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_WJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_KptDIJXhEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_QBR_WZkGEeqsmLiGoCAZPQ" name="Template"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_QBR_WpkGEeqsmLiGoCAZPQ" name="Instance" value="1"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_W5kGEeqsmLiGoCAZPQ" name="HasSemantics">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_XJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_MX_UcJXiEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_XZkGEeqsmLiGoCAZPQ" name="semanticId" ordered="false" lowerBound="1" eType="_QBR_E5kGEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_QBR_X5kGEeqsmLiGoCAZPQ" name="base_HasSemantics_Class" ordered="false">
+            <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_YJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+              <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_QBR_YZkGEeqsmLiGoCAZPQ" key="originalName" value="base_Class"/>
+            </eAnnotations>
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_Y5kGEeqsmLiGoCAZPQ" name="Certificate">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_ZJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_OlQfMJkBEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_ZZkGEeqsmLiGoCAZPQ" name="Reference">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_ZpkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_QBR_Z5kGEeqsmLiGoCAZPQ" name="Asset" eSuperTypes="_QBR_DJkGEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_aJkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_RLrqII7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_QBR_aZkGEeqsmLiGoCAZPQ" name="kind" ordered="false" lowerBound="1" eType="_QBR_bJkGEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_QBR_bJkGEeqsmLiGoCAZPQ" name="AssetKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_QBR_bZkGEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_3rh0MI7VEeqdQ5EKLtW6Vg"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_QBR_bpkGEeqsmLiGoCAZPQ" name="Type"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_QBR_b5kGEeqsmLiGoCAZPQ" name="Instance" value="1"/>
+        </eClassifiers>
+      </contents>
+      <contents xmi:type="ecore:EPackage" xmi:id="_kuECAJkEEeqsmLiGoCAZPQ" name="AASUMLProfile" nsURI="http:///schemas/AASUMLProfile/_kuDa8JkEEeqsmLiGoCAZPQ/3" nsPrefix="AASUMLProfile">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuFQLpkEEeqsmLiGoCAZPQ" source="PapyrusVersion">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kuFQL5kEEeqsmLiGoCAZPQ" key="Version" value="0.0.4"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kuFQMJkEEeqsmLiGoCAZPQ" key="Comment" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kuFQMZkEEeqsmLiGoCAZPQ" key="Copyright" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kuFQMpkEEeqsmLiGoCAZPQ" key="Date" value="2020-05-18"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kuFQM5kEEeqsmLiGoCAZPQ" key="Author" value=""/>
+        </eAnnotations>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECAZkEEeqsmLiGoCAZPQ" name="AssetAdministrationShell" eSuperTypes="_kuECDJkEEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECApkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_QVx84I7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECA5kEEeqsmLiGoCAZPQ" name="derivedFrom" ordered="false" eType="_kuECAZkEEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECBZkEEeqsmLiGoCAZPQ" name="security" ordered="false" eType="_kuECMJkEEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECB5kEEeqsmLiGoCAZPQ" name="asset" ordered="false" lowerBound="1" eType="_kuECZ5kEEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECCZkEEeqsmLiGoCAZPQ" name="submodel" ordered="false" upperBound="-1" eType="_kuECSpkEEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECDJkEEeqsmLiGoCAZPQ" name="Identifiable" abstract="true" eSuperTypes="_kuECE5kEEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECDZkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wbHM8JWsEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECDpkEEeqsmLiGoCAZPQ" name="administration" ordered="false" eType="_kuECH5kEEeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECEJkEEeqsmLiGoCAZPQ" name="identification" ordered="false" lowerBound="1" eType="_kuECJZkEEeqsmLiGoCAZPQ" containment="true"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECE5kEEeqsmLiGoCAZPQ" name="Refereable" abstract="true">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECFJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_oOXGoJTrEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECFZkEEeqsmLiGoCAZPQ" name="idShort" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECF5kEEeqsmLiGoCAZPQ" name="category" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECGZkEEeqsmLiGoCAZPQ" name="description" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECG5kEEeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECHZkEEeqsmLiGoCAZPQ" name="parent" ordered="false" eType="_kuECE5kEEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECH5kEEeqsmLiGoCAZPQ" name="AdministrativeInformation">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECIJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_tz5pQJTfEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECIZkEEeqsmLiGoCAZPQ" name="version" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECI5kEEeqsmLiGoCAZPQ" name="revision" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECJZkEEeqsmLiGoCAZPQ" name="Identifier">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECJpkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_TEZYYJTtEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECJ5kEEeqsmLiGoCAZPQ" name="idType" ordered="false" lowerBound="1" eType="_kuECK5kEEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECKZkEEeqsmLiGoCAZPQ" name="id" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_kuECK5kEEeqsmLiGoCAZPQ" name="IdentifierType">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECLJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_z5tzIJTuEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_kuECLZkEEeqsmLiGoCAZPQ" name="Custom"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_kuECLpkEEeqsmLiGoCAZPQ" name="IRDI" value="1"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_kuECL5kEEeqsmLiGoCAZPQ" name="IRI" value="2"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECMJkEEeqsmLiGoCAZPQ" name="Security">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECMZkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_710PcJj-EeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECMpkEEeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECNJkEEeqsmLiGoCAZPQ" name="accessControlPolicyPoints" ordered="false" lowerBound="1" eType="_kuECOpkEEeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECNpkEEeqsmLiGoCAZPQ" name="certificate" ordered="false" upperBound="-1" eType="_kuECY5kEEeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECOJkEEeqsmLiGoCAZPQ" name="requiredCertificateExtension" ordered="false" upperBound="-1" eType="_kuECZZkEEeqsmLiGoCAZPQ" containment="true"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECOpkEEeqsmLiGoCAZPQ" name="AccessControlPolicyPoints">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECO5kEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_BD7doJkAEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECPJkEEeqsmLiGoCAZPQ" name="localAccessControl" ordered="false" lowerBound="1" eType="_kuECSJkEEeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECPpkEEeqsmLiGoCAZPQ" name="externalAccessControl" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECQJkEEeqsmLiGoCAZPQ" name="externalInformationPoints" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECQpkEEeqsmLiGoCAZPQ" name="internalInformationPoint" ordered="false" lowerBound="1" eType="_kuECSpkEEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECRJkEEeqsmLiGoCAZPQ" name="externalPolicyDecisionPoints" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECRpkEEeqsmLiGoCAZPQ" name="externalPolicyEnforcementPoint" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/emf/2002/Ecore#//EBoolean"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECSJkEEeqsmLiGoCAZPQ" name="AccessControl">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECSZkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="__nsTsJkAEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECSpkEEeqsmLiGoCAZPQ" name="Submodel" eSuperTypes="_kuECDJkEEeqsmLiGoCAZPQ _kuECT5kEEeqsmLiGoCAZPQ _kuECW5kEEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECS5kEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_S6sJoI7VEeqdQ5EKLtW6Vg"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECT5kEEeqsmLiGoCAZPQ" name="HasKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECUJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_Q2O20JXhEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECUZkEEeqsmLiGoCAZPQ" name="kind" ordered="false" eType="_kuECV5kEEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECU5kEEeqsmLiGoCAZPQ" name="base_HasKind_Class" ordered="false">
+            <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECVJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+              <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kuECVZkEEeqsmLiGoCAZPQ" key="originalName" value="base_Class"/>
+            </eAnnotations>
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_kuECV5kEEeqsmLiGoCAZPQ" name="ModelingKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECWJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_KptDIJXhEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_kuECWZkEEeqsmLiGoCAZPQ" name="Template"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_kuECWpkEEeqsmLiGoCAZPQ" name="Instance" value="1"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECW5kEEeqsmLiGoCAZPQ" name="HasSemantics">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECXJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_MX_UcJXiEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECXZkEEeqsmLiGoCAZPQ" name="semanticId" ordered="false" lowerBound="1" eType="_kuECE5kEEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_kuECX5kEEeqsmLiGoCAZPQ" name="base_HasSemantics_Class" ordered="false">
+            <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECYJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+              <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_kuECYZkEEeqsmLiGoCAZPQ" key="originalName" value="base_Class"/>
+            </eAnnotations>
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECY5kEEeqsmLiGoCAZPQ" name="Certificate">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECZJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_OlQfMJkBEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECZZkEEeqsmLiGoCAZPQ" name="Reference">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECZpkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_kuECZ5kEEeqsmLiGoCAZPQ" name="Asset" eSuperTypes="_kuECDJkEEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECaJkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_RLrqII7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_kuECaZkEEeqsmLiGoCAZPQ" name="kind" ordered="false" lowerBound="1" eType="_kuECbJkEEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_kuECbJkEEeqsmLiGoCAZPQ" name="AssetKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_kuECbZkEEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_3rh0MI7VEeqdQ5EKLtW6Vg"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_kuECbpkEEeqsmLiGoCAZPQ" name="Type"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_kuECb5kEEeqsmLiGoCAZPQ" name="Instance" value="1"/>
+        </eClassifiers>
+      </contents>
+      <contents xmi:type="ecore:EPackage" xmi:id="_xkOq4Zj-EeqsmLiGoCAZPQ" name="AASUMLProfile" nsURI="http:///schemas/AASUMLProfile/_xkOq4Jj-EeqsmLiGoCAZPQ/2" nsPrefix="AASUMLProfile">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkP5Cpj-EeqsmLiGoCAZPQ" source="PapyrusVersion">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_xkP5C5j-EeqsmLiGoCAZPQ" key="Version" value="0.0.3"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_xkP5DJj-EeqsmLiGoCAZPQ" key="Comment" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_xkP5DZj-EeqsmLiGoCAZPQ" key="Copyright" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_xkP5Dpj-EeqsmLiGoCAZPQ" key="Date" value="2020-05-18"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_xkP5D5j-EeqsmLiGoCAZPQ" key="Author" value=""/>
+        </eAnnotations>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xkOq4pj-EeqsmLiGoCAZPQ" name="AssetAdministrationShell" eSuperTypes="_xkOq7Zj-EeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkOq45j-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_QVx84I7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkOq5Jj-EeqsmLiGoCAZPQ" name="derivedFrom" ordered="false" eType="_xkOq4pj-EeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkOq5pj-EeqsmLiGoCAZPQ" name="security" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkOq6Jj-EeqsmLiGoCAZPQ" name="asset" ordered="false" lowerBound="1" eType="_xkOrEZj-EeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkOq6pj-EeqsmLiGoCAZPQ" name="submodel" ordered="false" upperBound="-1" eType="_xkOrGpj-EeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xkOq7Zj-EeqsmLiGoCAZPQ" name="Identifiable" abstract="true" eSuperTypes="_xkOq9Jj-EeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkOq7pj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wbHM8JWsEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkOq75j-EeqsmLiGoCAZPQ" name="administration" ordered="false" eType="_xkOrAJj-EeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkOq8Zj-EeqsmLiGoCAZPQ" name="identification" ordered="false" lowerBound="1" eType="_xkOrBpj-EeqsmLiGoCAZPQ" containment="true"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xkOq9Jj-EeqsmLiGoCAZPQ" name="Refereable" abstract="true">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkOq9Zj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_oOXGoJTrEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xkOq9pj-EeqsmLiGoCAZPQ" name="idShort" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xkOq-Jj-EeqsmLiGoCAZPQ" name="category" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xkOq-pj-EeqsmLiGoCAZPQ" name="description" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkOq_Jj-EeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkOq_pj-EeqsmLiGoCAZPQ" name="parent" ordered="false" eType="_xkOq9Jj-EeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xkOrAJj-EeqsmLiGoCAZPQ" name="AdministrativeInformation">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkOrAZj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_tz5pQJTfEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xkOrApj-EeqsmLiGoCAZPQ" name="version" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xkOrBJj-EeqsmLiGoCAZPQ" name="revision" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xkOrBpj-EeqsmLiGoCAZPQ" name="Identifier">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkOrB5j-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_TEZYYJTtEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xkOrCJj-EeqsmLiGoCAZPQ" name="idType" ordered="false" lowerBound="1" eType="_xkOrDJj-EeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xkOrCpj-EeqsmLiGoCAZPQ" name="id" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xkOrDJj-EeqsmLiGoCAZPQ" name="IdentifierType">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkOrDZj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_z5tzIJTuEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_xkOrDpj-EeqsmLiGoCAZPQ" name="Custom"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_xkOrD5j-EeqsmLiGoCAZPQ" name="IRDI" value="1"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_xkOrEJj-EeqsmLiGoCAZPQ" name="IRI" value="2"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xkOrEZj-EeqsmLiGoCAZPQ" name="Asset" eSuperTypes="_xkOq7Zj-EeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkOrEpj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_RLrqII7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xkOrE5j-EeqsmLiGoCAZPQ" name="kind" ordered="false" lowerBound="1" eType="_xkOrFpj-EeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xkOrFpj-EeqsmLiGoCAZPQ" name="AssetKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkOrF5j-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_3rh0MI7VEeqdQ5EKLtW6Vg"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_xkOrGJj-EeqsmLiGoCAZPQ" name="Type"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_xkOrGZj-EeqsmLiGoCAZPQ" name="Instance" value="1"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xkOrGpj-EeqsmLiGoCAZPQ" name="Submodel" eSuperTypes="_xkOq7Zj-EeqsmLiGoCAZPQ _xkPR85j-EeqsmLiGoCAZPQ _xkPR_5j-EeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkOrG5j-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_S6sJoI7VEeqdQ5EKLtW6Vg"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xkPR85j-EeqsmLiGoCAZPQ" name="HasKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkPR9Jj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_Q2O20JXhEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_xkPR9Zj-EeqsmLiGoCAZPQ" name="kind" ordered="false" eType="_xkPR-5j-EeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkPR95j-EeqsmLiGoCAZPQ" name="base_HasKind_Class" ordered="false">
+            <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkPR-Jj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+              <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_xkPR-Zj-EeqsmLiGoCAZPQ" key="originalName" value="base_Class"/>
+            </eAnnotations>
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_xkPR-5j-EeqsmLiGoCAZPQ" name="ModelingKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkPR_Jj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_KptDIJXhEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_xkPR_Zj-EeqsmLiGoCAZPQ" name="Template"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_xkPR_pj-EeqsmLiGoCAZPQ" name="Instance" value="1"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_xkPR_5j-EeqsmLiGoCAZPQ" name="HasSemantics">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkPSAJj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_MX_UcJXiEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkPSAZj-EeqsmLiGoCAZPQ" name="semanticId" ordered="false" lowerBound="1" eType="_xkOq9Jj-EeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_xkPSA5j-EeqsmLiGoCAZPQ" name="base_HasSemantics_Class" ordered="false">
+            <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xkPSBJj-EeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+              <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_xkPSBZj-EeqsmLiGoCAZPQ" key="originalName" value="base_Class"/>
+            </eAnnotations>
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+      </contents>
+      <contents xmi:type="ecore:EPackage" xmi:id="_--7FgJjqEeqsmLiGoCAZPQ" name="AASUMLProfile" nsURI="http:///schemas/AASUMLProfile/_--53YJjqEeqsmLiGoCAZPQ/1" nsPrefix="AASUMLProfile">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--8TpJjqEeqsmLiGoCAZPQ" source="PapyrusVersion">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_--8TpZjqEeqsmLiGoCAZPQ" key="Version" value="0.0.2"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_--8TppjqEeqsmLiGoCAZPQ" key="Comment" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_--8Tp5jqEeqsmLiGoCAZPQ" key="Copyright" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_--8TqJjqEeqsmLiGoCAZPQ" key="Date" value="2020-05-18"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_--8TqZjqEeqsmLiGoCAZPQ" key="Author" value=""/>
+        </eAnnotations>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_--7FgZjqEeqsmLiGoCAZPQ" name="AssetAdministrationShell" eSuperTypes="_--7FjJjqEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FgpjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_QVx84I7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7Fg5jqEeqsmLiGoCAZPQ" name="derivedFrom" ordered="false" eType="_--7FgZjqEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7FhZjqEeqsmLiGoCAZPQ" name="security" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/emf/2002/Ecore#//EObject"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7Fh5jqEeqsmLiGoCAZPQ" name="asset" ordered="false" lowerBound="1" eType="_--7FsJjqEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7FiZjqEeqsmLiGoCAZPQ" name="submodel" ordered="false" upperBound="-1" eType="_--7FuZjqEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_--7FjJjqEeqsmLiGoCAZPQ" name="Identifiable" abstract="true" eSuperTypes="_--7Fk5jqEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FjZjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_wbHM8JWsEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7FjpjqEeqsmLiGoCAZPQ" name="administration" ordered="false" eType="_--7Fn5jqEeqsmLiGoCAZPQ" containment="true"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7FkJjqEeqsmLiGoCAZPQ" name="identification" ordered="false" lowerBound="1" eType="_--7FpZjqEeqsmLiGoCAZPQ" containment="true"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_--7Fk5jqEeqsmLiGoCAZPQ" name="Refereable" abstract="true">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FlJjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_oOXGoJTrEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_--7FlZjqEeqsmLiGoCAZPQ" name="idShort" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_--7Fl5jqEeqsmLiGoCAZPQ" name="category" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_--7FmZjqEeqsmLiGoCAZPQ" name="description" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7Fm5jqEeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7FnZjqEeqsmLiGoCAZPQ" name="parent" ordered="false" eType="_--7Fk5jqEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_--7Fn5jqEeqsmLiGoCAZPQ" name="AdministrativeInformation">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FoJjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_tz5pQJTfEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_--7FoZjqEeqsmLiGoCAZPQ" name="version" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_--7Fo5jqEeqsmLiGoCAZPQ" name="revision" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_--7FpZjqEeqsmLiGoCAZPQ" name="Identifier">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FppjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_TEZYYJTtEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_--7Fp5jqEeqsmLiGoCAZPQ" name="idType" ordered="false" lowerBound="1" eType="_--7Fq5jqEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_--7FqZjqEeqsmLiGoCAZPQ" name="id" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_--7Fq5jqEeqsmLiGoCAZPQ" name="IdentifierType">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FrJjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_z5tzIJTuEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_--7FrZjqEeqsmLiGoCAZPQ" name="Custom"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_--7FrpjqEeqsmLiGoCAZPQ" name="IRDI" value="1"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_--7Fr5jqEeqsmLiGoCAZPQ" name="IRI" value="2"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_--7FsJjqEeqsmLiGoCAZPQ" name="Asset" eSuperTypes="_--7FjJjqEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FsZjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_RLrqII7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_--7FspjqEeqsmLiGoCAZPQ" name="kind" ordered="false" lowerBound="1" eType="_--7FtZjqEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_--7FtZjqEeqsmLiGoCAZPQ" name="AssetKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FtpjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_3rh0MI7VEeqdQ5EKLtW6Vg"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_--7Ft5jqEeqsmLiGoCAZPQ" name="Type"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_--7FuJjqEeqsmLiGoCAZPQ" name="Instance" value="1"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_--7FuZjqEeqsmLiGoCAZPQ" name="Submodel" eSuperTypes="_--7FjJjqEeqsmLiGoCAZPQ _--7FvZjqEeqsmLiGoCAZPQ">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FupjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_S6sJoI7VEeqdQ5EKLtW6Vg"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_--7FvZjqEeqsmLiGoCAZPQ" name="HasKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FvpjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_Q2O20JXhEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_--7Fv5jqEeqsmLiGoCAZPQ" name="kind" ordered="false" eType="_--7FxZjqEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7FwZjqEeqsmLiGoCAZPQ" name="base_HasKind_Class" ordered="false">
+            <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FwpjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+              <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_--7Fw5jqEeqsmLiGoCAZPQ" key="originalName" value="base_Class"/>
+            </eAnnotations>
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_--7FxZjqEeqsmLiGoCAZPQ" name="ModelingKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FxpjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_KptDIJXhEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_--7Fx5jqEeqsmLiGoCAZPQ" name="Template"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_--7FyJjqEeqsmLiGoCAZPQ" name="Instance" value="1"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_--7FyZjqEeqsmLiGoCAZPQ" name="HasSemantics">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_--7FypjqEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_MX_UcJXiEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_--7Fy5jqEeqsmLiGoCAZPQ" name="semanticId" ordered="false" lowerBound="1" eType="_--7Fk5jqEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+      </contents>
+      <contents xmi:type="ecore:EPackage" xmi:id="_7w6Z0JWnEeqsmLiGoCAZPQ" name="AASUMLProfile" nsURI="http:///schemas/AASUMLProfile/_7w06QJWnEeqsmLiGoCAZPQ/0" nsPrefix="AASUMLProfile">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w82E5WnEeqsmLiGoCAZPQ" source="PapyrusVersion">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7w82FJWnEeqsmLiGoCAZPQ" key="Version" value="0.0.1"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7w82FZWnEeqsmLiGoCAZPQ" key="Comment" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7w82FpWnEeqsmLiGoCAZPQ" key="Copyright" value=""/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7w82F5WnEeqsmLiGoCAZPQ" key="Date" value="2020-05-14"/>
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7w82GJWnEeqsmLiGoCAZPQ" key="Author" value=""/>
+        </eAnnotations>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_7w6Z0ZWnEeqsmLiGoCAZPQ" name="AssetAdministrationShell">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w6Z0pWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_QVx84I7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z05WnEeqsmLiGoCAZPQ" name="id" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z1ZWnEeqsmLiGoCAZPQ" name="idshort" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_7w6Z15WnEeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_7w6Z2ZWnEeqsmLiGoCAZPQ" name="Asset">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w6Z2pWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_RLrqII7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z25WnEeqsmLiGoCAZPQ" name="id" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z3ZWnEeqsmLiGoCAZPQ" name="idShort" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_7w6Z35WnEeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z4ZWnEeqsmLiGoCAZPQ" name="kind" ordered="false" lowerBound="1" eType="_7w6Z45WnEeqsmLiGoCAZPQ"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_7w6Z45WnEeqsmLiGoCAZPQ" name="AssetKind">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w6Z5JWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_3rh0MI7VEeqdQ5EKLtW6Vg"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_7w6Z5ZWnEeqsmLiGoCAZPQ" name="Type"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_7w6Z5pWnEeqsmLiGoCAZPQ" name="Instance" value="1"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_7w6Z55WnEeqsmLiGoCAZPQ" name="Submodel">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w6Z6JWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_S6sJoI7VEeqdQ5EKLtW6Vg"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z6ZWnEeqsmLiGoCAZPQ" name="id" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z65WnEeqsmLiGoCAZPQ" name="idShort" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z7ZWnEeqsmLiGoCAZPQ" name="semanticId" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_7w6Z75WnEeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_7w6Z8ZWnEeqsmLiGoCAZPQ" name="SubmodelElement" abstract="true">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w6Z8pWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML"/>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_7w6Z85WnEeqsmLiGoCAZPQ" name="AdministrativeInformation">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w6Z9JWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_tz5pQJTfEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z9ZWnEeqsmLiGoCAZPQ" name="version" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z95WnEeqsmLiGoCAZPQ" name="revision" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_7w6Z-ZWnEeqsmLiGoCAZPQ" name="Refereable" abstract="true">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w6Z-pWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_oOXGoJTrEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z-5WnEeqsmLiGoCAZPQ" name="idShort" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z_ZWnEeqsmLiGoCAZPQ" name="category" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6Z_5WnEeqsmLiGoCAZPQ" name="description" ordered="false">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+          <eStructuralFeatures xmi:type="ecore:EReference" xmi:id="_7w6aAZWnEeqsmLiGoCAZPQ" name="base_Class" ordered="false">
+            <eType xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EClass" xmi:id="_7w6aA5WnEeqsmLiGoCAZPQ" name="Identifier">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w6aBJWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_TEZYYJTtEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6aBZWnEeqsmLiGoCAZPQ" name="idType" ordered="false" lowerBound="1" eType="_7w6aCZWnEeqsmLiGoCAZPQ"/>
+          <eStructuralFeatures xmi:type="ecore:EAttribute" xmi:id="_7w6aB5WnEeqsmLiGoCAZPQ" name="id" ordered="false" lowerBound="1">
+            <eType xmi:type="ecore:EDataType" href="http://www.eclipse.org/uml2/5.0.0/Types#//String"/>
+          </eStructuralFeatures>
+        </eClassifiers>
+        <eClassifiers xmi:type="ecore:EEnum" xmi:id="_7w6aCZWnEeqsmLiGoCAZPQ" name="IdentifierType">
+          <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7w6aCpWnEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML" references="_z5tzIJTuEeqsmLiGoCAZPQ"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_7w6aC5WnEeqsmLiGoCAZPQ" name="Custom"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_7w6aDJWnEeqsmLiGoCAZPQ" name="IRDI" value="1"/>
+          <eLiterals xmi:type="ecore:EEnumLiteral" xmi:id="_7w6aDZWnEeqsmLiGoCAZPQ" name="IRI" value="2"/>
+        </eClassifiers>
+      </contents>
+    </eAnnotations>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_obeN8J9REeqHH8LtZOjghw" annotatedElement="_z5tzIJTuEeqsmLiGoCAZPQ">
+      <body>IRDI: International Registration Data Identifier
+IRI: Internationalized Resource Identifier</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_6vYi0J9UEeqHH8LtZOjghw" annotatedElement="_QVx84I7VEeqdQ5EKLtW6Vg">
+      <body>A project in Basyx</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_BI97EJ9VEeqHH8LtZOjghw" annotatedElement="_S6sJoI7VEeqdQ5EKLtW6Vg">
+      <body>A model in Basyx</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_SEhAwJ9WEeqHH8LtZOjghw" annotatedElement="_QVx84I7VEeqdQ5EKLtW6Vg _S6sJoI7VEeqdQ5EKLtW6Vg">
+      <body>Basyx:
+
+identifierType: IRDI (urn:...), URI, custom 
+identifier (for submodel or operation) ->generated automatically
+resource name
+idshort: string -> generated automatically
+category:string
+description:string
+parent: not used
+administration: not used
+
+
+</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_13il8J9bEeqHH8LtZOjghw" annotatedElement="_RLrqII7VEeqdQ5EKLtW6Vg">
+      <body>There is no asset in Basyx</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_Gj5OgJ9cEeqHH8LtZOjghw" annotatedElement="_QVx84I7VEeqdQ5EKLtW6Vg">
+      <body>Security is not implemented, but is an ongoing project</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_Zv37MJ9cEeqHH8LtZOjghw" annotatedElement="_MX_UcJXiEeqsmLiGoCAZPQ">
+      <body>semanticid is present in Basyx but not used
+semanticid should be typed by an URI or a refereable</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_yG6LkP5TEeqmZsqm6Otq5g" annotatedElement="_wS63sP5OEeqmZsqm6Otq5g">
+      <body>A File is a data element that represents an address to a file. The value is an URI that can represent an absolute or relative path.</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_QKBPkCmmEeurJuF7PIGu4w" annotatedElement="_QVx84I7VEeqdQ5EKLtW6Vg">
+      <body>0 &lt; port  &lt;= 65535
+</body>
+    </ownedComment>
+    <elementImport xmi:type="uml:ElementImport" xmi:id="_3MsksJQbEeqsmLiGoCAZPQ" alias="Class">
+      <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+    </elementImport>
+    <elementImport xmi:type="uml:ElementImport" xmi:id="_qhSvkKsFEeqnq7OKRN2fbg" alias="Dependency">
+      <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Dependency"/>
+    </elementImport>
+    <elementImport xmi:type="uml:ElementImport" xmi:id="_eutPgP5NEeqmZsqm6Otq5g" alias="Operation">
+      <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+    </elementImport>
+    <elementImport xmi:type="uml:ElementImport" xmi:id="_hfZOcP5NEeqmZsqm6Otq5g" alias="Property">
+      <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+    </elementImport>
+    <elementImport xmi:type="uml:ElementImport" xmi:id="_OYD3wP56EeqmZsqm6Otq5g" alias="Element">
+      <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Element"/>
+    </elementImport>
+    <elementImport xmi:type="uml:ElementImport" xmi:id="_XpjxMCJ9EeuWq4zY-5mLEA" alias="DataType">
+      <importedElement xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#DataType"/>
+    </elementImport>
+    <packageImport xmi:type="uml:PackageImport" xmi:id="_NexFwI7QEeqdQ5EKLtW6Vg">
+      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+    </packageImport>
+    <packageImport xmi:type="uml:PackageImport" xmi:id="_Ne0JEI7QEeqdQ5EKLtW6Vg">
+      <importedPackage xmi:type="uml:Model" href="pathmap://UML_METAMODELS/UML.metamodel.uml#_0"/>
+    </packageImport>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_QVx84I7VEeqdQ5EKLtW6Vg" name="AssetAdministrationShell">
+      <generalization xmi:type="uml:Generalization" xmi:id="_nFiqQJXkEeqsmLiGoCAZPQ" general="_wbHM8JWsEeqsmLiGoCAZPQ"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_cO0GYJXmEeqsmLiGoCAZPQ" name="derivedFrom" type="_QVx84I7VEeqdQ5EKLtW6Vg">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_gSqWUJXmEeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_oJM0wJXmEeqsmLiGoCAZPQ" name="security" type="_710PcJj-EeqsmLiGoCAZPQ">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_p6U0IJXmEeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_vf_cIJXmEeqsmLiGoCAZPQ" name="asset" type="_RLrqII7VEeqdQ5EKLtW6Vg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_WYb0Yp9TEeqHH8LtZOjghw" name="submodel" type="_S6sJoI7VEeqdQ5EKLtW6Vg" association="_WYbNUJ9TEeqHH8LtZOjghw">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cB7zgJ9TEeqHH8LtZOjghw"/>
+        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cCB6IJ9TEeqHH8LtZOjghw" value="*"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_uGjzoCKGEeuEAdH_l0B0vw" name="url">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_v1bJMCKGEeuEAdH_l0B0vw"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_xdodICKGEeuEAdH_l0B0vw" name="port" visibility="public">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_0phxYCKGEeuEAdH_l0B0vw"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_RLrqII7VEeqdQ5EKLtW6Vg" name="Asset">
+      <generalization xmi:type="uml:Generalization" xmi:id="_6NnHUJXkEeqsmLiGoCAZPQ" general="_wbHM8JWsEeqsmLiGoCAZPQ"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_HIJ_MJRFEeqsmLiGoCAZPQ" name="kind" visibility="public" type="_3rh0MI7VEeqdQ5EKLtW6Vg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_lZCp4CKGEeuEAdH_l0B0vw" name="endpoint" visibility="public" type="_0icBACJ9EeuWq4zY-5mLEA">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_nIhDcCKGEeuEAdH_l0B0vw"/>
+        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_xX1UwCmlEeurJuF7PIGu4w" value="*"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_S6sJoI7VEeqdQ5EKLtW6Vg" name="Submodel">
+      <generalization xmi:type="uml:Generalization" xmi:id="_xDedkJXlEeqsmLiGoCAZPQ" general="_wbHM8JWsEeqsmLiGoCAZPQ"/>
+      <generalization xmi:type="uml:Generalization" xmi:id="_FDnyIJXmEeqsmLiGoCAZPQ" general="_Q2O20JXhEeqsmLiGoCAZPQ"/>
+      <generalization xmi:type="uml:Generalization" xmi:id="_uqbzQJj-EeqsmLiGoCAZPQ" general="_MX_UcJXiEeqsmLiGoCAZPQ"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_bo7K8Kr2EeqCiIVjjvsakg" name="submodelelement" type="_Yf1TEKr2EeqCiIVjjvsakg" aggregation="composite" association="_bo3gkKr2EeqCiIVjjvsakg">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_iMLckKr2EeqCiIVjjvsakg"/>
+        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_iMQ8IKr2EeqCiIVjjvsakg" value="*"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_3rh0MI7VEeqdQ5EKLtW6Vg" name="AssetKind">
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_44174I7VEeqdQ5EKLtW6Vg" name="Type"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_50fEwI7VEeqdQ5EKLtW6Vg" name="Instance"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:DataType" xmi:id="_tz5pQJTfEeqsmLiGoCAZPQ" name="AdministrativeInformation">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_wbjA8JTfEeqsmLiGoCAZPQ" name="version">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_xfULEJTfEeqsmLiGoCAZPQ" name="revision">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_oOXGoJTrEeqsmLiGoCAZPQ" name="Refereable" isAbstract="true">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_sgCXMJTrEeqsmLiGoCAZPQ" name="idShort" isReadOnly="true" isDerived="true">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_jFqw8AcaEeuxHNwngYGLaw" source="http://www.eclipse.org/emf/2002/GenModel">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_8hww0AcaEeuxHNwngYGLaw" key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;if (getBase_Class() != null) {&#xA;&#x9;&#x9;&#x9;String name = getBase_Class().getName();&#xA;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+        </eAnnotations>
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_w0i5UJTrEeqsmLiGoCAZPQ" name="category">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_1wiSMJTrEeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_2chOcJTrEeqsmLiGoCAZPQ" name="description">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_7ZBksJTrEeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_9XBicJTrEeqsmLiGoCAZPQ" name="base_Class" association="_9W_GMJTrEeqsmLiGoCAZPQ">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_9XBicZTrEeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_Ch_KkJXgEeqsmLiGoCAZPQ" name="parent" visibility="public" type="_oOXGoJTrEeqsmLiGoCAZPQ">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_HtHLoJXgEeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_9W_GMJTrEeqsmLiGoCAZPQ" name="E_Refereable_Class15" memberEnd="_9XA7YJTrEeqsmLiGoCAZPQ _9XBicJTrEeqsmLiGoCAZPQ">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_9XA7YJTrEeqsmLiGoCAZPQ" name="extension_Refereable" type="_oOXGoJTrEeqsmLiGoCAZPQ" aggregation="composite" association="_9W_GMJTrEeqsmLiGoCAZPQ"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:DataType" xmi:id="_TEZYYJTtEeqsmLiGoCAZPQ" name="Identifier">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_ACoswJTvEeqsmLiGoCAZPQ" name="idType" visibility="public" type="_z5tzIJTuEeqsmLiGoCAZPQ"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_2CpZEJTvEeqsmLiGoCAZPQ" name="id" visibility="public">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_z5tzIJTuEeqsmLiGoCAZPQ" name="IdentifierType">
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_18sXgJTuEeqsmLiGoCAZPQ" name="Custom"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_214CQJTuEeqsmLiGoCAZPQ" name="IRDI"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_6BN84JTuEeqsmLiGoCAZPQ" name="IRI"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_wbHM8JWsEeqsmLiGoCAZPQ" name="Identifiable" isAbstract="true">
+      <generalization xmi:type="uml:Generalization" xmi:id="_ilupUJXfEeqsmLiGoCAZPQ" general="_oOXGoJTrEeqsmLiGoCAZPQ"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_BMsoEJXfEeqsmLiGoCAZPQ" name="administration" type="_tz5pQJTfEeqsmLiGoCAZPQ">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_fqfAMJXfEeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_Xmrh0JXfEeqsmLiGoCAZPQ" name="identification" visibility="public" type="_TEZYYJTtEeqsmLiGoCAZPQ"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_KptDIJXhEeqsmLiGoCAZPQ" name="ModelingKind">
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MicGYJXhEeqsmLiGoCAZPQ" name="Template"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Nw2aQJXhEeqsmLiGoCAZPQ" name="Instance"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_Q2O20JXhEeqsmLiGoCAZPQ" name="HasKind" isAbstract="true">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_UMEKMJXhEeqsmLiGoCAZPQ" name="kind" visibility="public" type="_KptDIJXhEeqsmLiGoCAZPQ">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_YHCK8JXhEeqsmLiGoCAZPQ"/>
+        <defaultValue xmi:type="uml:LiteralString" xmi:id="_dlmscJXhEeqsmLiGoCAZPQ" name="inst"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_kmnk8Zj-EeqsmLiGoCAZPQ" name="base_Class" association="_kmm94Jj-EeqsmLiGoCAZPQ">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kmnk8pj-EeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_MX_UcJXiEeqsmLiGoCAZPQ" name="HasSemantics" isAbstract="true">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_ZV4uQJXiEeqsmLiGoCAZPQ" name="semanticId" visibility="public" type="_3B8H4P5jEeqmZsqm6Otq5g"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_j7PssZj-EeqsmLiGoCAZPQ" name="base_Class" association="_j7PFoJj-EeqsmLiGoCAZPQ">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_j7Psspj-EeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_j7PFoJj-EeqsmLiGoCAZPQ" name="E_HasSemantics_Class1" memberEnd="_j7PssJj-EeqsmLiGoCAZPQ _j7PssZj-EeqsmLiGoCAZPQ">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_j7PssJj-EeqsmLiGoCAZPQ" name="extension_HasSemantics" type="_MX_UcJXiEeqsmLiGoCAZPQ" aggregation="composite" association="_j7PFoJj-EeqsmLiGoCAZPQ"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_kmm94Jj-EeqsmLiGoCAZPQ" name="E_HasKind_Class1" memberEnd="_kmnk8Jj-EeqsmLiGoCAZPQ _kmnk8Zj-EeqsmLiGoCAZPQ">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_kmnk8Jj-EeqsmLiGoCAZPQ" name="extension_HasKind" type="_Q2O20JXhEeqsmLiGoCAZPQ" aggregation="composite" association="_kmm94Jj-EeqsmLiGoCAZPQ"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_710PcJj-EeqsmLiGoCAZPQ" name="Security">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="__o5fgZj-EeqsmLiGoCAZPQ" name="base_Class" association="__o44cJj-EeqsmLiGoCAZPQ">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="__o5fgpj-EeqsmLiGoCAZPQ"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_F6UaQJj_EeqsmLiGoCAZPQ" name="accessControlPolicyPoints" type="_BD7doJkAEeqsmLiGoCAZPQ"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_IKpeIJj_EeqsmLiGoCAZPQ" name="certificate" type="_OlQfMJkBEeqsmLiGoCAZPQ">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_a7GTIJkEEeqsmLiGoCAZPQ"/>
+        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_a7QrMJkEEeqsmLiGoCAZPQ" value="*"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_LYfTIJj_EeqsmLiGoCAZPQ" name="requiredCertificateExtension" type="_3B8H4P5jEeqmZsqm6Otq5g">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_cAiRMJkEEeqsmLiGoCAZPQ"/>
+        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_cAo-4JkEEeqsmLiGoCAZPQ" value="*"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="__o44cJj-EeqsmLiGoCAZPQ" name="E_Security_Class23" memberEnd="__o5fgJj-EeqsmLiGoCAZPQ __o5fgZj-EeqsmLiGoCAZPQ">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="__o5fgJj-EeqsmLiGoCAZPQ" name="extension_Security" type="_710PcJj-EeqsmLiGoCAZPQ" aggregation="composite" association="__o44cJj-EeqsmLiGoCAZPQ"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:DataType" xmi:id="_BD7doJkAEeqsmLiGoCAZPQ" name="AccessControlPolicyPoints">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_PfqucJkAEeqsmLiGoCAZPQ" name="localAccessControl" type="__nsTsJkAEeqsmLiGoCAZPQ"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_TVwPMJkAEeqsmLiGoCAZPQ" name="externalAccessControl">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_YUNtQJkAEeqsmLiGoCAZPQ" name="externalInformationPoints">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_cLPCIJkAEeqsmLiGoCAZPQ" name="internalInformationPoint" visibility="public" type="_S6sJoI7VEeqdQ5EKLtW6Vg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_g2wWEJkAEeqsmLiGoCAZPQ" name="externalPolicyDecisionPoints">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_uEj0IJkAEeqsmLiGoCAZPQ" name="externalPolicyEnforcementPoint" visibility="public">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/EcorePrimitiveTypes.library.uml#EBoolean"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:DataType" xmi:id="__nsTsJkAEeqsmLiGoCAZPQ" name="AccessControl"/>
+    <packagedElement xmi:type="uml:DataType" xmi:id="_OlQfMJkBEeqsmLiGoCAZPQ" name="Certificate"/>
+    <packagedElement xmi:type="uml:Association" xmi:id="_JwQy8J9TEeqHH8LtZOjghw" memberEnd="_JwVrcJ9TEeqHH8LtZOjghw _JwW5kJ9TEeqHH8LtZOjghw">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_JwUdUJ9TEeqHH8LtZOjghw" source="org.eclipse.papyrus">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_JwVEYJ9TEeqHH8LtZOjghw" key="nature" value="UML_Nature"/>
+      </eAnnotations>
+      <ownedEnd xmi:type="uml:Property" xmi:id="_JwVrcJ9TEeqHH8LtZOjghw" name="asset" type="_RLrqII7VEeqdQ5EKLtW6Vg" association="_JwQy8J9TEeqHH8LtZOjghw"/>
+      <ownedEnd xmi:type="uml:Property" xmi:id="_JwW5kJ9TEeqHH8LtZOjghw" name="assetadministrationshell" type="_QVx84I7VEeqdQ5EKLtW6Vg" association="_JwQy8J9TEeqHH8LtZOjghw"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Association" xmi:id="_WYbNUJ9TEeqHH8LtZOjghw" memberEnd="_WYb0Yp9TEeqHH8LtZOjghw _WYcbcJ9TEeqHH8LtZOjghw">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_WYb0YJ9TEeqHH8LtZOjghw" source="org.eclipse.papyrus">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_WYb0YZ9TEeqHH8LtZOjghw" key="nature" value="UML_Nature"/>
+      </eAnnotations>
+      <ownedEnd xmi:type="uml:Property" xmi:id="_WYcbcJ9TEeqHH8LtZOjghw" name="assetadministrationshell" type="_QVx84I7VEeqdQ5EKLtW6Vg" association="_WYbNUJ9TEeqHH8LtZOjghw"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_JDEqIKr2EeqCiIVjjvsakg" name="EntityType">
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Li1RIKr2EeqCiIVjjvsakg" name="CoManagedEntity"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_P4AhoKr2EeqCiIVjjvsakg" name="SelfManagedEntity"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_Yf1TEKr2EeqCiIVjjvsakg" name="SubmodelElement" isAbstract="true">
+      <generalization xmi:type="uml:Generalization" xmi:id="_tLQxkKr8EeqCiIVjjvsakg" general="_oOXGoJTrEeqsmLiGoCAZPQ"/>
+      <generalization xmi:type="uml:Generalization" xmi:id="_1qkgMKr8EeqCiIVjjvsakg" general="_MX_UcJXiEeqsmLiGoCAZPQ"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Association" xmi:id="_bo3gkKr2EeqCiIVjjvsakg" memberEnd="_bo7K8Kr2EeqCiIVjjvsakg _bo8ZEKr2EeqCiIVjjvsakg">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bo580Kr2EeqCiIVjjvsakg" source="org.eclipse.papyrus">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_bo6j4Kr2EeqCiIVjjvsakg" key="nature" value="UML_Nature"/>
+      </eAnnotations>
+      <ownedEnd xmi:type="uml:Property" xmi:id="_bo8ZEKr2EeqCiIVjjvsakg" name="submodel" type="_S6sJoI7VEeqdQ5EKLtW6Vg" association="_bo3gkKr2EeqCiIVjjvsakg"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_o9tBcKr7EeqCiIVjjvsakg" name="Entity">
+      <generalization xmi:type="uml:Generalization" xmi:id="_tz0b0Kr7EeqCiIVjjvsakg" general="_Yf1TEKr2EeqCiIVjjvsakg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_-TEtcKsEEeqnq7OKRN2fbg" name="entityType" type="_JDEqIKr2EeqCiIVjjvsakg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_G9kYYKsFEeqnq7OKRN2fbg" name="asset" type="_RLrqII7VEeqdQ5EKLtW6Vg"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_uF0mQKsFEeqnq7OKRN2fbg" name="RelationshipElement">
+      <generalization xmi:type="uml:Generalization" xmi:id="_JbXloKsHEeqnq7OKRN2fbg" general="_Yf1TEKr2EeqCiIVjjvsakg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_AZ6MMKsHEeqnq7OKRN2fbg" name="base_Dependency" association="_AZ4XAKsHEeqnq7OKRN2fbg">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Dependency"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_AZ6MMasHEeqnq7OKRN2fbg"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_AZ4XAKsHEeqnq7OKRN2fbg" name="E_RelationshipElement_Dependency43" memberEnd="_AZ5lIKsHEeqnq7OKRN2fbg _AZ6MMKsHEeqnq7OKRN2fbg">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_AZ5lIKsHEeqnq7OKRN2fbg" name="extension_RelationshipElement" type="_uF0mQKsFEeqnq7OKRN2fbg" aggregation="composite" association="_AZ4XAKsHEeqnq7OKRN2fbg"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="__LZ6sP2lEeqo7uz4QZ84uw" name="Operation">
+      <generalization xmi:type="uml:Generalization" xmi:id="_EJkd0P2mEeqo7uz4QZ84uw" general="_Yf1TEKr2EeqCiIVjjvsakg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_nu714P55EeqmZsqm6Otq5g" name="base_Operation" association="_fUzmMP5NEeqmZsqm6Otq5g">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Operation"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_oCiKgCWNEeurscN3XpP0Dw" name="idShort" visibility="package" isReadOnly="true" isDerived="true" redefinedProperty="_sgCXMJTrEeqsmLiGoCAZPQ">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_xBY74CWNEeurscN3XpP0Dw" source="http://www.eclipse.org/emf/2002/GenModel">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_4EAqECWNEeurscN3XpP0Dw" key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;if (getBase_Operation() != null) {&#xA;&#x9;&#x9;&#x9;String name = getBase_Operation().getName();&#xA;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+        </eAnnotations>
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_VKU2kP5KEeqmZsqm6Otq5g" name="SubmodelElementCollection">
+      <generalization xmi:type="uml:Generalization" xmi:id="_9PjqEP5KEeqmZsqm6Otq5g" general="_Yf1TEKr2EeqCiIVjjvsakg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_Z1LcIP5KEeqmZsqm6Otq5g" name="value" visibility="public" type="_Yf1TEKr2EeqCiIVjjvsakg" isOrdered="true">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_km__8P5KEeqmZsqm6Otq5g"/>
+        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_knGtoP5KEeqmZsqm6Otq5g" value="*"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_l4_S0f53EeqmZsqm6Otq5g" name="base_Property" association="_l49doP53EeqmZsqm6Otq5g">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_l4_S0v53EeqmZsqm6Otq5g"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_ZORsQCJ9EeuWq4zY-5mLEA" name="base_DataType" association="_ZOOo8CJ9EeuWq4zY-5mLEA">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#DataType"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZORsQSJ9EeuWq4zY-5mLEA"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_9InB0CWMEeurscN3XpP0Dw" name="idShort" visibility="public" isReadOnly="true" isDerived="true" redefinedProperty="_sgCXMJTrEeqsmLiGoCAZPQ">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_ZLW64CWNEeurscN3XpP0Dw" source="http://www.eclipse.org/emf/2002/GenModel">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_aLeUECWNEeurscN3XpP0Dw" key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;String name = &quot;&quot;;&#xA;&#x9;&#x9;if (getBase_DataType() != null) {&#xA;&#x9;&#x9;&#x9;name = getBase_DataType().getName();&#xA;&#xA;&#x9;&#x9;} else if (getBase_Class() != null) {&#xA;&#x9;&#x9;&#x9;name = getBase_Class().getName();&#xA;&#xA;&#x9;&#x9;} else if (getBase_Property() != null) {&#xA;&#x9;&#x9;&#x9;name = getBase_Property().getName();&#xA;&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return name;"/>
+        </eAnnotations>
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_-1YYYP5KEeqmZsqm6Otq5g" name="DataElement" isAbstract="true">
+      <generalization xmi:type="uml:Generalization" xmi:id="_ASw8YP5LEeqmZsqm6Otq5g" general="_Yf1TEKr2EeqCiIVjjvsakg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_yCNrEP5OEeqmZsqm6Otq5g" name="base_Property" association="_jaoMEP5NEeqmZsqm6Otq5g">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_zSqEECUCEeurscN3XpP0Dw" name="idShort" visibility="public" isReadOnly="true" isDerived="true" redefinedProperty="_sgCXMJTrEeqsmLiGoCAZPQ">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_A1zgACUDEeurscN3XpP0Dw" source="http://www.eclipse.org/emf/2002/GenModel">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CLv_QCUDEeurscN3XpP0Dw" key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;if (getBase_Property() != null) {&#xA;&#x9;&#x9;&#x9;String name = getBase_Property().getName();&#xA;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+        </eAnnotations>
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_UZQJgP5LEeqmZsqm6Otq5g" name="Property">
+      <generalization xmi:type="uml:Generalization" xmi:id="_eKEjUP5LEeqmZsqm6Otq5g" general="_-1YYYP5KEeqmZsqm6Otq5g"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_fUzmMP5NEeqmZsqm6Otq5g" name="E_Operation_Operation68" memberEnd="_fU2CcP5NEeqmZsqm6Otq5g _nu714P55EeqmZsqm6Otq5g">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_fU2CcP5NEeqmZsqm6Otq5g" name="extension_Operation" type="__LZ6sP2lEeqo7uz4QZ84uw" aggregation="composite" association="_fUzmMP5NEeqmZsqm6Otq5g"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_jaoMEP5NEeqmZsqm6Otq5g" name="E_DataElement_Property52" memberEnd="_jaozIP5NEeqmZsqm6Otq5g _yCNrEP5OEeqmZsqm6Otq5g">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_jaozIP5NEeqmZsqm6Otq5g" name="extension_DataElement" type="_-1YYYP5KEeqmZsqm6Otq5g" aggregation="composite" association="_jaoMEP5NEeqmZsqm6Otq5g"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_wS63sP5OEeqmZsqm6Otq5g" name="File">
+      <generalization xmi:type="uml:Generalization" xmi:id="_0-JQsP5OEeqmZsqm6Otq5g" general="_-1YYYP5KEeqmZsqm6Otq5g"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_25vasP5OEeqmZsqm6Otq5g" name="path" visibility="public">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_I0dUAP50EeqmZsqm6Otq5g"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_Hc4c4P5PEeqmZsqm6Otq5g" name="mimeType" type="_CEUK0P5REeqmZsqm6Otq5g"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_CEUK0P5REeqmZsqm6Otq5g" name="MimeType">
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_DSnxAP5REeqmZsqm6Otq5g" name="application/json"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_GNY5AP5REeqmZsqm6Otq5g" name="application/xls"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_G8nWgP5REeqmZsqm6Otq5g" name="image/jpg"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_RFyl8P5REeqmZsqm6Otq5g" name="application/pdf"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_c4hNIP5REeqmZsqm6Otq5g" name="application/zip"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_j08zwP5REeqmZsqm6Otq5g" name="image/bmp"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_k6xzYP5REeqmZsqm6Otq5g" name="other"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_3B8H4P5jEeqmZsqm6Otq5g" name="Reference">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_GxAkoP5rEeqmZsqm6Otq5g" name="key" type="_Sg9BwP5kEeqmZsqm6Otq5g" aggregation="composite" association="_Gw9hUP5rEeqmZsqm6Otq5g">
+        <upperValue xmi:type="uml:LiteralUnlimitedNatural" xmi:id="_LvfQ0P5rEeqmZsqm6Otq5g" value="*"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_7KW7gf5zEeqmZsqm6Otq5g" name="base_Class" association="_7KWUcP5zEeqmZsqm6Otq5g">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Class"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_7KW7gv5zEeqmZsqm6Otq5g"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_Sg9BwP5kEeqmZsqm6Otq5g" name="Key">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_SB9RQP5nEeqmZsqm6Otq5g" name="type" visibility="public" type="_JVGO0P5nEeqmZsqm6Otq5g">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_rT_9QP5nEeqmZsqm6Otq5g"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_Z7xGIP5nEeqmZsqm6Otq5g" name="local" visibility="public">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Boolean"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_-OgYEP5qEeqmZsqm6Otq5g"/>
+        <defaultValue xmi:type="uml:LiteralBoolean" xmi:id="_1s6R0P5nEeqmZsqm6Otq5g" name="true" value="true"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_6dLi4P5nEeqmZsqm6Otq5g" name="value">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="__NK_wP5qEeqmZsqm6Otq5g"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_3Qs4cP5qEeqmZsqm6Otq5g" name="idType" type="_-7--kP5pEeqmZsqm6Otq5g">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="__68EsP5qEeqmZsqm6Otq5g"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_uPBEQP5kEeqmZsqm6Otq5g" name="ReferableElements">
+      <generalization xmi:type="uml:Generalization" xmi:id="_EcpSIP5nEeqmZsqm6Otq5g" general="_72xogP5mEeqmZsqm6Otq5g"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_wblpgP5kEeqmZsqm6Otq5g" name="AccessPermissionRule"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_x36dkP5kEeqmZsqm6Otq5g" name="AnnotatedRelationshipElement"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_y8xz4P5kEeqmZsqm6Otq5g" name="BasicEvent"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_z5ZNIP5kEeqmZsqm6Otq5g" name="Blob"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_05W1UP5kEeqmZsqm6Otq5g" name="Capability"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_1y5FYP5kEeqmZsqm6Otq5g" name="ConceptDictionary"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_2pyRIP5kEeqmZsqm6Otq5g" name="DataElement"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_36S2wP5kEeqmZsqm6Otq5g" name="File"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_tttcEP5mEeqmZsqm6Otq5g" name="Entity"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_uolv8P5mEeqmZsqm6Otq5g" name="Event"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_v1j5YP5mEeqmZsqm6Otq5g" name="MultiLanguageProperty"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_wyD94P5mEeqmZsqm6Otq5g" name="Operation"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_zLQC0P5mEeqmZsqm6Otq5g" name="Property"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_0Hr14P5mEeqmZsqm6Otq5g" name="Range"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_1JxlAP5mEeqmZsqm6Otq5g" name="ReferenceElement"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_2HGv8P5mEeqmZsqm6Otq5g" name="RelationshipElement"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_3OkHQP5mEeqmZsqm6Otq5g" name="SubmodelElement"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_4iGywP5mEeqmZsqm6Otq5g" name="SubmodelElementCollection"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_5rbLQP5mEeqmZsqm6Otq5g" name="View"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_72xogP5mEeqmZsqm6Otq5g" name="IdentifiableElement">
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_9hgE8P5mEeqmZsqm6Otq5g" name="Asset"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_-YFHoP5mEeqmZsqm6Otq5g" name="AssetAdministrationShell"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_BluvYP5nEeqmZsqm6Otq5g" name="ConceptDescription"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_DGmsQP5nEeqmZsqm6Otq5g" name="Submodel"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_JVGO0P5nEeqmZsqm6Otq5g" name="KeyElements">
+      <generalization xmi:type="uml:Generalization" xmi:id="_OJApwP5nEeqmZsqm6Otq5g" general="_uPBEQP5kEeqmZsqm6Otq5g"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_LHUaYP5nEeqmZsqm6Otq5g" name="GlobalReference"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MJC9IP5nEeqmZsqm6Otq5g" name="FragmentReference"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_-7--kP5pEeqmZsqm6Otq5g" name="KeyType">
+      <generalization xmi:type="uml:Generalization" xmi:id="_k3RqEP5qEeqmZsqm6Otq5g" general="_RGtpoP5qEeqmZsqm6Otq5g"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_RGtpoP5qEeqmZsqm6Otq5g" name="LocalKeyType">
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_iGdIQP5qEeqmZsqm6Otq5g" name="IdShort"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_jBplMP5qEeqmZsqm6Otq5g" name="FragmentId"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Association" xmi:id="_Gw9hUP5rEeqmZsqm6Otq5g" memberEnd="_GxAkoP5rEeqmZsqm6Otq5g _GxCZ0P5rEeqmZsqm6Otq5g">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_Gw-IYP5rEeqmZsqm6Otq5g" source="org.eclipse.papyrus">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_Gw-vcP5rEeqmZsqm6Otq5g" key="nature" value="UML_Nature"/>
+      </eAnnotations>
+      <ownedEnd xmi:type="uml:Property" xmi:id="_GxCZ0P5rEeqmZsqm6Otq5g" name="reference" type="_3B8H4P5jEeqmZsqm6Otq5g" association="_Gw9hUP5rEeqmZsqm6Otq5g"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_sPLH4P5uEeqmZsqm6Otq5g" name="ReferenceElement">
+      <generalization xmi:type="uml:Generalization" xmi:id="_b-ofUP5zEeqmZsqm6Otq5g" general="_-1YYYP5KEeqmZsqm6Otq5g"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_zHRO0P5zEeqmZsqm6Otq5g" name="value" type="_3B8H4P5jEeqmZsqm6Otq5g">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_C__bAP50EeqmZsqm6Otq5g"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_7KWUcP5zEeqmZsqm6Otq5g" name="E_Reference_Class65" memberEnd="_7KW7gP5zEeqmZsqm6Otq5g _7KW7gf5zEeqmZsqm6Otq5g">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_7KW7gP5zEeqmZsqm6Otq5g" name="extension_Reference" type="_3B8H4P5jEeqmZsqm6Otq5g" aggregation="composite" association="_7KWUcP5zEeqmZsqm6Otq5g"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_T9sSQP50EeqmZsqm6Otq5g" name="Event" isAbstract="true">
+      <generalization xmi:type="uml:Generalization" xmi:id="_QB9fsP54EeqmZsqm6Otq5g" general="_Yf1TEKr2EeqCiIVjjvsakg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_kG8bgP55EeqmZsqm6Otq5g" name="base_Property" association="_kG70cP55EeqmZsqm6Otq5g">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_kG8bgf55EeqmZsqm6Otq5g"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_IwwUMCWOEeurscN3XpP0Dw" name="idShort" visibility="public" isReadOnly="true" isDerived="true" redefinedProperty="_sgCXMJTrEeqsmLiGoCAZPQ">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_bvQlkCWOEeurscN3XpP0Dw" source="http://www.eclipse.org/emf/2002/GenModel">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_dPLgMCWOEeurscN3XpP0Dw" key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;if (getBase_Property() != null) {&#xA;&#x9;&#x9;&#x9;String name = getBase_Property().getName();&#xA;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;}&#xA;&#x9;&#x9;return null;"/>
+        </eAnnotations>
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_l49doP53EeqmZsqm6Otq5g" name="E_SubmodelElementCollection_Property67" memberEnd="_l4_S0P53EeqmZsqm6Otq5g _l4_S0f53EeqmZsqm6Otq5g">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_l4_S0P53EeqmZsqm6Otq5g" name="extension_SubmodelElementCollection" type="_VKU2kP5KEeqmZsqm6Otq5g" aggregation="composite" association="_l49doP53EeqmZsqm6Otq5g"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_kG70cP55EeqmZsqm6Otq5g" name="E_Event_Property68" memberEnd="_kG70cf55EeqmZsqm6Otq5g _kG8bgP55EeqmZsqm6Otq5g">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_kG70cf55EeqmZsqm6Otq5g" name="extension_Event" type="_T9sSQP50EeqmZsqm6Otq5g" aggregation="composite" association="_kG70cP55EeqmZsqm6Otq5g"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_pgIGsP55EeqmZsqm6Otq5g" name="BasicEvent">
+      <generalization xmi:type="uml:Generalization" xmi:id="_ElvCEP56EeqmZsqm6Otq5g" general="_T9sSQP50EeqmZsqm6Otq5g"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_relXcP55EeqmZsqm6Otq5g" name="observed">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Element"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_kkeloP81Eeq1EMHDrQJzfQ" name="Range">
+      <generalization xmi:type="uml:Generalization" xmi:id="__Db7QP82Eeq1EMHDrQJzfQ" general="_-1YYYP5KEeqmZsqm6Otq5g"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_lgZbUP81Eeq1EMHDrQJzfQ" name="min">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ra_KcP81Eeq1EMHDrQJzfQ"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_sKAMkP81Eeq1EMHDrQJzfQ" name="max">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#Integer"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_uh6fIP81Eeq1EMHDrQJzfQ"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Stereotype" xmi:id="_ICZIYP85Eeq1EMHDrQJzfQ" name="Capability">
+      <generalization xmi:type="uml:Generalization" xmi:id="_JtrlgP85Eeq1EMHDrQJzfQ" general="_Yf1TEKr2EeqCiIVjjvsakg"/>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="__PX-IP85Eeq1EMHDrQJzfQ" name="base_Property" association="__PUTwP85Eeq1EMHDrQJzfQ">
+        <type xmi:type="uml:Class" href="pathmap://UML_METAMODELS/UML.metamodel.uml#Property"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="__PX-If85Eeq1EMHDrQJzfQ"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_UKbdACWgEeuuFNBhc8O6ew" name="idShort" visibility="public" isReadOnly="true" isDerived="true" redefinedProperty="_sgCXMJTrEeqsmLiGoCAZPQ">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_cWNLoCWgEeuuFNBhc8O6ew" source="http://www.eclipse.org/emf/2002/GenModel">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_ewI3cCWgEeuuFNBhc8O6ew" key="get" value="// get the name of the Referable Element&#xA;&#x9;&#x9;&#x9;&#x9;if (getBase_Property() != null) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;String name = getBase_Property().getName();&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;// remove space&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;if (name != null) {&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;String idShort = name.toLowerCase().replace(&quot; &quot;, &quot;&quot;);&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&#x9;return idShort;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;}&#xA;&#x9;&#x9;&#x9;&#x9;return null;"/>
+        </eAnnotations>
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="__PUTwP85Eeq1EMHDrQJzfQ" name="E_Capability_Property71" memberEnd="__PXXEP85Eeq1EMHDrQJzfQ __PX-IP85Eeq1EMHDrQJzfQ">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="__PXXEP85Eeq1EMHDrQJzfQ" name="extension_Capability" type="_ICZIYP85Eeq1EMHDrQJzfQ" aggregation="composite" association="__PUTwP85Eeq1EMHDrQJzfQ"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Extension" xmi:id="_ZOOo8CJ9EeuWq4zY-5mLEA" name="E_SubmodelElementCollection_DataType73" memberEnd="_ZORFMCJ9EeuWq4zY-5mLEA _ZORsQCJ9EeuWq4zY-5mLEA">
+      <ownedEnd xmi:type="uml:ExtensionEnd" xmi:id="_ZORFMCJ9EeuWq4zY-5mLEA" name="extension_SubmodelElementCollection" type="_VKU2kP5KEeqmZsqm6Otq5g" aggregation="composite" association="_ZOOo8CJ9EeuWq4zY-5mLEA"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:DataType" xmi:id="_0icBACJ9EeuWq4zY-5mLEA" name="Endpoint">
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_INNo4CKGEeuEAdH_l0B0vw" name="address">
+        <type xmi:type="uml:PrimitiveType" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#String"/>
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_ZEERQCKGEeuEAdH_l0B0vw"/>
+      </ownedAttribute>
+      <ownedAttribute xmi:type="uml:Property" xmi:id="_Pa0fECKGEeuEAdH_l0B0vw" name="protocol" type="_YAgcICJ-EeuWq4zY-5mLEA">
+        <lowerValue xmi:type="uml:LiteralInteger" xmi:id="_WjLo4CKGEeuEAdH_l0B0vw"/>
+      </ownedAttribute>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Enumeration" xmi:id="_YAgcICJ-EeuWq4zY-5mLEA" name="ProtocolKind">
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Ii2wcCKAEeuEAdH_l0B0vw" name="HTTP"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Ja_SUCKAEeuEAdH_l0B0vw" name="MQTT"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_KPG24CKAEeuEAdH_l0B0vw" name="OPCUA"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_MugRgCKAEeuEAdH_l0B0vw" name="CoAP"/>
+      <ownedLiteral xmi:type="uml:EnumerationLiteral" xmi:id="_Pu45UCKAEeuEAdH_l0B0vw" name="OTHER"/>
+    </packagedElement>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_AzgJAJTvEeqsmLiGoCAZPQ">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_AzilQJTvEeqsmLiGoCAZPQ" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#_Kv8EIKFXEeS_KNX0nfvIVQ"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://PAPYRUS_ACTIONLANGUAGE_PROFILE/ActionLanguage-Profile.profile.uml#ActionLanguage"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_eC1Y8KfSEeqYZ7PZ7OG9lg">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_eC2AAKfSEeqYZ7PZ7OG9lg" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="pathmap://UML_PROFILES/Ecore.profile.uml#_z1OFcHjqEdy8S4Cr8Rc_NA"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Ecore.profile.uml#_0"/>
+    </profileApplication>
+  </uml:Profile>
+  <Ecore:EPackage xmi:id="_R2FSwKfTEeqYZ7PZ7OG9lg" base_Package="_NbERgI7QEeqdQ5EKLtW6Vg" packageName="aas" nsPrefix="AAS" nsURI="http://www.eclipse.org/papyrus/AAS" basePackage="org.eclipse.papyrus" prefix="AAS"/>
+</xmi:XMI>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/style.css b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/style.css
new file mode 100644
index 0000000..4dbbf5a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/resources/style.css
@@ -0,0 +1,29 @@
+* > Compartment[kind="operations"] {
+    visible:false;
+}
+Property{
+	elementIcon: false;
+	maskLabel: name type multiplicity;
+	fontHeight: 12;
+}
+Stereotype{
+	fontHeight: 14;
+	canonical: true;
+}
+Class{
+	canonical: true;
+}
+*{
+	fontHeight: 14;
+	elementIcon: false;
+}
+
+
+EnumerationLiteral {
+	fontHeight: 12;
+	elementIcon: false;
+	
+}
+Comment{
+	fontHeight: 12;
+}
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AASFactory.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AASFactory.java
new file mode 100644
index 0000000..d972d2f
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AASFactory.java
@@ -0,0 +1,269 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EFactory;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Factory</b> for the model.
+ * It provides a create method for each non-abstract class of the model.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage
+ * @generated
+ */
+public interface AASFactory extends EFactory {
+	/**
+	 * The singleton instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	AASFactory eINSTANCE = org.eclipse.papyrus.aas.impl.AASFactoryImpl.init();
+
+	/**
+	 * Returns a new object of class '<em>Asset Administration Shell</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Asset Administration Shell</em>'.
+	 * @generated
+	 */
+	AssetAdministrationShell createAssetAdministrationShell();
+
+	/**
+	 * Returns a new object of class '<em>Administrative Information</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Administrative Information</em>'.
+	 * @generated
+	 */
+	AdministrativeInformation createAdministrativeInformation();
+
+	/**
+	 * Returns a new object of class '<em>Identifier</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Identifier</em>'.
+	 * @generated
+	 */
+	Identifier createIdentifier();
+
+	/**
+	 * Returns a new object of class '<em>Security</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Security</em>'.
+	 * @generated
+	 */
+	Security createSecurity();
+
+	/**
+	 * Returns a new object of class '<em>Access Control Policy Points</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Access Control Policy Points</em>'.
+	 * @generated
+	 */
+	AccessControlPolicyPoints createAccessControlPolicyPoints();
+
+	/**
+	 * Returns a new object of class '<em>Access Control</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Access Control</em>'.
+	 * @generated
+	 */
+	AccessControl createAccessControl();
+
+	/**
+	 * Returns a new object of class '<em>Submodel</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Submodel</em>'.
+	 * @generated
+	 */
+	Submodel createSubmodel();
+
+	/**
+	 * Returns a new object of class '<em>Reference</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Reference</em>'.
+	 * @generated
+	 */
+	Reference createReference();
+
+	/**
+	 * Returns a new object of class '<em>Key</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Key</em>'.
+	 * @generated
+	 */
+	Key createKey();
+
+	/**
+	 * Returns a new object of class '<em>Certificate</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Certificate</em>'.
+	 * @generated
+	 */
+	Certificate createCertificate();
+
+	/**
+	 * Returns a new object of class '<em>Asset</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Asset</em>'.
+	 * @generated
+	 */
+	Asset createAsset();
+
+	/**
+	 * Returns a new object of class '<em>Endpoint</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Endpoint</em>'.
+	 * @generated
+	 */
+	Endpoint createEndpoint();
+
+	/**
+	 * Returns a new object of class '<em>File</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>File</em>'.
+	 * @generated
+	 */
+	File createFile();
+
+	/**
+	 * Returns a new object of class '<em>Entity</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Entity</em>'.
+	 * @generated
+	 */
+	Entity createEntity();
+
+	/**
+	 * Returns a new object of class '<em>Relationship Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Relationship Element</em>'.
+	 * @generated
+	 */
+	RelationshipElement createRelationshipElement();
+
+	/**
+	 * Returns a new object of class '<em>Operation</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Operation</em>'.
+	 * @generated
+	 */
+	Operation createOperation();
+
+	/**
+	 * Returns a new object of class '<em>Submodel Element Collection</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Submodel Element Collection</em>'.
+	 * @generated
+	 */
+	SubmodelElementCollection createSubmodelElementCollection();
+
+	/**
+	 * 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
+	 */
+	Property createProperty();
+
+	/**
+	 * Returns a new object of class '<em>Reference Element</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Reference Element</em>'.
+	 * @generated
+	 */
+	ReferenceElement createReferenceElement();
+
+	/**
+	 * Returns a new object of class '<em>Basic Event</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Basic Event</em>'.
+	 * @generated
+	 */
+	BasicEvent createBasicEvent();
+
+	/**
+	 * Returns a new object of class '<em>Range</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Range</em>'.
+	 * @generated
+	 */
+	Range createRange();
+
+	/**
+	 * Returns a new object of class '<em>Capability</em>'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return a new object of class '<em>Capability</em>'.
+	 * @generated
+	 */
+	Capability createCapability();
+
+	/**
+	 * Returns the package supported by this factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the package supported by this factory.
+	 * @generated
+	 */
+	AASPackage getAASPackage();
+
+} // AASFactory
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AASPackage.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AASPackage.java
new file mode 100644
index 0000000..fb5011b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AASPackage.java
@@ -0,0 +1,5065 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Package</b> for the model.
+ * It contains accessors for the meta objects to represent
+ * <ul>
+ * <li>each class,</li>
+ * <li>each feature of each class,</li>
+ * <li>each operation of each class,</li>
+ * <li>each enum,</li>
+ * <li>and each data type</li>
+ * </ul>
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASFactory
+ * @model kind="package"
+ *        annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='AAS'"
+ * @generated
+ */
+public interface AASPackage extends EPackage {
+	/**
+	 * The package name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNAME = "aas";
+
+	/**
+	 * The package namespace URI.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNS_URI = "http://www.eclipse.org/papyrus/AAS";
+
+	/**
+	 * The package namespace name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	String eNS_PREFIX = "AAS";
+
+	/**
+	 * The singleton instance of the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	AASPackage eINSTANCE = org.eclipse.papyrus.aas.impl.AASPackageImpl.init();
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.RefereableImpl <em>Refereable</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.RefereableImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getRefereable()
+	 * @generated
+	 */
+	int REFEREABLE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFEREABLE__ID_SHORT = 0;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFEREABLE__CATEGORY = 1;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFEREABLE__DESCRIPTION = 2;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFEREABLE__BASE_CLASS = 3;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFEREABLE__PARENT = 4;
+
+	/**
+	 * The number of structural features of the '<em>Refereable</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFEREABLE_FEATURE_COUNT = 5;
+
+	/**
+	 * The number of operations of the '<em>Refereable</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFEREABLE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.IdentifiableImpl <em>Identifiable</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.IdentifiableImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getIdentifiable()
+	 * @generated
+	 */
+	int IDENTIFIABLE = 1;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIABLE__ID_SHORT = REFEREABLE__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIABLE__CATEGORY = REFEREABLE__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIABLE__DESCRIPTION = REFEREABLE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIABLE__BASE_CLASS = REFEREABLE__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIABLE__PARENT = REFEREABLE__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIABLE__ADMINISTRATION = REFEREABLE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIABLE__IDENTIFICATION = REFEREABLE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Identifiable</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIABLE_FEATURE_COUNT = REFEREABLE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Identifiable</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIABLE_OPERATION_COUNT = REFEREABLE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl <em>Asset Administration Shell</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAssetAdministrationShell()
+	 * @generated
+	 */
+	int ASSET_ADMINISTRATION_SHELL = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__ID_SHORT = IDENTIFIABLE__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__CATEGORY = IDENTIFIABLE__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__DESCRIPTION = IDENTIFIABLE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__BASE_CLASS = IDENTIFIABLE__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__PARENT = IDENTIFIABLE__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__ADMINISTRATION = IDENTIFIABLE__ADMINISTRATION;
+
+	/**
+	 * The feature id for the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__IDENTIFICATION = IDENTIFIABLE__IDENTIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Derived From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__DERIVED_FROM = IDENTIFIABLE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Security</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__SECURITY = IDENTIFIABLE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Asset</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__ASSET = IDENTIFIABLE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Submodel</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__SUBMODEL = IDENTIFIABLE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Url</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__URL = IDENTIFIABLE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>Port</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL__PORT = IDENTIFIABLE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of structural features of the '<em>Asset Administration Shell</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_FEATURE_COUNT = IDENTIFIABLE_FEATURE_COUNT + 6;
+
+	/**
+	 * The number of operations of the '<em>Asset Administration Shell</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_ADMINISTRATION_SHELL_OPERATION_COUNT = IDENTIFIABLE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.AdministrativeInformationImpl <em>Administrative Information</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.AdministrativeInformationImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAdministrativeInformation()
+	 * @generated
+	 */
+	int ADMINISTRATIVE_INFORMATION = 3;
+
+	/**
+	 * The feature id for the '<em><b>Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ADMINISTRATIVE_INFORMATION__VERSION = 0;
+
+	/**
+	 * The feature id for the '<em><b>Revision</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ADMINISTRATIVE_INFORMATION__REVISION = 1;
+
+	/**
+	 * The number of structural features of the '<em>Administrative Information</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ADMINISTRATIVE_INFORMATION_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Administrative Information</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ADMINISTRATIVE_INFORMATION_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.IdentifierImpl <em>Identifier</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.IdentifierImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getIdentifier()
+	 * @generated
+	 */
+	int IDENTIFIER = 4;
+
+	/**
+	 * The feature id for the '<em><b>Id Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIER__ID_TYPE = 0;
+
+	/**
+	 * The feature id for the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIER__ID = 1;
+
+	/**
+	 * The number of structural features of the '<em>Identifier</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIER_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Identifier</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int IDENTIFIER_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.SecurityImpl <em>Security</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.SecurityImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getSecurity()
+	 * @generated
+	 */
+	int SECURITY = 5;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SECURITY__BASE_CLASS = 0;
+
+	/**
+	 * The feature id for the '<em><b>Access Control Policy Points</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SECURITY__ACCESS_CONTROL_POLICY_POINTS = 1;
+
+	/**
+	 * The feature id for the '<em><b>Certificate</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SECURITY__CERTIFICATE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Required Certificate Extension</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SECURITY__REQUIRED_CERTIFICATE_EXTENSION = 3;
+
+	/**
+	 * The number of structural features of the '<em>Security</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SECURITY_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>Security</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SECURITY_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl <em>Access Control Policy Points</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAccessControlPolicyPoints()
+	 * @generated
+	 */
+	int ACCESS_CONTROL_POLICY_POINTS = 6;
+
+	/**
+	 * The feature id for the '<em><b>Local Access Control</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL = 0;
+
+	/**
+	 * The feature id for the '<em><b>External Access Control</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_ACCESS_CONTROL = 1;
+
+	/**
+	 * The feature id for the '<em><b>External Information Points</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_INFORMATION_POINTS = 2;
+
+	/**
+	 * The feature id for the '<em><b>Internal Information Point</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_POLICY_POINTS__INTERNAL_INFORMATION_POINT = 3;
+
+	/**
+	 * The feature id for the '<em><b>External Policy Decision Points</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_DECISION_POINTS = 4;
+
+	/**
+	 * The feature id for the '<em><b>External Policy Enforcement Point</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_ENFORCEMENT_POINT = 5;
+
+	/**
+	 * The number of structural features of the '<em>Access Control Policy Points</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_POLICY_POINTS_FEATURE_COUNT = 6;
+
+	/**
+	 * The number of operations of the '<em>Access Control Policy Points</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_POLICY_POINTS_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.AccessControlImpl <em>Access Control</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.AccessControlImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAccessControl()
+	 * @generated
+	 */
+	int ACCESS_CONTROL = 7;
+
+	/**
+	 * The number of structural features of the '<em>Access Control</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Access Control</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ACCESS_CONTROL_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.SubmodelImpl <em>Submodel</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.SubmodelImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getSubmodel()
+	 * @generated
+	 */
+	int SUBMODEL = 8;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__ID_SHORT = IDENTIFIABLE__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__CATEGORY = IDENTIFIABLE__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__DESCRIPTION = IDENTIFIABLE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__BASE_CLASS = IDENTIFIABLE__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__PARENT = IDENTIFIABLE__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__ADMINISTRATION = IDENTIFIABLE__ADMINISTRATION;
+
+	/**
+	 * The feature id for the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__IDENTIFICATION = IDENTIFIABLE__IDENTIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__KIND = IDENTIFIABLE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Kind Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__BASE_HAS_KIND_CLASS = IDENTIFIABLE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__SEMANTIC_ID = IDENTIFIABLE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__BASE_HAS_SEMANTICS_CLASS = IDENTIFIABLE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Submodelelement</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL__SUBMODELELEMENT = IDENTIFIABLE_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>Submodel</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_FEATURE_COUNT = IDENTIFIABLE_FEATURE_COUNT + 5;
+
+	/**
+	 * The number of operations of the '<em>Submodel</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_OPERATION_COUNT = IDENTIFIABLE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.HasKindImpl <em>Has Kind</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.HasKindImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getHasKind()
+	 * @generated
+	 */
+	int HAS_KIND = 9;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int HAS_KIND__KIND = 0;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Kind Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int HAS_KIND__BASE_HAS_KIND_CLASS = 1;
+
+	/**
+	 * The number of structural features of the '<em>Has Kind</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int HAS_KIND_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Has Kind</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int HAS_KIND_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.HasSemanticsImpl <em>Has Semantics</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.HasSemanticsImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getHasSemantics()
+	 * @generated
+	 */
+	int HAS_SEMANTICS = 10;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int HAS_SEMANTICS__SEMANTIC_ID = 0;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS = 1;
+
+	/**
+	 * The number of structural features of the '<em>Has Semantics</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int HAS_SEMANTICS_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Has Semantics</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int HAS_SEMANTICS_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.ReferenceImpl <em>Reference</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.ReferenceImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getReference()
+	 * @generated
+	 */
+	int REFERENCE = 11;
+
+	/**
+	 * The feature id for the '<em><b>Key</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE__KEY = 0;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE__BASE_CLASS = 1;
+
+	/**
+	 * The number of structural features of the '<em>Reference</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Reference</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.KeyImpl <em>Key</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.KeyImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getKey()
+	 * @generated
+	 */
+	int KEY = 12;
+
+	/**
+	 * The feature id for the '<em><b>Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int KEY__TYPE = 0;
+
+	/**
+	 * The feature id for the '<em><b>Local</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int KEY__LOCAL = 1;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int KEY__VALUE = 2;
+
+	/**
+	 * The feature id for the '<em><b>Id Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int KEY__ID_TYPE = 3;
+
+	/**
+	 * The number of structural features of the '<em>Key</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int KEY_FEATURE_COUNT = 4;
+
+	/**
+	 * The number of operations of the '<em>Key</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int KEY_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.SubmodelElementImpl <em>Submodel Element</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.SubmodelElementImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getSubmodelElement()
+	 * @generated
+	 */
+	int SUBMODEL_ELEMENT = 13;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT__ID_SHORT = REFEREABLE__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT__CATEGORY = REFEREABLE__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT__DESCRIPTION = REFEREABLE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT__BASE_CLASS = REFEREABLE__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT__PARENT = REFEREABLE__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT__SEMANTIC_ID = REFEREABLE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS = REFEREABLE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Submodel Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_FEATURE_COUNT = REFEREABLE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Submodel Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_OPERATION_COUNT = REFEREABLE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.CertificateImpl <em>Certificate</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.CertificateImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getCertificate()
+	 * @generated
+	 */
+	int CERTIFICATE = 14;
+
+	/**
+	 * The number of structural features of the '<em>Certificate</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CERTIFICATE_FEATURE_COUNT = 0;
+
+	/**
+	 * The number of operations of the '<em>Certificate</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CERTIFICATE_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.AssetImpl <em>Asset</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.AssetImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAsset()
+	 * @generated
+	 */
+	int ASSET = 15;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET__ID_SHORT = IDENTIFIABLE__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET__CATEGORY = IDENTIFIABLE__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET__DESCRIPTION = IDENTIFIABLE__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET__BASE_CLASS = IDENTIFIABLE__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET__PARENT = IDENTIFIABLE__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET__ADMINISTRATION = IDENTIFIABLE__ADMINISTRATION;
+
+	/**
+	 * The feature id for the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET__IDENTIFICATION = IDENTIFIABLE__IDENTIFICATION;
+
+	/**
+	 * The feature id for the '<em><b>Kind</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET__KIND = IDENTIFIABLE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Endpoint</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET__ENDPOINT = IDENTIFIABLE_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Asset</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_FEATURE_COUNT = IDENTIFIABLE_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Asset</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ASSET_OPERATION_COUNT = IDENTIFIABLE_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.EndpointImpl <em>Endpoint</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.EndpointImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getEndpoint()
+	 * @generated
+	 */
+	int ENDPOINT = 16;
+
+	/**
+	 * The feature id for the '<em><b>Address</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENDPOINT__ADDRESS = 0;
+
+	/**
+	 * The feature id for the '<em><b>Protocol</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENDPOINT__PROTOCOL = 1;
+
+	/**
+	 * The number of structural features of the '<em>Endpoint</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENDPOINT_FEATURE_COUNT = 2;
+
+	/**
+	 * The number of operations of the '<em>Endpoint</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENDPOINT_OPERATION_COUNT = 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.DataElementImpl <em>Data Element</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.DataElementImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getDataElement()
+	 * @generated
+	 */
+	int DATA_ELEMENT = 18;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT__ID_SHORT = SUBMODEL_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT__CATEGORY = SUBMODEL_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT__DESCRIPTION = SUBMODEL_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT__BASE_CLASS = SUBMODEL_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT__PARENT = SUBMODEL_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT__SEMANTIC_ID = SUBMODEL_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT__BASE_HAS_SEMANTICS_CLASS = SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT__BASE_PROPERTY = SUBMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Data Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT_FEATURE_COUNT = SUBMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Data Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int DATA_ELEMENT_OPERATION_COUNT = SUBMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.FileImpl <em>File</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.FileImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getFile()
+	 * @generated
+	 */
+	int FILE = 17;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__ID_SHORT = DATA_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__CATEGORY = DATA_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__DESCRIPTION = DATA_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__BASE_CLASS = DATA_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__PARENT = DATA_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__SEMANTIC_ID = DATA_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__BASE_HAS_SEMANTICS_CLASS = DATA_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__BASE_PROPERTY = DATA_ELEMENT__BASE_PROPERTY;
+
+	/**
+	 * The feature id for the '<em><b>Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__PATH = DATA_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Mime Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE__MIME_TYPE = DATA_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>File</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_FEATURE_COUNT = DATA_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>File</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int FILE_OPERATION_COUNT = DATA_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.EntityImpl <em>Entity</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.EntityImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getEntity()
+	 * @generated
+	 */
+	int ENTITY = 19;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY__ID_SHORT = SUBMODEL_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY__CATEGORY = SUBMODEL_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY__DESCRIPTION = SUBMODEL_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY__BASE_CLASS = SUBMODEL_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY__PARENT = SUBMODEL_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY__SEMANTIC_ID = SUBMODEL_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY__BASE_HAS_SEMANTICS_CLASS = SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Entity Type</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY__ENTITY_TYPE = SUBMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Asset</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY__ASSET = SUBMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Entity</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY_FEATURE_COUNT = SUBMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Entity</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int ENTITY_OPERATION_COUNT = SUBMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.RelationshipElementImpl <em>Relationship Element</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.RelationshipElementImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getRelationshipElement()
+	 * @generated
+	 */
+	int RELATIONSHIP_ELEMENT = 20;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT__ID_SHORT = SUBMODEL_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT__CATEGORY = SUBMODEL_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT__DESCRIPTION = SUBMODEL_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT__BASE_CLASS = SUBMODEL_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT__PARENT = SUBMODEL_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT__SEMANTIC_ID = SUBMODEL_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT__BASE_HAS_SEMANTICS_CLASS = SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Dependency</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT__BASE_DEPENDENCY = SUBMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Relationship Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_FEATURE_COUNT = SUBMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Relationship Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RELATIONSHIP_ELEMENT_OPERATION_COUNT = SUBMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.OperationImpl <em>Operation</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.OperationImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getOperation()
+	 * @generated
+	 */
+	int OPERATION = 21;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION__ID_SHORT = SUBMODEL_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION__CATEGORY = SUBMODEL_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION__DESCRIPTION = SUBMODEL_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION__BASE_CLASS = SUBMODEL_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION__PARENT = SUBMODEL_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION__SEMANTIC_ID = SUBMODEL_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION__BASE_HAS_SEMANTICS_CLASS = SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Operation</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION__BASE_OPERATION = SUBMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Operation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_FEATURE_COUNT = SUBMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Operation</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int OPERATION_OPERATION_COUNT = SUBMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.SubmodelElementCollectionImpl <em>Submodel Element Collection</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.SubmodelElementCollectionImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getSubmodelElementCollection()
+	 * @generated
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION = 22;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__ID_SHORT = SUBMODEL_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__CATEGORY = SUBMODEL_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__DESCRIPTION = SUBMODEL_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__BASE_CLASS = SUBMODEL_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__PARENT = SUBMODEL_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__SEMANTIC_ID = SUBMODEL_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__BASE_HAS_SEMANTICS_CLASS = SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__VALUE = SUBMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__BASE_PROPERTY = SUBMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Base Data Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION__BASE_DATA_TYPE = SUBMODEL_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of structural features of the '<em>Submodel Element Collection</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_FEATURE_COUNT = SUBMODEL_ELEMENT_FEATURE_COUNT + 3;
+
+	/**
+	 * The number of operations of the '<em>Submodel Element Collection</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int SUBMODEL_ELEMENT_COLLECTION_OPERATION_COUNT = SUBMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.PropertyImpl <em>Property</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.PropertyImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getProperty()
+	 * @generated
+	 */
+	int PROPERTY = 23;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY__ID_SHORT = DATA_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY__CATEGORY = DATA_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY__DESCRIPTION = DATA_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY__BASE_CLASS = DATA_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY__PARENT = DATA_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY__SEMANTIC_ID = DATA_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY__BASE_HAS_SEMANTICS_CLASS = DATA_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY__BASE_PROPERTY = DATA_ELEMENT__BASE_PROPERTY;
+
+	/**
+	 * The number of structural features of the '<em>Property</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_FEATURE_COUNT = DATA_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of operations of the '<em>Property</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY_OPERATION_COUNT = DATA_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.ReferenceElementImpl <em>Reference Element</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.ReferenceElementImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getReferenceElement()
+	 * @generated
+	 */
+	int REFERENCE_ELEMENT = 24;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT__ID_SHORT = DATA_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT__CATEGORY = DATA_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT__DESCRIPTION = DATA_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT__BASE_CLASS = DATA_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT__PARENT = DATA_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT__SEMANTIC_ID = DATA_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT__BASE_HAS_SEMANTICS_CLASS = DATA_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT__BASE_PROPERTY = DATA_ELEMENT__BASE_PROPERTY;
+
+	/**
+	 * The feature id for the '<em><b>Value</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT__VALUE = DATA_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Reference Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_FEATURE_COUNT = DATA_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Reference Element</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE_ELEMENT_OPERATION_COUNT = DATA_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.EventImpl <em>Event</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.EventImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getEvent()
+	 * @generated
+	 */
+	int EVENT = 25;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT__ID_SHORT = SUBMODEL_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT__CATEGORY = SUBMODEL_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT__DESCRIPTION = SUBMODEL_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT__BASE_CLASS = SUBMODEL_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT__PARENT = SUBMODEL_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT__SEMANTIC_ID = SUBMODEL_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT__BASE_HAS_SEMANTICS_CLASS = SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT__BASE_PROPERTY = SUBMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_FEATURE_COUNT = SUBMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int EVENT_OPERATION_COUNT = SUBMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.BasicEventImpl <em>Basic Event</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.BasicEventImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getBasicEvent()
+	 * @generated
+	 */
+	int BASIC_EVENT = 26;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT__ID_SHORT = EVENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT__CATEGORY = EVENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT__DESCRIPTION = EVENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT__BASE_CLASS = EVENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT__PARENT = EVENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT__SEMANTIC_ID = EVENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT__BASE_HAS_SEMANTICS_CLASS = EVENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT__BASE_PROPERTY = EVENT__BASE_PROPERTY;
+
+	/**
+	 * The feature id for the '<em><b>Observed</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT__OBSERVED = EVENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Basic Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT_FEATURE_COUNT = EVENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Basic Event</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int BASIC_EVENT_OPERATION_COUNT = EVENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.RangeImpl <em>Range</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.RangeImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getRange()
+	 * @generated
+	 */
+	int RANGE = 27;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__ID_SHORT = DATA_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__CATEGORY = DATA_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__DESCRIPTION = DATA_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__BASE_CLASS = DATA_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__PARENT = DATA_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__SEMANTIC_ID = DATA_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__BASE_HAS_SEMANTICS_CLASS = DATA_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__BASE_PROPERTY = DATA_ELEMENT__BASE_PROPERTY;
+
+	/**
+	 * The feature id for the '<em><b>Min</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__MIN = DATA_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Max</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE__MAX = DATA_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of structural features of the '<em>Range</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE_FEATURE_COUNT = DATA_ELEMENT_FEATURE_COUNT + 2;
+
+	/**
+	 * The number of operations of the '<em>Range</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int RANGE_OPERATION_COUNT = DATA_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.impl.CapabilityImpl <em>Capability</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.impl.CapabilityImpl
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getCapability()
+	 * @generated
+	 */
+	int CAPABILITY = 28;
+
+	/**
+	 * The feature id for the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY__ID_SHORT = SUBMODEL_ELEMENT__ID_SHORT;
+
+	/**
+	 * The feature id for the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY__CATEGORY = SUBMODEL_ELEMENT__CATEGORY;
+
+	/**
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY__DESCRIPTION = SUBMODEL_ELEMENT__DESCRIPTION;
+
+	/**
+	 * The feature id for the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY__BASE_CLASS = SUBMODEL_ELEMENT__BASE_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY__PARENT = SUBMODEL_ELEMENT__PARENT;
+
+	/**
+	 * The feature id for the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY__SEMANTIC_ID = SUBMODEL_ELEMENT__SEMANTIC_ID;
+
+	/**
+	 * The feature id for the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY__BASE_HAS_SEMANTICS_CLASS = SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+
+	/**
+	 * The feature id for the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY__BASE_PROPERTY = SUBMODEL_ELEMENT_FEATURE_COUNT + 0;
+
+	/**
+	 * The number of structural features of the '<em>Capability</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY_FEATURE_COUNT = SUBMODEL_ELEMENT_FEATURE_COUNT + 1;
+
+	/**
+	 * The number of operations of the '<em>Capability</em>' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 * @ordered
+	 */
+	int CAPABILITY_OPERATION_COUNT = SUBMODEL_ELEMENT_OPERATION_COUNT + 0;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.IdentifierType <em>Identifier Type</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.IdentifierType
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getIdentifierType()
+	 * @generated
+	 */
+	int IDENTIFIER_TYPE = 29;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.ModelingKind <em>Modeling Kind</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.ModelingKind
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getModelingKind()
+	 * @generated
+	 */
+	int MODELING_KIND = 30;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.KeyElements <em>Key Elements</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.KeyElements
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getKeyElements()
+	 * @generated
+	 */
+	int KEY_ELEMENTS = 31;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.ReferableElements <em>Referable Elements</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.ReferableElements
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getReferableElements()
+	 * @generated
+	 */
+	int REFERABLE_ELEMENTS = 32;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.IdentifiableElement <em>Identifiable Element</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.IdentifiableElement
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getIdentifiableElement()
+	 * @generated
+	 */
+	int IDENTIFIABLE_ELEMENT = 33;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.KeyType <em>Key Type</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.KeyType
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getKeyType()
+	 * @generated
+	 */
+	int KEY_TYPE = 34;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.LocalKeyType <em>Local Key Type</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.LocalKeyType
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getLocalKeyType()
+	 * @generated
+	 */
+	int LOCAL_KEY_TYPE = 35;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.AssetKind <em>Asset Kind</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.AssetKind
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAssetKind()
+	 * @generated
+	 */
+	int ASSET_KIND = 36;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.ProtocolKind <em>Protocol Kind</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.ProtocolKind
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getProtocolKind()
+	 * @generated
+	 */
+	int PROTOCOL_KIND = 37;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.MimeType <em>Mime Type</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.MimeType
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getMimeType()
+	 * @generated
+	 */
+	int MIME_TYPE = 38;
+
+	/**
+	 * The meta object id for the '{@link org.eclipse.papyrus.aas.EntityType <em>Entity Type</em>}' enum.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.papyrus.aas.EntityType
+	 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getEntityType()
+	 * @generated
+	 */
+	int ENTITY_TYPE = 39;
+
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.AssetAdministrationShell <em>Asset Administration Shell</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Asset Administration Shell</em>'.
+	 * @see org.eclipse.papyrus.aas.AssetAdministrationShell
+	 * @generated
+	 */
+	EClass getAssetAdministrationShell();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getDerivedFrom <em>Derived From</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Derived From</em>'.
+	 * @see org.eclipse.papyrus.aas.AssetAdministrationShell#getDerivedFrom()
+	 * @see #getAssetAdministrationShell()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShell_DerivedFrom();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getSecurity <em>Security</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Security</em>'.
+	 * @see org.eclipse.papyrus.aas.AssetAdministrationShell#getSecurity()
+	 * @see #getAssetAdministrationShell()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShell_Security();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getAsset <em>Asset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Asset</em>'.
+	 * @see org.eclipse.papyrus.aas.AssetAdministrationShell#getAsset()
+	 * @see #getAssetAdministrationShell()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShell_Asset();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getSubmodel <em>Submodel</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Submodel</em>'.
+	 * @see org.eclipse.papyrus.aas.AssetAdministrationShell#getSubmodel()
+	 * @see #getAssetAdministrationShell()
+	 * @generated
+	 */
+	EReference getAssetAdministrationShell_Submodel();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getUrl <em>Url</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Url</em>'.
+	 * @see org.eclipse.papyrus.aas.AssetAdministrationShell#getUrl()
+	 * @see #getAssetAdministrationShell()
+	 * @generated
+	 */
+	EAttribute getAssetAdministrationShell_Url();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getPort <em>Port</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Port</em>'.
+	 * @see org.eclipse.papyrus.aas.AssetAdministrationShell#getPort()
+	 * @see #getAssetAdministrationShell()
+	 * @generated
+	 */
+	EAttribute getAssetAdministrationShell_Port();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Identifiable <em>Identifiable</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Identifiable</em>'.
+	 * @see org.eclipse.papyrus.aas.Identifiable
+	 * @generated
+	 */
+	EClass getIdentifiable();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.aas.Identifiable#getAdministration <em>Administration</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference '<em>Administration</em>'.
+	 * @see org.eclipse.papyrus.aas.Identifiable#getAdministration()
+	 * @see #getIdentifiable()
+	 * @generated
+	 */
+	EReference getIdentifiable_Administration();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.aas.Identifiable#getIdentification <em>Identification</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference '<em>Identification</em>'.
+	 * @see org.eclipse.papyrus.aas.Identifiable#getIdentification()
+	 * @see #getIdentifiable()
+	 * @generated
+	 */
+	EReference getIdentifiable_Identification();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Refereable <em>Refereable</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Refereable</em>'.
+	 * @see org.eclipse.papyrus.aas.Refereable
+	 * @generated
+	 */
+	EClass getRefereable();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Refereable#getIdShort <em>Id Short</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Id Short</em>'.
+	 * @see org.eclipse.papyrus.aas.Refereable#getIdShort()
+	 * @see #getRefereable()
+	 * @generated
+	 */
+	EAttribute getRefereable_IdShort();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Refereable#getCategory <em>Category</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Category</em>'.
+	 * @see org.eclipse.papyrus.aas.Refereable#getCategory()
+	 * @see #getRefereable()
+	 * @generated
+	 */
+	EAttribute getRefereable_Category();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Refereable#getDescription <em>Description</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Description</em>'.
+	 * @see org.eclipse.papyrus.aas.Refereable#getDescription()
+	 * @see #getRefereable()
+	 * @generated
+	 */
+	EAttribute getRefereable_Description();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.Refereable#getBase_Class <em>Base Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Class</em>'.
+	 * @see org.eclipse.papyrus.aas.Refereable#getBase_Class()
+	 * @see #getRefereable()
+	 * @generated
+	 */
+	EReference getRefereable_Base_Class();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.Refereable#getParent <em>Parent</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Parent</em>'.
+	 * @see org.eclipse.papyrus.aas.Refereable#getParent()
+	 * @see #getRefereable()
+	 * @generated
+	 */
+	EReference getRefereable_Parent();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.AdministrativeInformation <em>Administrative Information</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Administrative Information</em>'.
+	 * @see org.eclipse.papyrus.aas.AdministrativeInformation
+	 * @generated
+	 */
+	EClass getAdministrativeInformation();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.AdministrativeInformation#getVersion <em>Version</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Version</em>'.
+	 * @see org.eclipse.papyrus.aas.AdministrativeInformation#getVersion()
+	 * @see #getAdministrativeInformation()
+	 * @generated
+	 */
+	EAttribute getAdministrativeInformation_Version();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.AdministrativeInformation#getRevision <em>Revision</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Revision</em>'.
+	 * @see org.eclipse.papyrus.aas.AdministrativeInformation#getRevision()
+	 * @see #getAdministrativeInformation()
+	 * @generated
+	 */
+	EAttribute getAdministrativeInformation_Revision();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Identifier <em>Identifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Identifier</em>'.
+	 * @see org.eclipse.papyrus.aas.Identifier
+	 * @generated
+	 */
+	EClass getIdentifier();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Identifier#getIdType <em>Id Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Id Type</em>'.
+	 * @see org.eclipse.papyrus.aas.Identifier#getIdType()
+	 * @see #getIdentifier()
+	 * @generated
+	 */
+	EAttribute getIdentifier_IdType();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Identifier#getId <em>Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Id</em>'.
+	 * @see org.eclipse.papyrus.aas.Identifier#getId()
+	 * @see #getIdentifier()
+	 * @generated
+	 */
+	EAttribute getIdentifier_Id();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Security <em>Security</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Security</em>'.
+	 * @see org.eclipse.papyrus.aas.Security
+	 * @generated
+	 */
+	EClass getSecurity();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.Security#getBase_Class <em>Base Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Class</em>'.
+	 * @see org.eclipse.papyrus.aas.Security#getBase_Class()
+	 * @see #getSecurity()
+	 * @generated
+	 */
+	EReference getSecurity_Base_Class();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.aas.Security#getAccessControlPolicyPoints <em>Access Control Policy Points</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference '<em>Access Control Policy Points</em>'.
+	 * @see org.eclipse.papyrus.aas.Security#getAccessControlPolicyPoints()
+	 * @see #getSecurity()
+	 * @generated
+	 */
+	EReference getSecurity_AccessControlPolicyPoints();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.aas.Security#getCertificate <em>Certificate</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Certificate</em>'.
+	 * @see org.eclipse.papyrus.aas.Security#getCertificate()
+	 * @see #getSecurity()
+	 * @generated
+	 */
+	EReference getSecurity_Certificate();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.aas.Security#getRequiredCertificateExtension <em>Required Certificate Extension</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Required Certificate Extension</em>'.
+	 * @see org.eclipse.papyrus.aas.Security#getRequiredCertificateExtension()
+	 * @see #getSecurity()
+	 * @generated
+	 */
+	EReference getSecurity_RequiredCertificateExtension();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints <em>Access Control Policy Points</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Access Control Policy Points</em>'.
+	 * @see org.eclipse.papyrus.aas.AccessControlPolicyPoints
+	 * @generated
+	 */
+	EClass getAccessControlPolicyPoints();
+
+	/**
+	 * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#getLocalAccessControl <em>Local Access Control</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference '<em>Local Access Control</em>'.
+	 * @see org.eclipse.papyrus.aas.AccessControlPolicyPoints#getLocalAccessControl()
+	 * @see #getAccessControlPolicyPoints()
+	 * @generated
+	 */
+	EReference getAccessControlPolicyPoints_LocalAccessControl();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalAccessControl <em>External Access Control</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>External Access Control</em>'.
+	 * @see org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalAccessControl()
+	 * @see #getAccessControlPolicyPoints()
+	 * @generated
+	 */
+	EAttribute getAccessControlPolicyPoints_ExternalAccessControl();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalInformationPoints <em>External Information Points</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>External Information Points</em>'.
+	 * @see org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalInformationPoints()
+	 * @see #getAccessControlPolicyPoints()
+	 * @generated
+	 */
+	EAttribute getAccessControlPolicyPoints_ExternalInformationPoints();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#getInternalInformationPoint <em>Internal Information Point</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Internal Information Point</em>'.
+	 * @see org.eclipse.papyrus.aas.AccessControlPolicyPoints#getInternalInformationPoint()
+	 * @see #getAccessControlPolicyPoints()
+	 * @generated
+	 */
+	EReference getAccessControlPolicyPoints_InternalInformationPoint();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalPolicyDecisionPoints <em>External Policy Decision Points</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>External Policy Decision Points</em>'.
+	 * @see org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalPolicyDecisionPoints()
+	 * @see #getAccessControlPolicyPoints()
+	 * @generated
+	 */
+	EAttribute getAccessControlPolicyPoints_ExternalPolicyDecisionPoints();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalPolicyEnforcementPoint <em>External Policy Enforcement Point</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>External Policy Enforcement Point</em>'.
+	 * @see org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalPolicyEnforcementPoint()
+	 * @see #getAccessControlPolicyPoints()
+	 * @generated
+	 */
+	EAttribute getAccessControlPolicyPoints_ExternalPolicyEnforcementPoint();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.AccessControl <em>Access Control</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Access Control</em>'.
+	 * @see org.eclipse.papyrus.aas.AccessControl
+	 * @generated
+	 */
+	EClass getAccessControl();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Submodel <em>Submodel</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Submodel</em>'.
+	 * @see org.eclipse.papyrus.aas.Submodel
+	 * @generated
+	 */
+	EClass getSubmodel();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.aas.Submodel#getSubmodelelement <em>Submodelelement</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Submodelelement</em>'.
+	 * @see org.eclipse.papyrus.aas.Submodel#getSubmodelelement()
+	 * @see #getSubmodel()
+	 * @generated
+	 */
+	EReference getSubmodel_Submodelelement();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.HasKind <em>Has Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Has Kind</em>'.
+	 * @see org.eclipse.papyrus.aas.HasKind
+	 * @generated
+	 */
+	EClass getHasKind();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.HasKind#getKind <em>Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Kind</em>'.
+	 * @see org.eclipse.papyrus.aas.HasKind#getKind()
+	 * @see #getHasKind()
+	 * @generated
+	 */
+	EAttribute getHasKind_Kind();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.HasKind#getBase_HasKind_Class <em>Base Has Kind Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Has Kind Class</em>'.
+	 * @see org.eclipse.papyrus.aas.HasKind#getBase_HasKind_Class()
+	 * @see #getHasKind()
+	 * @generated
+	 */
+	EReference getHasKind_Base_HasKind_Class();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.HasSemantics <em>Has Semantics</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Has Semantics</em>'.
+	 * @see org.eclipse.papyrus.aas.HasSemantics
+	 * @generated
+	 */
+	EClass getHasSemantics();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.HasSemantics#getSemanticId <em>Semantic Id</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Semantic Id</em>'.
+	 * @see org.eclipse.papyrus.aas.HasSemantics#getSemanticId()
+	 * @see #getHasSemantics()
+	 * @generated
+	 */
+	EReference getHasSemantics_SemanticId();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.HasSemantics#getBase_HasSemantics_Class <em>Base Has Semantics Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Has Semantics Class</em>'.
+	 * @see org.eclipse.papyrus.aas.HasSemantics#getBase_HasSemantics_Class()
+	 * @see #getHasSemantics()
+	 * @generated
+	 */
+	EReference getHasSemantics_Base_HasSemantics_Class();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Reference <em>Reference</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Reference</em>'.
+	 * @see org.eclipse.papyrus.aas.Reference
+	 * @generated
+	 */
+	EClass getReference();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.aas.Reference#getKey <em>Key</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Key</em>'.
+	 * @see org.eclipse.papyrus.aas.Reference#getKey()
+	 * @see #getReference()
+	 * @generated
+	 */
+	EReference getReference_Key();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.Reference#getBase_Class <em>Base Class</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Class</em>'.
+	 * @see org.eclipse.papyrus.aas.Reference#getBase_Class()
+	 * @see #getReference()
+	 * @generated
+	 */
+	EReference getReference_Base_Class();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Key <em>Key</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Key</em>'.
+	 * @see org.eclipse.papyrus.aas.Key
+	 * @generated
+	 */
+	EClass getKey();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Key#getType <em>Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Type</em>'.
+	 * @see org.eclipse.papyrus.aas.Key#getType()
+	 * @see #getKey()
+	 * @generated
+	 */
+	EAttribute getKey_Type();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Key#isLocal <em>Local</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Local</em>'.
+	 * @see org.eclipse.papyrus.aas.Key#isLocal()
+	 * @see #getKey()
+	 * @generated
+	 */
+	EAttribute getKey_Local();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Key#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Value</em>'.
+	 * @see org.eclipse.papyrus.aas.Key#getValue()
+	 * @see #getKey()
+	 * @generated
+	 */
+	EAttribute getKey_Value();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Key#getIdType <em>Id Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Id Type</em>'.
+	 * @see org.eclipse.papyrus.aas.Key#getIdType()
+	 * @see #getKey()
+	 * @generated
+	 */
+	EAttribute getKey_IdType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.SubmodelElement <em>Submodel Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Submodel Element</em>'.
+	 * @see org.eclipse.papyrus.aas.SubmodelElement
+	 * @generated
+	 */
+	EClass getSubmodelElement();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Certificate <em>Certificate</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Certificate</em>'.
+	 * @see org.eclipse.papyrus.aas.Certificate
+	 * @generated
+	 */
+	EClass getCertificate();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Asset <em>Asset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Asset</em>'.
+	 * @see org.eclipse.papyrus.aas.Asset
+	 * @generated
+	 */
+	EClass getAsset();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Asset#getKind <em>Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Kind</em>'.
+	 * @see org.eclipse.papyrus.aas.Asset#getKind()
+	 * @see #getAsset()
+	 * @generated
+	 */
+	EAttribute getAsset_Kind();
+
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.aas.Asset#getEndpoint <em>Endpoint</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the containment reference list '<em>Endpoint</em>'.
+	 * @see org.eclipse.papyrus.aas.Asset#getEndpoint()
+	 * @see #getAsset()
+	 * @generated
+	 */
+	EReference getAsset_Endpoint();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Endpoint <em>Endpoint</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Endpoint</em>'.
+	 * @see org.eclipse.papyrus.aas.Endpoint
+	 * @generated
+	 */
+	EClass getEndpoint();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Endpoint#getAddress <em>Address</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Address</em>'.
+	 * @see org.eclipse.papyrus.aas.Endpoint#getAddress()
+	 * @see #getEndpoint()
+	 * @generated
+	 */
+	EAttribute getEndpoint_Address();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Endpoint#getProtocol <em>Protocol</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Protocol</em>'.
+	 * @see org.eclipse.papyrus.aas.Endpoint#getProtocol()
+	 * @see #getEndpoint()
+	 * @generated
+	 */
+	EAttribute getEndpoint_Protocol();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.File <em>File</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>File</em>'.
+	 * @see org.eclipse.papyrus.aas.File
+	 * @generated
+	 */
+	EClass getFile();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.File#getPath <em>Path</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Path</em>'.
+	 * @see org.eclipse.papyrus.aas.File#getPath()
+	 * @see #getFile()
+	 * @generated
+	 */
+	EAttribute getFile_Path();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.File#getMimeType <em>Mime Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Mime Type</em>'.
+	 * @see org.eclipse.papyrus.aas.File#getMimeType()
+	 * @see #getFile()
+	 * @generated
+	 */
+	EAttribute getFile_MimeType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.DataElement <em>Data Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Data Element</em>'.
+	 * @see org.eclipse.papyrus.aas.DataElement
+	 * @generated
+	 */
+	EClass getDataElement();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.DataElement#getBase_Property <em>Base Property</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Property</em>'.
+	 * @see org.eclipse.papyrus.aas.DataElement#getBase_Property()
+	 * @see #getDataElement()
+	 * @generated
+	 */
+	EReference getDataElement_Base_Property();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Entity <em>Entity</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Entity</em>'.
+	 * @see org.eclipse.papyrus.aas.Entity
+	 * @generated
+	 */
+	EClass getEntity();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Entity#getEntityType <em>Entity Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Entity Type</em>'.
+	 * @see org.eclipse.papyrus.aas.Entity#getEntityType()
+	 * @see #getEntity()
+	 * @generated
+	 */
+	EAttribute getEntity_EntityType();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.Entity#getAsset <em>Asset</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Asset</em>'.
+	 * @see org.eclipse.papyrus.aas.Entity#getAsset()
+	 * @see #getEntity()
+	 * @generated
+	 */
+	EReference getEntity_Asset();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.RelationshipElement <em>Relationship Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Relationship Element</em>'.
+	 * @see org.eclipse.papyrus.aas.RelationshipElement
+	 * @generated
+	 */
+	EClass getRelationshipElement();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.RelationshipElement#getBase_Dependency <em>Base Dependency</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Dependency</em>'.
+	 * @see org.eclipse.papyrus.aas.RelationshipElement#getBase_Dependency()
+	 * @see #getRelationshipElement()
+	 * @generated
+	 */
+	EReference getRelationshipElement_Base_Dependency();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Operation <em>Operation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Operation</em>'.
+	 * @see org.eclipse.papyrus.aas.Operation
+	 * @generated
+	 */
+	EClass getOperation();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.Operation#getBase_Operation <em>Base Operation</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Operation</em>'.
+	 * @see org.eclipse.papyrus.aas.Operation#getBase_Operation()
+	 * @see #getOperation()
+	 * @generated
+	 */
+	EReference getOperation_Base_Operation();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.SubmodelElementCollection <em>Submodel Element Collection</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Submodel Element Collection</em>'.
+	 * @see org.eclipse.papyrus.aas.SubmodelElementCollection
+	 * @generated
+	 */
+	EClass getSubmodelElementCollection();
+
+	/**
+	 * Returns the meta object for the reference list '{@link org.eclipse.papyrus.aas.SubmodelElementCollection#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference list '<em>Value</em>'.
+	 * @see org.eclipse.papyrus.aas.SubmodelElementCollection#getValue()
+	 * @see #getSubmodelElementCollection()
+	 * @generated
+	 */
+	EReference getSubmodelElementCollection_Value();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.SubmodelElementCollection#getBase_Property <em>Base Property</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Property</em>'.
+	 * @see org.eclipse.papyrus.aas.SubmodelElementCollection#getBase_Property()
+	 * @see #getSubmodelElementCollection()
+	 * @generated
+	 */
+	EReference getSubmodelElementCollection_Base_Property();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.SubmodelElementCollection#getBase_DataType <em>Base Data Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Data Type</em>'.
+	 * @see org.eclipse.papyrus.aas.SubmodelElementCollection#getBase_DataType()
+	 * @see #getSubmodelElementCollection()
+	 * @generated
+	 */
+	EReference getSubmodelElementCollection_Base_DataType();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Property <em>Property</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Property</em>'.
+	 * @see org.eclipse.papyrus.aas.Property
+	 * @generated
+	 */
+	EClass getProperty();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.ReferenceElement <em>Reference Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Reference Element</em>'.
+	 * @see org.eclipse.papyrus.aas.ReferenceElement
+	 * @generated
+	 */
+	EClass getReferenceElement();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.ReferenceElement#getValue <em>Value</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Value</em>'.
+	 * @see org.eclipse.papyrus.aas.ReferenceElement#getValue()
+	 * @see #getReferenceElement()
+	 * @generated
+	 */
+	EReference getReferenceElement_Value();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Event <em>Event</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Event</em>'.
+	 * @see org.eclipse.papyrus.aas.Event
+	 * @generated
+	 */
+	EClass getEvent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.Event#getBase_Property <em>Base Property</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Property</em>'.
+	 * @see org.eclipse.papyrus.aas.Event#getBase_Property()
+	 * @see #getEvent()
+	 * @generated
+	 */
+	EReference getEvent_Base_Property();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.BasicEvent <em>Basic Event</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Basic Event</em>'.
+	 * @see org.eclipse.papyrus.aas.BasicEvent
+	 * @generated
+	 */
+	EClass getBasicEvent();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.BasicEvent#getObserved <em>Observed</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Observed</em>'.
+	 * @see org.eclipse.papyrus.aas.BasicEvent#getObserved()
+	 * @see #getBasicEvent()
+	 * @generated
+	 */
+	EReference getBasicEvent_Observed();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Range <em>Range</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Range</em>'.
+	 * @see org.eclipse.papyrus.aas.Range
+	 * @generated
+	 */
+	EClass getRange();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Range#getMin <em>Min</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Min</em>'.
+	 * @see org.eclipse.papyrus.aas.Range#getMin()
+	 * @see #getRange()
+	 * @generated
+	 */
+	EAttribute getRange_Min();
+
+	/**
+	 * Returns the meta object for the attribute '{@link org.eclipse.papyrus.aas.Range#getMax <em>Max</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the attribute '<em>Max</em>'.
+	 * @see org.eclipse.papyrus.aas.Range#getMax()
+	 * @see #getRange()
+	 * @generated
+	 */
+	EAttribute getRange_Max();
+
+	/**
+	 * Returns the meta object for class '{@link org.eclipse.papyrus.aas.Capability <em>Capability</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for class '<em>Capability</em>'.
+	 * @see org.eclipse.papyrus.aas.Capability
+	 * @generated
+	 */
+	EClass getCapability();
+
+	/**
+	 * Returns the meta object for the reference '{@link org.eclipse.papyrus.aas.Capability#getBase_Property <em>Base Property</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for the reference '<em>Base Property</em>'.
+	 * @see org.eclipse.papyrus.aas.Capability#getBase_Property()
+	 * @see #getCapability()
+	 * @generated
+	 */
+	EReference getCapability_Base_Property();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.IdentifierType <em>Identifier Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Identifier Type</em>'.
+	 * @see org.eclipse.papyrus.aas.IdentifierType
+	 * @generated
+	 */
+	EEnum getIdentifierType();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.ModelingKind <em>Modeling Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Modeling Kind</em>'.
+	 * @see org.eclipse.papyrus.aas.ModelingKind
+	 * @generated
+	 */
+	EEnum getModelingKind();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.KeyElements <em>Key Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Key Elements</em>'.
+	 * @see org.eclipse.papyrus.aas.KeyElements
+	 * @generated
+	 */
+	EEnum getKeyElements();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.ReferableElements <em>Referable Elements</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Referable Elements</em>'.
+	 * @see org.eclipse.papyrus.aas.ReferableElements
+	 * @generated
+	 */
+	EEnum getReferableElements();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.IdentifiableElement <em>Identifiable Element</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Identifiable Element</em>'.
+	 * @see org.eclipse.papyrus.aas.IdentifiableElement
+	 * @generated
+	 */
+	EEnum getIdentifiableElement();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.KeyType <em>Key Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Key Type</em>'.
+	 * @see org.eclipse.papyrus.aas.KeyType
+	 * @generated
+	 */
+	EEnum getKeyType();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.LocalKeyType <em>Local Key Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Local Key Type</em>'.
+	 * @see org.eclipse.papyrus.aas.LocalKeyType
+	 * @generated
+	 */
+	EEnum getLocalKeyType();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.AssetKind <em>Asset Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Asset Kind</em>'.
+	 * @see org.eclipse.papyrus.aas.AssetKind
+	 * @generated
+	 */
+	EEnum getAssetKind();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.ProtocolKind <em>Protocol Kind</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Protocol Kind</em>'.
+	 * @see org.eclipse.papyrus.aas.ProtocolKind
+	 * @generated
+	 */
+	EEnum getProtocolKind();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.MimeType <em>Mime Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Mime Type</em>'.
+	 * @see org.eclipse.papyrus.aas.MimeType
+	 * @generated
+	 */
+	EEnum getMimeType();
+
+	/**
+	 * Returns the meta object for enum '{@link org.eclipse.papyrus.aas.EntityType <em>Entity Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the meta object for enum '<em>Entity Type</em>'.
+	 * @see org.eclipse.papyrus.aas.EntityType
+	 * @generated
+	 */
+	EEnum getEntityType();
+
+	/**
+	 * Returns the factory that creates the instances of the model.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the factory that creates the instances of the model.
+	 * @generated
+	 */
+	AASFactory getAASFactory();
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * Defines literals for the meta objects that represent
+	 * <ul>
+	 * <li>each class,</li>
+	 * <li>each feature of each class,</li>
+	 * <li>each operation of each class,</li>
+	 * <li>each enum,</li>
+	 * <li>and each data type</li>
+	 * </ul>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	interface Literals {
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl <em>Asset Administration Shell</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAssetAdministrationShell()
+		 * @generated
+		 */
+		EClass ASSET_ADMINISTRATION_SHELL = eINSTANCE.getAssetAdministrationShell();
+
+		/**
+		 * The meta object literal for the '<em><b>Derived From</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL__DERIVED_FROM = eINSTANCE.getAssetAdministrationShell_DerivedFrom();
+
+		/**
+		 * The meta object literal for the '<em><b>Security</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL__SECURITY = eINSTANCE.getAssetAdministrationShell_Security();
+
+		/**
+		 * The meta object literal for the '<em><b>Asset</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL__ASSET = eINSTANCE.getAssetAdministrationShell_Asset();
+
+		/**
+		 * The meta object literal for the '<em><b>Submodel</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference ASSET_ADMINISTRATION_SHELL__SUBMODEL = eINSTANCE.getAssetAdministrationShell_Submodel();
+
+		/**
+		 * The meta object literal for the '<em><b>Url</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ASSET_ADMINISTRATION_SHELL__URL = eINSTANCE.getAssetAdministrationShell_Url();
+
+		/**
+		 * The meta object literal for the '<em><b>Port</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ASSET_ADMINISTRATION_SHELL__PORT = eINSTANCE.getAssetAdministrationShell_Port();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.IdentifiableImpl <em>Identifiable</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.IdentifiableImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getIdentifiable()
+		 * @generated
+		 */
+		EClass IDENTIFIABLE = eINSTANCE.getIdentifiable();
+
+		/**
+		 * The meta object literal for the '<em><b>Administration</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference IDENTIFIABLE__ADMINISTRATION = eINSTANCE.getIdentifiable_Administration();
+
+		/**
+		 * The meta object literal for the '<em><b>Identification</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference IDENTIFIABLE__IDENTIFICATION = eINSTANCE.getIdentifiable_Identification();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.RefereableImpl <em>Refereable</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.RefereableImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getRefereable()
+		 * @generated
+		 */
+		EClass REFEREABLE = eINSTANCE.getRefereable();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Short</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute REFEREABLE__ID_SHORT = eINSTANCE.getRefereable_IdShort();
+
+		/**
+		 * The meta object literal for the '<em><b>Category</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute REFEREABLE__CATEGORY = eINSTANCE.getRefereable_Category();
+
+		/**
+		 * The meta object literal for the '<em><b>Description</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute REFEREABLE__DESCRIPTION = eINSTANCE.getRefereable_Description();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Class</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference REFEREABLE__BASE_CLASS = eINSTANCE.getRefereable_Base_Class();
+
+		/**
+		 * The meta object literal for the '<em><b>Parent</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference REFEREABLE__PARENT = eINSTANCE.getRefereable_Parent();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.AdministrativeInformationImpl <em>Administrative Information</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.AdministrativeInformationImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAdministrativeInformation()
+		 * @generated
+		 */
+		EClass ADMINISTRATIVE_INFORMATION = eINSTANCE.getAdministrativeInformation();
+
+		/**
+		 * The meta object literal for the '<em><b>Version</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ADMINISTRATIVE_INFORMATION__VERSION = eINSTANCE.getAdministrativeInformation_Version();
+
+		/**
+		 * The meta object literal for the '<em><b>Revision</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ADMINISTRATIVE_INFORMATION__REVISION = eINSTANCE.getAdministrativeInformation_Revision();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.IdentifierImpl <em>Identifier</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.IdentifierImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getIdentifier()
+		 * @generated
+		 */
+		EClass IDENTIFIER = eINSTANCE.getIdentifier();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute IDENTIFIER__ID_TYPE = eINSTANCE.getIdentifier_IdType();
+
+		/**
+		 * The meta object literal for the '<em><b>Id</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute IDENTIFIER__ID = eINSTANCE.getIdentifier_Id();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.SecurityImpl <em>Security</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.SecurityImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getSecurity()
+		 * @generated
+		 */
+		EClass SECURITY = eINSTANCE.getSecurity();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Class</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference SECURITY__BASE_CLASS = eINSTANCE.getSecurity_Base_Class();
+
+		/**
+		 * The meta object literal for the '<em><b>Access Control Policy Points</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference SECURITY__ACCESS_CONTROL_POLICY_POINTS = eINSTANCE.getSecurity_AccessControlPolicyPoints();
+
+		/**
+		 * The meta object literal for the '<em><b>Certificate</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference SECURITY__CERTIFICATE = eINSTANCE.getSecurity_Certificate();
+
+		/**
+		 * The meta object literal for the '<em><b>Required Certificate Extension</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference SECURITY__REQUIRED_CERTIFICATE_EXTENSION = eINSTANCE.getSecurity_RequiredCertificateExtension();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl <em>Access Control Policy Points</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAccessControlPolicyPoints()
+		 * @generated
+		 */
+		EClass ACCESS_CONTROL_POLICY_POINTS = eINSTANCE.getAccessControlPolicyPoints();
+
+		/**
+		 * The meta object literal for the '<em><b>Local Access Control</b></em>' containment reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL = eINSTANCE.getAccessControlPolicyPoints_LocalAccessControl();
+
+		/**
+		 * The meta object literal for the '<em><b>External Access Control</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_ACCESS_CONTROL = eINSTANCE.getAccessControlPolicyPoints_ExternalAccessControl();
+
+		/**
+		 * The meta object literal for the '<em><b>External Information Points</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_INFORMATION_POINTS = eINSTANCE.getAccessControlPolicyPoints_ExternalInformationPoints();
+
+		/**
+		 * The meta object literal for the '<em><b>Internal Information Point</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference ACCESS_CONTROL_POLICY_POINTS__INTERNAL_INFORMATION_POINT = eINSTANCE.getAccessControlPolicyPoints_InternalInformationPoint();
+
+		/**
+		 * The meta object literal for the '<em><b>External Policy Decision Points</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_DECISION_POINTS = eINSTANCE.getAccessControlPolicyPoints_ExternalPolicyDecisionPoints();
+
+		/**
+		 * The meta object literal for the '<em><b>External Policy Enforcement Point</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_ENFORCEMENT_POINT = eINSTANCE.getAccessControlPolicyPoints_ExternalPolicyEnforcementPoint();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.AccessControlImpl <em>Access Control</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.AccessControlImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAccessControl()
+		 * @generated
+		 */
+		EClass ACCESS_CONTROL = eINSTANCE.getAccessControl();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.SubmodelImpl <em>Submodel</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.SubmodelImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getSubmodel()
+		 * @generated
+		 */
+		EClass SUBMODEL = eINSTANCE.getSubmodel();
+
+		/**
+		 * The meta object literal for the '<em><b>Submodelelement</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference SUBMODEL__SUBMODELELEMENT = eINSTANCE.getSubmodel_Submodelelement();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.HasKindImpl <em>Has Kind</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.HasKindImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getHasKind()
+		 * @generated
+		 */
+		EClass HAS_KIND = eINSTANCE.getHasKind();
+
+		/**
+		 * The meta object literal for the '<em><b>Kind</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute HAS_KIND__KIND = eINSTANCE.getHasKind_Kind();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Has Kind Class</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference HAS_KIND__BASE_HAS_KIND_CLASS = eINSTANCE.getHasKind_Base_HasKind_Class();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.HasSemanticsImpl <em>Has Semantics</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.HasSemanticsImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getHasSemantics()
+		 * @generated
+		 */
+		EClass HAS_SEMANTICS = eINSTANCE.getHasSemantics();
+
+		/**
+		 * The meta object literal for the '<em><b>Semantic Id</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference HAS_SEMANTICS__SEMANTIC_ID = eINSTANCE.getHasSemantics_SemanticId();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Has Semantics Class</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS = eINSTANCE.getHasSemantics_Base_HasSemantics_Class();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.ReferenceImpl <em>Reference</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.ReferenceImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getReference()
+		 * @generated
+		 */
+		EClass REFERENCE = eINSTANCE.getReference();
+
+		/**
+		 * The meta object literal for the '<em><b>Key</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference REFERENCE__KEY = eINSTANCE.getReference_Key();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Class</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference REFERENCE__BASE_CLASS = eINSTANCE.getReference_Base_Class();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.KeyImpl <em>Key</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.KeyImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getKey()
+		 * @generated
+		 */
+		EClass KEY = eINSTANCE.getKey();
+
+		/**
+		 * The meta object literal for the '<em><b>Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute KEY__TYPE = eINSTANCE.getKey_Type();
+
+		/**
+		 * The meta object literal for the '<em><b>Local</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute KEY__LOCAL = eINSTANCE.getKey_Local();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute KEY__VALUE = eINSTANCE.getKey_Value();
+
+		/**
+		 * The meta object literal for the '<em><b>Id Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute KEY__ID_TYPE = eINSTANCE.getKey_IdType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.SubmodelElementImpl <em>Submodel Element</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.SubmodelElementImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getSubmodelElement()
+		 * @generated
+		 */
+		EClass SUBMODEL_ELEMENT = eINSTANCE.getSubmodelElement();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.CertificateImpl <em>Certificate</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.CertificateImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getCertificate()
+		 * @generated
+		 */
+		EClass CERTIFICATE = eINSTANCE.getCertificate();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.AssetImpl <em>Asset</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.AssetImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAsset()
+		 * @generated
+		 */
+		EClass ASSET = eINSTANCE.getAsset();
+
+		/**
+		 * The meta object literal for the '<em><b>Kind</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ASSET__KIND = eINSTANCE.getAsset_Kind();
+
+		/**
+		 * The meta object literal for the '<em><b>Endpoint</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference ASSET__ENDPOINT = eINSTANCE.getAsset_Endpoint();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.EndpointImpl <em>Endpoint</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.EndpointImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getEndpoint()
+		 * @generated
+		 */
+		EClass ENDPOINT = eINSTANCE.getEndpoint();
+
+		/**
+		 * The meta object literal for the '<em><b>Address</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ENDPOINT__ADDRESS = eINSTANCE.getEndpoint_Address();
+
+		/**
+		 * The meta object literal for the '<em><b>Protocol</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ENDPOINT__PROTOCOL = eINSTANCE.getEndpoint_Protocol();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.FileImpl <em>File</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.FileImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getFile()
+		 * @generated
+		 */
+		EClass FILE = eINSTANCE.getFile();
+
+		/**
+		 * The meta object literal for the '<em><b>Path</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute FILE__PATH = eINSTANCE.getFile_Path();
+
+		/**
+		 * The meta object literal for the '<em><b>Mime Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute FILE__MIME_TYPE = eINSTANCE.getFile_MimeType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.DataElementImpl <em>Data Element</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.DataElementImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getDataElement()
+		 * @generated
+		 */
+		EClass DATA_ELEMENT = eINSTANCE.getDataElement();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference DATA_ELEMENT__BASE_PROPERTY = eINSTANCE.getDataElement_Base_Property();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.EntityImpl <em>Entity</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.EntityImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getEntity()
+		 * @generated
+		 */
+		EClass ENTITY = eINSTANCE.getEntity();
+
+		/**
+		 * The meta object literal for the '<em><b>Entity Type</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute ENTITY__ENTITY_TYPE = eINSTANCE.getEntity_EntityType();
+
+		/**
+		 * The meta object literal for the '<em><b>Asset</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference ENTITY__ASSET = eINSTANCE.getEntity_Asset();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.RelationshipElementImpl <em>Relationship Element</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.RelationshipElementImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getRelationshipElement()
+		 * @generated
+		 */
+		EClass RELATIONSHIP_ELEMENT = eINSTANCE.getRelationshipElement();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Dependency</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference RELATIONSHIP_ELEMENT__BASE_DEPENDENCY = eINSTANCE.getRelationshipElement_Base_Dependency();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.OperationImpl <em>Operation</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.OperationImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getOperation()
+		 * @generated
+		 */
+		EClass OPERATION = eINSTANCE.getOperation();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Operation</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference OPERATION__BASE_OPERATION = eINSTANCE.getOperation_Base_Operation();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.SubmodelElementCollectionImpl <em>Submodel Element Collection</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.SubmodelElementCollectionImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getSubmodelElementCollection()
+		 * @generated
+		 */
+		EClass SUBMODEL_ELEMENT_COLLECTION = eINSTANCE.getSubmodelElementCollection();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_COLLECTION__VALUE = eINSTANCE.getSubmodelElementCollection_Value();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_COLLECTION__BASE_PROPERTY = eINSTANCE.getSubmodelElementCollection_Base_Property();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Data Type</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference SUBMODEL_ELEMENT_COLLECTION__BASE_DATA_TYPE = eINSTANCE.getSubmodelElementCollection_Base_DataType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.PropertyImpl <em>Property</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.PropertyImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getProperty()
+		 * @generated
+		 */
+		EClass PROPERTY = eINSTANCE.getProperty();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.ReferenceElementImpl <em>Reference Element</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.ReferenceElementImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getReferenceElement()
+		 * @generated
+		 */
+		EClass REFERENCE_ELEMENT = eINSTANCE.getReferenceElement();
+
+		/**
+		 * The meta object literal for the '<em><b>Value</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference REFERENCE_ELEMENT__VALUE = eINSTANCE.getReferenceElement_Value();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.EventImpl <em>Event</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.EventImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getEvent()
+		 * @generated
+		 */
+		EClass EVENT = eINSTANCE.getEvent();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference EVENT__BASE_PROPERTY = eINSTANCE.getEvent_Base_Property();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.BasicEventImpl <em>Basic Event</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.BasicEventImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getBasicEvent()
+		 * @generated
+		 */
+		EClass BASIC_EVENT = eINSTANCE.getBasicEvent();
+
+		/**
+		 * The meta object literal for the '<em><b>Observed</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference BASIC_EVENT__OBSERVED = eINSTANCE.getBasicEvent_Observed();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.RangeImpl <em>Range</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.RangeImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getRange()
+		 * @generated
+		 */
+		EClass RANGE = eINSTANCE.getRange();
+
+		/**
+		 * The meta object literal for the '<em><b>Min</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute RANGE__MIN = eINSTANCE.getRange_Min();
+
+		/**
+		 * The meta object literal for the '<em><b>Max</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EAttribute RANGE__MAX = eINSTANCE.getRange_Max();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.impl.CapabilityImpl <em>Capability</em>}' class.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.impl.CapabilityImpl
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getCapability()
+		 * @generated
+		 */
+		EClass CAPABILITY = eINSTANCE.getCapability();
+
+		/**
+		 * The meta object literal for the '<em><b>Base Property</b></em>' reference feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @generated
+		 */
+		EReference CAPABILITY__BASE_PROPERTY = eINSTANCE.getCapability_Base_Property();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.IdentifierType <em>Identifier Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.IdentifierType
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getIdentifierType()
+		 * @generated
+		 */
+		EEnum IDENTIFIER_TYPE = eINSTANCE.getIdentifierType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.ModelingKind <em>Modeling Kind</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.ModelingKind
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getModelingKind()
+		 * @generated
+		 */
+		EEnum MODELING_KIND = eINSTANCE.getModelingKind();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.KeyElements <em>Key Elements</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.KeyElements
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getKeyElements()
+		 * @generated
+		 */
+		EEnum KEY_ELEMENTS = eINSTANCE.getKeyElements();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.ReferableElements <em>Referable Elements</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.ReferableElements
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getReferableElements()
+		 * @generated
+		 */
+		EEnum REFERABLE_ELEMENTS = eINSTANCE.getReferableElements();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.IdentifiableElement <em>Identifiable Element</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.IdentifiableElement
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getIdentifiableElement()
+		 * @generated
+		 */
+		EEnum IDENTIFIABLE_ELEMENT = eINSTANCE.getIdentifiableElement();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.KeyType <em>Key Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.KeyType
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getKeyType()
+		 * @generated
+		 */
+		EEnum KEY_TYPE = eINSTANCE.getKeyType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.LocalKeyType <em>Local Key Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.LocalKeyType
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getLocalKeyType()
+		 * @generated
+		 */
+		EEnum LOCAL_KEY_TYPE = eINSTANCE.getLocalKeyType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.AssetKind <em>Asset Kind</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.AssetKind
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getAssetKind()
+		 * @generated
+		 */
+		EEnum ASSET_KIND = eINSTANCE.getAssetKind();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.ProtocolKind <em>Protocol Kind</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.ProtocolKind
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getProtocolKind()
+		 * @generated
+		 */
+		EEnum PROTOCOL_KIND = eINSTANCE.getProtocolKind();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.MimeType <em>Mime Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.MimeType
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getMimeType()
+		 * @generated
+		 */
+		EEnum MIME_TYPE = eINSTANCE.getMimeType();
+
+		/**
+		 * The meta object literal for the '{@link org.eclipse.papyrus.aas.EntityType <em>Entity Type</em>}' enum.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * 
+		 * @see org.eclipse.papyrus.aas.EntityType
+		 * @see org.eclipse.papyrus.aas.impl.AASPackageImpl#getEntityType()
+		 * @generated
+		 */
+		EEnum ENTITY_TYPE = eINSTANCE.getEntityType();
+
+	}
+
+} // AASPackage
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AccessControl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AccessControl.java
new file mode 100644
index 0000000..0aa1454
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AccessControl.java
@@ -0,0 +1,31 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Access Control</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getAccessControl()
+ * @model
+ * @generated
+ */
+public interface AccessControl extends EObject {
+} // AccessControl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AccessControlPolicyPoints.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AccessControlPolicyPoints.java
new file mode 100644
index 0000000..6c3b3a6
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AccessControlPolicyPoints.java
@@ -0,0 +1,216 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Access Control Policy Points</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#getLocalAccessControl <em>Local Access Control</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalAccessControl <em>External Access Control</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalInformationPoints <em>External Information Points</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#getInternalInformationPoint <em>Internal Information Point</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalPolicyDecisionPoints <em>External Policy Decision Points</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalPolicyEnforcementPoint <em>External Policy Enforcement Point</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getAccessControlPolicyPoints()
+ * @model
+ * @generated
+ */
+public interface AccessControlPolicyPoints extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Local Access Control</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Local Access Control</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Local Access Control</em>' containment reference.
+	 * @see #setLocalAccessControl(AccessControl)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAccessControlPolicyPoints_LocalAccessControl()
+	 * @model containment="true" required="true" ordered="false"
+	 * @generated
+	 */
+	AccessControl getLocalAccessControl();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#getLocalAccessControl <em>Local Access Control</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Local Access Control</em>' containment reference.
+	 * @see #getLocalAccessControl()
+	 * @generated
+	 */
+	void setLocalAccessControl(AccessControl value);
+
+	/**
+	 * Returns the value of the '<em><b>External Access Control</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>External Access Control</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>External Access Control</em>' attribute.
+	 * @see #setExternalAccessControl(boolean)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAccessControlPolicyPoints_ExternalAccessControl()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	boolean isExternalAccessControl();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalAccessControl <em>External Access Control</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>External Access Control</em>' attribute.
+	 * @see #isExternalAccessControl()
+	 * @generated
+	 */
+	void setExternalAccessControl(boolean value);
+
+	/**
+	 * Returns the value of the '<em><b>External Information Points</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>External Information Points</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>External Information Points</em>' attribute.
+	 * @see #setExternalInformationPoints(boolean)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAccessControlPolicyPoints_ExternalInformationPoints()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	boolean isExternalInformationPoints();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalInformationPoints <em>External Information Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>External Information Points</em>' attribute.
+	 * @see #isExternalInformationPoints()
+	 * @generated
+	 */
+	void setExternalInformationPoints(boolean value);
+
+	/**
+	 * Returns the value of the '<em><b>Internal Information Point</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Internal Information Point</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Internal Information Point</em>' reference.
+	 * @see #setInternalInformationPoint(Submodel)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAccessControlPolicyPoints_InternalInformationPoint()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	Submodel getInternalInformationPoint();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#getInternalInformationPoint <em>Internal Information Point</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Internal Information Point</em>' reference.
+	 * @see #getInternalInformationPoint()
+	 * @generated
+	 */
+	void setInternalInformationPoint(Submodel value);
+
+	/**
+	 * Returns the value of the '<em><b>External Policy Decision Points</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>External Policy Decision Points</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>External Policy Decision Points</em>' attribute.
+	 * @see #setExternalPolicyDecisionPoints(boolean)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAccessControlPolicyPoints_ExternalPolicyDecisionPoints()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	boolean isExternalPolicyDecisionPoints();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalPolicyDecisionPoints <em>External Policy Decision Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>External Policy Decision Points</em>' attribute.
+	 * @see #isExternalPolicyDecisionPoints()
+	 * @generated
+	 */
+	void setExternalPolicyDecisionPoints(boolean value);
+
+	/**
+	 * Returns the value of the '<em><b>External Policy Enforcement Point</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>External Policy Enforcement Point</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>External Policy Enforcement Point</em>' attribute.
+	 * @see #setExternalPolicyEnforcementPoint(boolean)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAccessControlPolicyPoints_ExternalPolicyEnforcementPoint()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	boolean isExternalPolicyEnforcementPoint();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints#isExternalPolicyEnforcementPoint <em>External Policy Enforcement Point</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>External Policy Enforcement Point</em>' attribute.
+	 * @see #isExternalPolicyEnforcementPoint()
+	 * @generated
+	 */
+	void setExternalPolicyEnforcementPoint(boolean value);
+
+} // AccessControlPolicyPoints
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AdministrativeInformation.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AdministrativeInformation.java
new file mode 100644
index 0000000..253770c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AdministrativeInformation.java
@@ -0,0 +1,96 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Administrative Information</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.AdministrativeInformation#getVersion <em>Version</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AdministrativeInformation#getRevision <em>Revision</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getAdministrativeInformation()
+ * @model
+ * @generated
+ */
+public interface AdministrativeInformation extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Version</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Version</em>' attribute.
+	 * @see #setVersion(String)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAdministrativeInformation_Version()
+	 * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+	 * @generated
+	 */
+	String getVersion();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AdministrativeInformation#getVersion <em>Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Version</em>' attribute.
+	 * @see #getVersion()
+	 * @generated
+	 */
+	void setVersion(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Revision</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Revision</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Revision</em>' attribute.
+	 * @see #setRevision(String)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAdministrativeInformation_Revision()
+	 * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+	 * @generated
+	 */
+	String getRevision();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AdministrativeInformation#getRevision <em>Revision</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Revision</em>' attribute.
+	 * @see #getRevision()
+	 * @generated
+	 */
+	void setRevision(String value);
+
+} // AdministrativeInformation
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Asset.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Asset.java
new file mode 100644
index 0000000..c39a85f
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Asset.java
@@ -0,0 +1,92 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.common.util.EList;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Asset</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * There is no asset in Basyx
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Asset#getKind <em>Kind</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Asset#getEndpoint <em>Endpoint</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getAsset()
+ * @model
+ * @generated
+ */
+public interface Asset extends Identifiable {
+	/**
+	 * Returns the value of the '<em><b>Kind</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.papyrus.aas.AssetKind}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Kind</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Kind</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.AssetKind
+	 * @see #setKind(AssetKind)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAsset_Kind()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	AssetKind getKind();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Asset#getKind <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Kind</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.AssetKind
+	 * @see #getKind()
+	 * @generated
+	 */
+	void setKind(AssetKind value);
+
+	/**
+	 * Returns the value of the '<em><b>Endpoint</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.aas.Endpoint}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Endpoint</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Endpoint</em>' containment reference list.
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAsset_Endpoint()
+	 * @model containment="true" ordered="false"
+	 * @generated
+	 */
+	EList<Endpoint> getEndpoint();
+
+} // Asset
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AssetAdministrationShell.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AssetAdministrationShell.java
new file mode 100644
index 0000000..0d253be
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AssetAdministrationShell.java
@@ -0,0 +1,224 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Asset Administration Shell</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A project in Basyx
+ * Basyx:
+ * 
+ * identifierType: IRDI (urn:...), URI, custom
+ * identifier (for submodel or operation) ->generated automatically
+ * resource name
+ * idshort: string -> generated automatically
+ * category:string
+ * description:string
+ * parent: not used
+ * administration: not used
+ * 
+ * 
+ * 
+ * Security is not implemented, but is an ongoing project
+ * 0 < port <= 65535
+ * 
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getDerivedFrom <em>Derived From</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getSecurity <em>Security</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getAsset <em>Asset</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getSubmodel <em>Submodel</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getUrl <em>Url</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getPort <em>Port</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getAssetAdministrationShell()
+ * @model
+ * @generated
+ */
+public interface AssetAdministrationShell extends Identifiable {
+	/**
+	 * Returns the value of the '<em><b>Derived From</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Derived From</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Derived From</em>' reference.
+	 * @see #setDerivedFrom(AssetAdministrationShell)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAssetAdministrationShell_DerivedFrom()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	AssetAdministrationShell getDerivedFrom();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getDerivedFrom <em>Derived From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Derived From</em>' reference.
+	 * @see #getDerivedFrom()
+	 * @generated
+	 */
+	void setDerivedFrom(AssetAdministrationShell value);
+
+	/**
+	 * Returns the value of the '<em><b>Security</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Security</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Security</em>' reference.
+	 * @see #setSecurity(Security)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAssetAdministrationShell_Security()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	Security getSecurity();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getSecurity <em>Security</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Security</em>' reference.
+	 * @see #getSecurity()
+	 * @generated
+	 */
+	void setSecurity(Security value);
+
+	/**
+	 * Returns the value of the '<em><b>Asset</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Asset</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Asset</em>' reference.
+	 * @see #setAsset(Asset)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAssetAdministrationShell_Asset()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	Asset getAsset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getAsset <em>Asset</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Asset</em>' reference.
+	 * @see #getAsset()
+	 * @generated
+	 */
+	void setAsset(Asset value);
+
+	/**
+	 * Returns the value of the '<em><b>Submodel</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.aas.Submodel}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Submodel</em>' reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Submodel</em>' reference list.
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAssetAdministrationShell_Submodel()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	EList<Submodel> getSubmodel();
+
+	/**
+	 * Returns the value of the '<em><b>Url</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Url</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Url</em>' attribute.
+	 * @see #setUrl(String)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAssetAdministrationShell_Url()
+	 * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+	 * @generated
+	 */
+	String getUrl();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getUrl <em>Url</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Url</em>' attribute.
+	 * @see #getUrl()
+	 * @generated
+	 */
+	void setUrl(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Port</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Port</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Port</em>' attribute.
+	 * @see #setPort(int)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getAssetAdministrationShell_Port()
+	 * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+	 * @generated
+	 */
+	int getPort();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.AssetAdministrationShell#getPort <em>Port</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Port</em>' attribute.
+	 * @see #getPort()
+	 * @generated
+	 */
+	void setPort(int value);
+
+} // AssetAdministrationShell
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AssetKind.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AssetKind.java
new file mode 100644
index 0000000..c40d5e3
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/AssetKind.java
@@ -0,0 +1,241 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Asset Kind</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getAssetKind()
+ * @model
+ * @generated
+ */
+public enum AssetKind implements Enumerator {
+	/**
+	 * The '<em><b>Type</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #TYPE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	TYPE(0, "Type", "Type"),
+
+	/**
+	 * The '<em><b>Instance</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #INSTANCE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	INSTANCE(1, "Instance", "Instance");
+
+	/**
+	 * The '<em><b>Type</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #TYPE
+	 * @model name="Type"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int TYPE_VALUE = 0;
+
+	/**
+	 * The '<em><b>Instance</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #INSTANCE
+	 * @model name="Instance"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int INSTANCE_VALUE = 1;
+
+	/**
+	 * An array of all the '<em><b>Asset Kind</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final AssetKind[] VALUES_ARRAY = new AssetKind[] {
+			TYPE,
+			INSTANCE,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Asset Kind</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<AssetKind> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Asset Kind</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static AssetKind get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			AssetKind result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Asset Kind</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static AssetKind getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			AssetKind result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Asset Kind</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static AssetKind get(int value) {
+		switch (value) {
+		case TYPE_VALUE:
+			return TYPE;
+		case INSTANCE_VALUE:
+			return INSTANCE;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private AssetKind(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // AssetKind
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/BasicEvent.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/BasicEvent.java
new file mode 100644
index 0000000..b39f774
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/BasicEvent.java
@@ -0,0 +1,66 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.uml2.uml.Element;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Basic Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.BasicEvent#getObserved <em>Observed</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getBasicEvent()
+ * @model
+ * @generated
+ */
+public interface BasicEvent extends Event {
+	/**
+	 * Returns the value of the '<em><b>Observed</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Observed</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Observed</em>' reference.
+	 * @see #setObserved(Element)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getBasicEvent_Observed()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	Element getObserved();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.BasicEvent#getObserved <em>Observed</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Observed</em>' reference.
+	 * @see #getObserved()
+	 * @generated
+	 */
+	void setObserved(Element value);
+
+} // BasicEvent
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Capability.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Capability.java
new file mode 100644
index 0000000..adfb4f5
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Capability.java
@@ -0,0 +1,66 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Capability</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Capability#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getCapability()
+ * @model annotation="duplicates"
+ * @generated
+ */
+public interface Capability extends SubmodelElement {
+	/**
+	 * Returns the value of the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Property</em>' reference.
+	 * @see #setBase_Property(Property)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getCapability_Base_Property()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	Property getBase_Property();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Capability#getBase_Property <em>Base Property</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Property</em>' reference.
+	 * @see #getBase_Property()
+	 * @generated
+	 */
+	void setBase_Property(Property value);
+
+} // Capability
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Certificate.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Certificate.java
new file mode 100644
index 0000000..5269b83
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Certificate.java
@@ -0,0 +1,31 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Certificate</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getCertificate()
+ * @model
+ * @generated
+ */
+public interface Certificate extends EObject {
+} // Certificate
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/DataElement.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/DataElement.java
new file mode 100644
index 0000000..b3ca52b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/DataElement.java
@@ -0,0 +1,67 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Data Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.DataElement#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getDataElement()
+ * @model abstract="true"
+ *        annotation="duplicates"
+ * @generated
+ */
+public interface DataElement extends SubmodelElement {
+	/**
+	 * Returns the value of the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Property</em>' reference.
+	 * @see #setBase_Property(Property)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getDataElement_Base_Property()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	Property getBase_Property();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.DataElement#getBase_Property <em>Base Property</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Property</em>' reference.
+	 * @see #getBase_Property()
+	 * @generated
+	 */
+	void setBase_Property(Property value);
+
+} // DataElement
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Endpoint.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Endpoint.java
new file mode 100644
index 0000000..d486150
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Endpoint.java
@@ -0,0 +1,99 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Endpoint</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Endpoint#getAddress <em>Address</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Endpoint#getProtocol <em>Protocol</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getEndpoint()
+ * @model
+ * @generated
+ */
+public interface Endpoint extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Address</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Address</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Address</em>' attribute.
+	 * @see #setAddress(String)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getEndpoint_Address()
+	 * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+	 * @generated
+	 */
+	String getAddress();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Endpoint#getAddress <em>Address</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Address</em>' attribute.
+	 * @see #getAddress()
+	 * @generated
+	 */
+	void setAddress(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Protocol</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.papyrus.aas.ProtocolKind}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Protocol</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Protocol</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.ProtocolKind
+	 * @see #setProtocol(ProtocolKind)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getEndpoint_Protocol()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	ProtocolKind getProtocol();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Endpoint#getProtocol <em>Protocol</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Protocol</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.ProtocolKind
+	 * @see #getProtocol()
+	 * @generated
+	 */
+	void setProtocol(ProtocolKind value);
+
+} // Endpoint
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Entity.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Entity.java
new file mode 100644
index 0000000..688bf99
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Entity.java
@@ -0,0 +1,98 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Entity</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Entity#getEntityType <em>Entity Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Entity#getAsset <em>Asset</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getEntity()
+ * @model
+ * @generated
+ */
+public interface Entity extends SubmodelElement {
+	/**
+	 * Returns the value of the '<em><b>Entity Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.papyrus.aas.EntityType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Entity Type</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Entity Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.EntityType
+	 * @see #setEntityType(EntityType)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getEntity_EntityType()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	EntityType getEntityType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Entity#getEntityType <em>Entity Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Entity Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.EntityType
+	 * @see #getEntityType()
+	 * @generated
+	 */
+	void setEntityType(EntityType value);
+
+	/**
+	 * Returns the value of the '<em><b>Asset</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Asset</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Asset</em>' reference.
+	 * @see #setAsset(Asset)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getEntity_Asset()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	Asset getAsset();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Entity#getAsset <em>Asset</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Asset</em>' reference.
+	 * @see #getAsset()
+	 * @generated
+	 */
+	void setAsset(Asset value);
+
+} // Entity
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/EntityType.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/EntityType.java
new file mode 100644
index 0000000..08283e1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/EntityType.java
@@ -0,0 +1,241 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Entity Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getEntityType()
+ * @model
+ * @generated
+ */
+public enum EntityType implements Enumerator {
+	/**
+	 * The '<em><b>Co Managed Entity</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CO_MANAGED_ENTITY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CO_MANAGED_ENTITY(0, "CoManagedEntity", "CoManagedEntity"),
+
+	/**
+	 * The '<em><b>Self Managed Entity</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SELF_MANAGED_ENTITY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SELF_MANAGED_ENTITY(1, "SelfManagedEntity", "SelfManagedEntity");
+
+	/**
+	 * The '<em><b>Co Managed Entity</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CO_MANAGED_ENTITY
+	 * @model name="CoManagedEntity"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CO_MANAGED_ENTITY_VALUE = 0;
+
+	/**
+	 * The '<em><b>Self Managed Entity</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SELF_MANAGED_ENTITY
+	 * @model name="SelfManagedEntity"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SELF_MANAGED_ENTITY_VALUE = 1;
+
+	/**
+	 * An array of all the '<em><b>Entity Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final EntityType[] VALUES_ARRAY = new EntityType[] {
+			CO_MANAGED_ENTITY,
+			SELF_MANAGED_ENTITY,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Entity Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<EntityType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Entity Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static EntityType get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			EntityType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Entity Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static EntityType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			EntityType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Entity Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static EntityType get(int value) {
+		switch (value) {
+		case CO_MANAGED_ENTITY_VALUE:
+			return CO_MANAGED_ENTITY;
+		case SELF_MANAGED_ENTITY_VALUE:
+			return SELF_MANAGED_ENTITY;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EntityType(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // EntityType
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Event.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Event.java
new file mode 100644
index 0000000..d726774
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Event.java
@@ -0,0 +1,67 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Event</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Event#getBase_Property <em>Base Property</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getEvent()
+ * @model abstract="true"
+ *        annotation="duplicates"
+ * @generated
+ */
+public interface Event extends SubmodelElement {
+	/**
+	 * Returns the value of the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Property</em>' reference.
+	 * @see #setBase_Property(Property)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getEvent_Base_Property()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	Property getBase_Property();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Event#getBase_Property <em>Base Property</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Property</em>' reference.
+	 * @see #getBase_Property()
+	 * @generated
+	 */
+	void setBase_Property(Property value);
+
+} // Event
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/File.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/File.java
new file mode 100644
index 0000000..00d3d96
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/File.java
@@ -0,0 +1,102 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>File</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A File is a data element that represents an address to a file. The value is an URI that can represent an absolute or relative path.
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.File#getPath <em>Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.File#getMimeType <em>Mime Type</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getFile()
+ * @model
+ * @generated
+ */
+public interface File extends DataElement {
+	/**
+	 * Returns the value of the '<em><b>Path</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Path</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Path</em>' attribute.
+	 * @see #setPath(String)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getFile_Path()
+	 * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+	 * @generated
+	 */
+	String getPath();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.File#getPath <em>Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Path</em>' attribute.
+	 * @see #getPath()
+	 * @generated
+	 */
+	void setPath(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Mime Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.papyrus.aas.MimeType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Mime Type</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Mime Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.MimeType
+	 * @see #setMimeType(MimeType)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getFile_MimeType()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	MimeType getMimeType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.File#getMimeType <em>Mime Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Mime Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.MimeType
+	 * @see #getMimeType()
+	 * @generated
+	 */
+	void setMimeType(MimeType value);
+
+} // File
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/HasKind.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/HasKind.java
new file mode 100644
index 0000000..5411d39
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/HasKind.java
@@ -0,0 +1,100 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Has Kind</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.HasKind#getKind <em>Kind</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.HasKind#getBase_HasKind_Class <em>Base Has Kind Class</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getHasKind()
+ * @model abstract="true"
+ * @generated
+ */
+public interface HasKind extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Kind</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.papyrus.aas.ModelingKind}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Kind</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Kind</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.ModelingKind
+	 * @see #setKind(ModelingKind)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getHasKind_Kind()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	ModelingKind getKind();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.HasKind#getKind <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Kind</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.ModelingKind
+	 * @see #getKind()
+	 * @generated
+	 */
+	void setKind(ModelingKind value);
+
+	/**
+	 * Returns the value of the '<em><b>Base Has Kind Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Has Kind Class</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Has Kind Class</em>' reference.
+	 * @see #setBase_HasKind_Class(org.eclipse.uml2.uml.Class)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getHasKind_Base_HasKind_Class()
+	 * @model ordered="false"
+	 *        annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='base_Class'"
+	 * @generated
+	 */
+	org.eclipse.uml2.uml.Class getBase_HasKind_Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.HasKind#getBase_HasKind_Class <em>Base Has Kind Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Has Kind Class</em>' reference.
+	 * @see #getBase_HasKind_Class()
+	 * @generated
+	 */
+	void setBase_HasKind_Class(org.eclipse.uml2.uml.Class value);
+
+} // HasKind
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/HasSemantics.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/HasSemantics.java
new file mode 100644
index 0000000..c568ea8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/HasSemantics.java
@@ -0,0 +1,102 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Has Semantics</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * semanticid is present in Basyx but not used
+ * semanticid should be typed by an URI or a refereable
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.HasSemantics#getSemanticId <em>Semantic Id</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.HasSemantics#getBase_HasSemantics_Class <em>Base Has Semantics Class</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getHasSemantics()
+ * @model abstract="true"
+ * @generated
+ */
+public interface HasSemantics extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Semantic Id</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Semantic Id</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Semantic Id</em>' reference.
+	 * @see #setSemanticId(Reference)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getHasSemantics_SemanticId()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	Reference getSemanticId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.HasSemantics#getSemanticId <em>Semantic Id</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Semantic Id</em>' reference.
+	 * @see #getSemanticId()
+	 * @generated
+	 */
+	void setSemanticId(Reference value);
+
+	/**
+	 * Returns the value of the '<em><b>Base Has Semantics Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Has Semantics Class</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Has Semantics Class</em>' reference.
+	 * @see #setBase_HasSemantics_Class(org.eclipse.uml2.uml.Class)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getHasSemantics_Base_HasSemantics_Class()
+	 * @model ordered="false"
+	 *        annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='base_Class'"
+	 * @generated
+	 */
+	org.eclipse.uml2.uml.Class getBase_HasSemantics_Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.HasSemantics#getBase_HasSemantics_Class <em>Base Has Semantics Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Has Semantics Class</em>' reference.
+	 * @see #getBase_HasSemantics_Class()
+	 * @generated
+	 */
+	void setBase_HasSemantics_Class(org.eclipse.uml2.uml.Class value);
+
+} // HasSemantics
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Identifiable.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Identifiable.java
new file mode 100644
index 0000000..4cb9161
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Identifiable.java
@@ -0,0 +1,95 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Identifiable</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Identifiable#getAdministration <em>Administration</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Identifiable#getIdentification <em>Identification</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getIdentifiable()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Identifiable extends Refereable {
+	/**
+	 * Returns the value of the '<em><b>Administration</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Administration</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Administration</em>' containment reference.
+	 * @see #setAdministration(AdministrativeInformation)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getIdentifiable_Administration()
+	 * @model containment="true" ordered="false"
+	 * @generated
+	 */
+	AdministrativeInformation getAdministration();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Identifiable#getAdministration <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Administration</em>' containment reference.
+	 * @see #getAdministration()
+	 * @generated
+	 */
+	void setAdministration(AdministrativeInformation value);
+
+	/**
+	 * Returns the value of the '<em><b>Identification</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Identification</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Identification</em>' containment reference.
+	 * @see #setIdentification(Identifier)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getIdentifiable_Identification()
+	 * @model containment="true" required="true" ordered="false"
+	 * @generated
+	 */
+	Identifier getIdentification();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Identifiable#getIdentification <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Identification</em>' containment reference.
+	 * @see #getIdentification()
+	 * @generated
+	 */
+	void setIdentification(Identifier value);
+
+} // Identifiable
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/IdentifiableElement.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/IdentifiableElement.java
new file mode 100644
index 0000000..db6befb
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/IdentifiableElement.java
@@ -0,0 +1,293 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Identifiable Element</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getIdentifiableElement()
+ * @model
+ * @generated
+ */
+public enum IdentifiableElement implements Enumerator {
+	/**
+	 * The '<em><b>Asset</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ASSET_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ASSET(0, "Asset", "Asset"),
+
+	/**
+	 * The '<em><b>Asset Administration Shell</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ASSET_ADMINISTRATION_SHELL_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ASSET_ADMINISTRATION_SHELL(1, "AssetAdministrationShell", "AssetAdministrationShell"),
+
+	/**
+	 * The '<em><b>Concept Description</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CONCEPT_DESCRIPTION_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CONCEPT_DESCRIPTION(2, "ConceptDescription", "ConceptDescription"),
+
+	/**
+	 * The '<em><b>Submodel</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SUBMODEL_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SUBMODEL(3, "Submodel", "Submodel");
+
+	/**
+	 * The '<em><b>Asset</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ASSET
+	 * @model name="Asset"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ASSET_VALUE = 0;
+
+	/**
+	 * The '<em><b>Asset Administration Shell</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ASSET_ADMINISTRATION_SHELL
+	 * @model name="AssetAdministrationShell"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ASSET_ADMINISTRATION_SHELL_VALUE = 1;
+
+	/**
+	 * The '<em><b>Concept Description</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CONCEPT_DESCRIPTION
+	 * @model name="ConceptDescription"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CONCEPT_DESCRIPTION_VALUE = 2;
+
+	/**
+	 * The '<em><b>Submodel</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SUBMODEL
+	 * @model name="Submodel"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SUBMODEL_VALUE = 3;
+
+	/**
+	 * An array of all the '<em><b>Identifiable Element</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final IdentifiableElement[] VALUES_ARRAY = new IdentifiableElement[] {
+			ASSET,
+			ASSET_ADMINISTRATION_SHELL,
+			CONCEPT_DESCRIPTION,
+			SUBMODEL,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Identifiable Element</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<IdentifiableElement> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Identifiable Element</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdentifiableElement get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			IdentifiableElement result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Identifiable Element</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdentifiableElement getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			IdentifiableElement result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Identifiable Element</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdentifiableElement get(int value) {
+		switch (value) {
+		case ASSET_VALUE:
+			return ASSET;
+		case ASSET_ADMINISTRATION_SHELL_VALUE:
+			return ASSET_ADMINISTRATION_SHELL;
+		case CONCEPT_DESCRIPTION_VALUE:
+			return CONCEPT_DESCRIPTION;
+		case SUBMODEL_VALUE:
+			return SUBMODEL;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private IdentifiableElement(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // IdentifiableElement
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Identifier.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Identifier.java
new file mode 100644
index 0000000..1a53cb2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Identifier.java
@@ -0,0 +1,99 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Identifier</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Identifier#getIdType <em>Id Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Identifier#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getIdentifier()
+ * @model
+ * @generated
+ */
+public interface Identifier extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.papyrus.aas.IdentifierType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id Type</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Id Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.IdentifierType
+	 * @see #setIdType(IdentifierType)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getIdentifier_IdType()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	IdentifierType getIdType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Identifier#getIdType <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Id Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.IdentifierType
+	 * @see #getIdType()
+	 * @generated
+	 */
+	void setIdType(IdentifierType value);
+
+	/**
+	 * Returns the value of the '<em><b>Id</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Id</em>' attribute.
+	 * @see #setId(String)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getIdentifier_Id()
+	 * @model dataType="org.eclipse.uml2.types.String" required="true" ordered="false"
+	 * @generated
+	 */
+	String getId();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Identifier#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);
+
+} // Identifier
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/IdentifierType.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/IdentifierType.java
new file mode 100644
index 0000000..3a839ae
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/IdentifierType.java
@@ -0,0 +1,271 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Identifier Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * <!-- begin-model-doc -->
+ * IRDI: International Registration Data Identifier
+ * IRI: Internationalized Resource Identifier
+ * <!-- end-model-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getIdentifierType()
+ * @model
+ * @generated
+ */
+public enum IdentifierType implements Enumerator {
+	/**
+	 * The '<em><b>Custom</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CUSTOM_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CUSTOM(0, "Custom", "Custom"),
+
+	/**
+	 * The '<em><b>IRDI</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #IRDI_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	IRDI(1, "IRDI", "IRDI"),
+
+	/**
+	 * The '<em><b>IRI</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #IRI_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	IRI(2, "IRI", "IRI");
+
+	/**
+	 * The '<em><b>Custom</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CUSTOM
+	 * @model name="Custom"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CUSTOM_VALUE = 0;
+
+	/**
+	 * The '<em><b>IRDI</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #IRDI
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int IRDI_VALUE = 1;
+
+	/**
+	 * The '<em><b>IRI</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #IRI
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int IRI_VALUE = 2;
+
+	/**
+	 * An array of all the '<em><b>Identifier Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final IdentifierType[] VALUES_ARRAY = new IdentifierType[] {
+			CUSTOM,
+			IRDI,
+			IRI,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Identifier Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<IdentifierType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Identifier Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdentifierType get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			IdentifierType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Identifier Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdentifierType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			IdentifierType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Identifier Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static IdentifierType get(int value) {
+		switch (value) {
+		case CUSTOM_VALUE:
+			return CUSTOM;
+		case IRDI_VALUE:
+			return IRDI;
+		case IRI_VALUE:
+			return IRI;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private IdentifierType(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // IdentifierType
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Key.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Key.java
new file mode 100644
index 0000000..3a020a2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Key.java
@@ -0,0 +1,163 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Key</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Key#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Key#isLocal <em>Local</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Key#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Key#getIdType <em>Id Type</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getKey()
+ * @model
+ * @generated
+ */
+public interface Key extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.papyrus.aas.KeyElements}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Type</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.KeyElements
+	 * @see #setType(KeyElements)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getKey_Type()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	KeyElements getType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Key#getType <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.KeyElements
+	 * @see #getType()
+	 * @generated
+	 */
+	void setType(KeyElements value);
+
+	/**
+	 * Returns the value of the '<em><b>Local</b></em>' attribute.
+	 * The default value is <code>"true"</code>.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Local</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Local</em>' attribute.
+	 * @see #setLocal(boolean)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getKey_Local()
+	 * @model default="true" dataType="org.eclipse.uml2.types.Boolean" ordered="false"
+	 * @generated
+	 */
+	boolean isLocal();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Key#isLocal <em>Local</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Local</em>' attribute.
+	 * @see #isLocal()
+	 * @generated
+	 */
+	void setLocal(boolean value);
+
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Value</em>' attribute.
+	 * @see #setValue(String)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getKey_Value()
+	 * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+	 * @generated
+	 */
+	String getValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Key#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 Type</b></em>' attribute.
+	 * The literals are from the enumeration {@link org.eclipse.papyrus.aas.KeyType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id Type</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Id Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.KeyType
+	 * @see #setIdType(KeyType)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getKey_IdType()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	KeyType getIdType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Key#getIdType <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Id Type</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.KeyType
+	 * @see #getIdType()
+	 * @generated
+	 */
+	void setIdType(KeyType value);
+
+} // Key
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/KeyElements.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/KeyElements.java
new file mode 100644
index 0000000..f39e36a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/KeyElements.java
@@ -0,0 +1,241 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Key Elements</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getKeyElements()
+ * @model extendedMetaData="baseType='ReferableElements'"
+ * @generated
+ */
+public enum KeyElements implements Enumerator {
+	/**
+	 * The '<em><b>Global Reference</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #GLOBAL_REFERENCE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	GLOBAL_REFERENCE(0, "GlobalReference", "GlobalReference"),
+
+	/**
+	 * The '<em><b>Fragment Reference</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #FRAGMENT_REFERENCE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	FRAGMENT_REFERENCE(1, "FragmentReference", "FragmentReference");
+
+	/**
+	 * The '<em><b>Global Reference</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #GLOBAL_REFERENCE
+	 * @model name="GlobalReference"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int GLOBAL_REFERENCE_VALUE = 0;
+
+	/**
+	 * The '<em><b>Fragment Reference</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #FRAGMENT_REFERENCE
+	 * @model name="FragmentReference"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int FRAGMENT_REFERENCE_VALUE = 1;
+
+	/**
+	 * An array of all the '<em><b>Key Elements</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final KeyElements[] VALUES_ARRAY = new KeyElements[] {
+			GLOBAL_REFERENCE,
+			FRAGMENT_REFERENCE,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Key Elements</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<KeyElements> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Key Elements</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static KeyElements get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			KeyElements result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Key Elements</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static KeyElements getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			KeyElements result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Key Elements</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static KeyElements get(int value) {
+		switch (value) {
+		case GLOBAL_REFERENCE_VALUE:
+			return GLOBAL_REFERENCE;
+		case FRAGMENT_REFERENCE_VALUE:
+			return FRAGMENT_REFERENCE;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private KeyElements(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // KeyElements
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/KeyType.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/KeyType.java
new file mode 100644
index 0000000..a59f5b0
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/KeyType.java
@@ -0,0 +1,191 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Key Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getKeyType()
+ * @model extendedMetaData="baseType='LocalKeyType'"
+ * @generated
+ */
+public enum KeyType implements Enumerator {
+	;
+
+	/**
+	 * An array of all the '<em><b>Key Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final KeyType[] VALUES_ARRAY = new KeyType[] {
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Key Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<KeyType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Key Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static KeyType get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			KeyType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Key Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static KeyType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			KeyType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Key Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static KeyType get(int value) {
+		switch (value) {
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private KeyType(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // KeyType
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/LocalKeyType.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/LocalKeyType.java
new file mode 100644
index 0000000..326e7c0
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/LocalKeyType.java
@@ -0,0 +1,241 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Local Key Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getLocalKeyType()
+ * @model
+ * @generated
+ */
+public enum LocalKeyType implements Enumerator {
+	/**
+	 * The '<em><b>Id Short</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ID_SHORT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ID_SHORT(0, "IdShort", "IdShort"),
+
+	/**
+	 * The '<em><b>Fragment Id</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #FRAGMENT_ID_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	FRAGMENT_ID(1, "FragmentId", "FragmentId");
+
+	/**
+	 * The '<em><b>Id Short</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ID_SHORT
+	 * @model name="IdShort"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ID_SHORT_VALUE = 0;
+
+	/**
+	 * The '<em><b>Fragment Id</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #FRAGMENT_ID
+	 * @model name="FragmentId"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int FRAGMENT_ID_VALUE = 1;
+
+	/**
+	 * An array of all the '<em><b>Local Key Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final LocalKeyType[] VALUES_ARRAY = new LocalKeyType[] {
+			ID_SHORT,
+			FRAGMENT_ID,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Local Key Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<LocalKeyType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Local Key Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static LocalKeyType get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			LocalKeyType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Local Key Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static LocalKeyType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			LocalKeyType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Local Key Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static LocalKeyType get(int value) {
+		switch (value) {
+		case ID_SHORT_VALUE:
+			return ID_SHORT;
+		case FRAGMENT_ID_VALUE:
+			return FRAGMENT_ID;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private LocalKeyType(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // LocalKeyType
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/MimeType.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/MimeType.java
new file mode 100644
index 0000000..8689530
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/MimeType.java
@@ -0,0 +1,377 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Mime Type</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getMimeType()
+ * @model
+ * @generated
+ */
+public enum MimeType implements Enumerator {
+	/**
+	 * The '<em><b>Applicationjson</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #APPLICATIONJSON_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	APPLICATIONJSON(0, "applicationjson", "applicationjson"),
+
+	/**
+	 * The '<em><b>Applicationxls</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #APPLICATIONXLS_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	APPLICATIONXLS(1, "applicationxls", "applicationxls"),
+
+	/**
+	 * The '<em><b>Imagejpg</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #IMAGEJPG_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	IMAGEJPG(2, "imagejpg", "imagejpg"),
+
+	/**
+	 * The '<em><b>Applicationpdf</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #APPLICATIONPDF_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	APPLICATIONPDF(3, "applicationpdf", "applicationpdf"),
+
+	/**
+	 * The '<em><b>Applicationzip</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #APPLICATIONZIP_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	APPLICATIONZIP(4, "applicationzip", "applicationzip"),
+
+	/**
+	 * The '<em><b>Imagebmp</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #IMAGEBMP_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	IMAGEBMP(5, "imagebmp", "imagebmp"),
+
+	/**
+	 * The '<em><b>Other</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OTHER_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	OTHER(6, "other", "other");
+
+	/**
+	 * The '<em><b>Applicationjson</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #APPLICATIONJSON
+	 * @model name="applicationjson"
+	 *        annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='application/json'"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int APPLICATIONJSON_VALUE = 0;
+
+	/**
+	 * The '<em><b>Applicationxls</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #APPLICATIONXLS
+	 * @model name="applicationxls"
+	 *        annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='application/xls'"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int APPLICATIONXLS_VALUE = 1;
+
+	/**
+	 * The '<em><b>Imagejpg</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #IMAGEJPG
+	 * @model name="imagejpg"
+	 *        annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='image/jpg'"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int IMAGEJPG_VALUE = 2;
+
+	/**
+	 * The '<em><b>Applicationpdf</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #APPLICATIONPDF
+	 * @model name="applicationpdf"
+	 *        annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='application/pdf'"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int APPLICATIONPDF_VALUE = 3;
+
+	/**
+	 * The '<em><b>Applicationzip</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #APPLICATIONZIP
+	 * @model name="applicationzip"
+	 *        annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='application/zip'"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int APPLICATIONZIP_VALUE = 4;
+
+	/**
+	 * The '<em><b>Imagebmp</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #IMAGEBMP
+	 * @model name="imagebmp"
+	 *        annotation="http://www.eclipse.org/uml2/2.0.0/UML originalName='image/bmp'"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int IMAGEBMP_VALUE = 5;
+
+	/**
+	 * The '<em><b>Other</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OTHER
+	 * @model name="other"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int OTHER_VALUE = 6;
+
+	/**
+	 * An array of all the '<em><b>Mime Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final MimeType[] VALUES_ARRAY = new MimeType[] {
+			APPLICATIONJSON,
+			APPLICATIONXLS,
+			IMAGEJPG,
+			APPLICATIONPDF,
+			APPLICATIONZIP,
+			IMAGEBMP,
+			OTHER,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Mime Type</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<MimeType> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Mime Type</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static MimeType get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			MimeType result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Mime Type</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static MimeType getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			MimeType result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Mime Type</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static MimeType get(int value) {
+		switch (value) {
+		case APPLICATIONJSON_VALUE:
+			return APPLICATIONJSON;
+		case APPLICATIONXLS_VALUE:
+			return APPLICATIONXLS;
+		case IMAGEJPG_VALUE:
+			return IMAGEJPG;
+		case APPLICATIONPDF_VALUE:
+			return APPLICATIONPDF;
+		case APPLICATIONZIP_VALUE:
+			return APPLICATIONZIP;
+		case IMAGEBMP_VALUE:
+			return IMAGEBMP;
+		case OTHER_VALUE:
+			return OTHER;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private MimeType(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // MimeType
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ModelingKind.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ModelingKind.java
new file mode 100644
index 0000000..b48b62b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ModelingKind.java
@@ -0,0 +1,241 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Modeling Kind</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getModelingKind()
+ * @model
+ * @generated
+ */
+public enum ModelingKind implements Enumerator {
+	/**
+	 * The '<em><b>Template</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #TEMPLATE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	TEMPLATE(0, "Template", "Template"),
+
+	/**
+	 * The '<em><b>Instance</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #INSTANCE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	INSTANCE(1, "Instance", "Instance");
+
+	/**
+	 * The '<em><b>Template</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #TEMPLATE
+	 * @model name="Template"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int TEMPLATE_VALUE = 0;
+
+	/**
+	 * The '<em><b>Instance</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #INSTANCE
+	 * @model name="Instance"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int INSTANCE_VALUE = 1;
+
+	/**
+	 * An array of all the '<em><b>Modeling Kind</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final ModelingKind[] VALUES_ARRAY = new ModelingKind[] {
+			TEMPLATE,
+			INSTANCE,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Modeling Kind</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<ModelingKind> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Modeling Kind</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static ModelingKind get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ModelingKind result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Modeling Kind</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static ModelingKind getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ModelingKind result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Modeling Kind</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static ModelingKind get(int value) {
+		switch (value) {
+		case TEMPLATE_VALUE:
+			return TEMPLATE;
+		case INSTANCE_VALUE:
+			return INSTANCE;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private ModelingKind(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // ModelingKind
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Operation.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Operation.java
new file mode 100644
index 0000000..5320c77
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Operation.java
@@ -0,0 +1,65 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Operation</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Operation#getBase_Operation <em>Base Operation</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getOperation()
+ * @model annotation="duplicates"
+ * @generated
+ */
+public interface Operation extends SubmodelElement {
+	/**
+	 * Returns the value of the '<em><b>Base Operation</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Operation</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Operation</em>' reference.
+	 * @see #setBase_Operation(org.eclipse.uml2.uml.Operation)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getOperation_Base_Operation()
+	 * @model required="true" ordered="false"
+	 * @generated
+	 */
+	org.eclipse.uml2.uml.Operation getBase_Operation();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Operation#getBase_Operation <em>Base Operation</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Operation</em>' reference.
+	 * @see #getBase_Operation()
+	 * @generated
+	 */
+	void setBase_Operation(org.eclipse.uml2.uml.Operation value);
+
+} // Operation
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Property.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Property.java
new file mode 100644
index 0000000..c1b4651
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Property.java
@@ -0,0 +1,30 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getProperty()
+ * @model
+ * @generated
+ */
+public interface Property extends DataElement {
+} // Property
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ProtocolKind.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ProtocolKind.java
new file mode 100644
index 0000000..75b8af6
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ProtocolKind.java
@@ -0,0 +1,319 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Protocol Kind</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getProtocolKind()
+ * @model
+ * @generated
+ */
+public enum ProtocolKind implements Enumerator {
+	/**
+	 * The '<em><b>HTTP</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #HTTP_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	HTTP(0, "HTTP", "HTTP"),
+
+	/**
+	 * The '<em><b>MQTT</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #MQTT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	MQTT(1, "MQTT", "MQTT"),
+
+	/**
+	 * The '<em><b>OPCUA</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OPCUA_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	OPCUA(2, "OPCUA", "OPCUA"),
+
+	/**
+	 * The '<em><b>Co AP</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CO_AP_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CO_AP(3, "CoAP", "CoAP"),
+
+	/**
+	 * The '<em><b>OTHER</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OTHER_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	OTHER(4, "OTHER", "OTHER");
+
+	/**
+	 * The '<em><b>HTTP</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #HTTP
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int HTTP_VALUE = 0;
+
+	/**
+	 * The '<em><b>MQTT</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #MQTT
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int MQTT_VALUE = 1;
+
+	/**
+	 * The '<em><b>OPCUA</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OPCUA
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int OPCUA_VALUE = 2;
+
+	/**
+	 * The '<em><b>Co AP</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CO_AP
+	 * @model name="CoAP"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CO_AP_VALUE = 3;
+
+	/**
+	 * The '<em><b>OTHER</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OTHER
+	 * @model
+	 * @generated
+	 * @ordered
+	 */
+	public static final int OTHER_VALUE = 4;
+
+	/**
+	 * An array of all the '<em><b>Protocol Kind</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final ProtocolKind[] VALUES_ARRAY = new ProtocolKind[] {
+			HTTP,
+			MQTT,
+			OPCUA,
+			CO_AP,
+			OTHER,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Protocol Kind</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<ProtocolKind> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Protocol Kind</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static ProtocolKind get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ProtocolKind result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Protocol Kind</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static ProtocolKind getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ProtocolKind result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Protocol Kind</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static ProtocolKind get(int value) {
+		switch (value) {
+		case HTTP_VALUE:
+			return HTTP;
+		case MQTT_VALUE:
+			return MQTT;
+		case OPCUA_VALUE:
+			return OPCUA;
+		case CO_AP_VALUE:
+			return CO_AP;
+		case OTHER_VALUE:
+			return OTHER;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private ProtocolKind(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // ProtocolKind
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Range.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Range.java
new file mode 100644
index 0000000..ba7065d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Range.java
@@ -0,0 +1,95 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Range</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Range#getMin <em>Min</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Range#getMax <em>Max</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getRange()
+ * @model
+ * @generated
+ */
+public interface Range extends DataElement {
+	/**
+	 * Returns the value of the '<em><b>Min</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Min</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Min</em>' attribute.
+	 * @see #setMin(int)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getRange_Min()
+	 * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+	 * @generated
+	 */
+	int getMin();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Range#getMin <em>Min</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Min</em>' attribute.
+	 * @see #getMin()
+	 * @generated
+	 */
+	void setMin(int value);
+
+	/**
+	 * Returns the value of the '<em><b>Max</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Max</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Max</em>' attribute.
+	 * @see #setMax(int)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getRange_Max()
+	 * @model dataType="org.eclipse.uml2.types.Integer" ordered="false"
+	 * @generated
+	 */
+	int getMax();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Range#getMax <em>Max</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Max</em>' attribute.
+	 * @see #getMax()
+	 * @generated
+	 */
+	void setMax(int value);
+
+} // Range
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ReferableElements.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ReferableElements.java
new file mode 100644
index 0000000..97b76cf
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ReferableElements.java
@@ -0,0 +1,683 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
+
+import org.eclipse.emf.common.util.Enumerator;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the literals of the enumeration '<em><b>Referable Elements</b></em>',
+ * and utility methods for working with them.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage#getReferableElements()
+ * @model extendedMetaData="baseType='IdentifiableElement'"
+ * @generated
+ */
+public enum ReferableElements implements Enumerator {
+	/**
+	 * The '<em><b>Access Permission Rule</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ACCESS_PERMISSION_RULE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ACCESS_PERMISSION_RULE(0, "AccessPermissionRule", "AccessPermissionRule"),
+
+	/**
+	 * The '<em><b>Annotated Relationship Element</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ANNOTATED_RELATIONSHIP_ELEMENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ANNOTATED_RELATIONSHIP_ELEMENT(1, "AnnotatedRelationshipElement", "AnnotatedRelationshipElement"),
+
+	/**
+	 * The '<em><b>Basic Event</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #BASIC_EVENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	BASIC_EVENT(2, "BasicEvent", "BasicEvent"),
+
+	/**
+	 * The '<em><b>Blob</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #BLOB_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	BLOB(3, "Blob", "Blob"),
+
+	/**
+	 * The '<em><b>Capability</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CAPABILITY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CAPABILITY(4, "Capability", "Capability"),
+
+	/**
+	 * The '<em><b>Concept Dictionary</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CONCEPT_DICTIONARY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	CONCEPT_DICTIONARY(5, "ConceptDictionary", "ConceptDictionary"),
+
+	/**
+	 * The '<em><b>Data Element</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #DATA_ELEMENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	DATA_ELEMENT(6, "DataElement", "DataElement"),
+
+	/**
+	 * The '<em><b>File</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #FILE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	FILE(7, "File", "File"),
+
+	/**
+	 * The '<em><b>Entity</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ENTITY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	ENTITY(8, "Entity", "Entity"),
+
+	/**
+	 * The '<em><b>Event</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #EVENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	EVENT(9, "Event", "Event"),
+
+	/**
+	 * The '<em><b>Multi Language Property</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #MULTI_LANGUAGE_PROPERTY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	MULTI_LANGUAGE_PROPERTY(10, "MultiLanguageProperty", "MultiLanguageProperty"),
+
+	/**
+	 * The '<em><b>Operation</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OPERATION_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	OPERATION(11, "Operation", "Operation"),
+
+	/**
+	 * The '<em><b>Property</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #PROPERTY_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	PROPERTY(12, "Property", "Property"),
+
+	/**
+	 * The '<em><b>Range</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #RANGE_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	RANGE(13, "Range", "Range"),
+
+	/**
+	 * The '<em><b>Reference Element</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #REFERENCE_ELEMENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	REFERENCE_ELEMENT(14, "ReferenceElement", "ReferenceElement"),
+
+	/**
+	 * The '<em><b>Relationship Element</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #RELATIONSHIP_ELEMENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	RELATIONSHIP_ELEMENT(15, "RelationshipElement", "RelationshipElement"),
+
+	/**
+	 * The '<em><b>Submodel Element</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SUBMODEL_ELEMENT_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SUBMODEL_ELEMENT(16, "SubmodelElement", "SubmodelElement"),
+
+	/**
+	 * The '<em><b>Submodel Element Collection</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SUBMODEL_ELEMENT_COLLECTION_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	SUBMODEL_ELEMENT_COLLECTION(17, "SubmodelElementCollection", "SubmodelElementCollection"),
+
+	/**
+	 * The '<em><b>View</b></em>' literal object.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #VIEW_VALUE
+	 * @generated
+	 * @ordered
+	 */
+	VIEW(18, "View", "View");
+
+	/**
+	 * The '<em><b>Access Permission Rule</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ACCESS_PERMISSION_RULE
+	 * @model name="AccessPermissionRule"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ACCESS_PERMISSION_RULE_VALUE = 0;
+
+	/**
+	 * The '<em><b>Annotated Relationship Element</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ANNOTATED_RELATIONSHIP_ELEMENT
+	 * @model name="AnnotatedRelationshipElement"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ANNOTATED_RELATIONSHIP_ELEMENT_VALUE = 1;
+
+	/**
+	 * The '<em><b>Basic Event</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #BASIC_EVENT
+	 * @model name="BasicEvent"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int BASIC_EVENT_VALUE = 2;
+
+	/**
+	 * The '<em><b>Blob</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #BLOB
+	 * @model name="Blob"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int BLOB_VALUE = 3;
+
+	/**
+	 * The '<em><b>Capability</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CAPABILITY
+	 * @model name="Capability"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CAPABILITY_VALUE = 4;
+
+	/**
+	 * The '<em><b>Concept Dictionary</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #CONCEPT_DICTIONARY
+	 * @model name="ConceptDictionary"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int CONCEPT_DICTIONARY_VALUE = 5;
+
+	/**
+	 * The '<em><b>Data Element</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #DATA_ELEMENT
+	 * @model name="DataElement"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int DATA_ELEMENT_VALUE = 6;
+
+	/**
+	 * The '<em><b>File</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #FILE
+	 * @model name="File"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int FILE_VALUE = 7;
+
+	/**
+	 * The '<em><b>Entity</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #ENTITY
+	 * @model name="Entity"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int ENTITY_VALUE = 8;
+
+	/**
+	 * The '<em><b>Event</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #EVENT
+	 * @model name="Event"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int EVENT_VALUE = 9;
+
+	/**
+	 * The '<em><b>Multi Language Property</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #MULTI_LANGUAGE_PROPERTY
+	 * @model name="MultiLanguageProperty"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int MULTI_LANGUAGE_PROPERTY_VALUE = 10;
+
+	/**
+	 * The '<em><b>Operation</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #OPERATION
+	 * @model name="Operation"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int OPERATION_VALUE = 11;
+
+	/**
+	 * The '<em><b>Property</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #PROPERTY
+	 * @model name="Property"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int PROPERTY_VALUE = 12;
+
+	/**
+	 * The '<em><b>Range</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #RANGE
+	 * @model name="Range"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int RANGE_VALUE = 13;
+
+	/**
+	 * The '<em><b>Reference Element</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #REFERENCE_ELEMENT
+	 * @model name="ReferenceElement"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int REFERENCE_ELEMENT_VALUE = 14;
+
+	/**
+	 * The '<em><b>Relationship Element</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #RELATIONSHIP_ELEMENT
+	 * @model name="RelationshipElement"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int RELATIONSHIP_ELEMENT_VALUE = 15;
+
+	/**
+	 * The '<em><b>Submodel Element</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SUBMODEL_ELEMENT
+	 * @model name="SubmodelElement"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SUBMODEL_ELEMENT_VALUE = 16;
+
+	/**
+	 * The '<em><b>Submodel Element Collection</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #SUBMODEL_ELEMENT_COLLECTION
+	 * @model name="SubmodelElementCollection"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int SUBMODEL_ELEMENT_COLLECTION_VALUE = 17;
+
+	/**
+	 * The '<em><b>View</b></em>' literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #VIEW
+	 * @model name="View"
+	 * @generated
+	 * @ordered
+	 */
+	public static final int VIEW_VALUE = 18;
+
+	/**
+	 * An array of all the '<em><b>Referable Elements</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static final ReferableElements[] VALUES_ARRAY = new ReferableElements[] {
+			ACCESS_PERMISSION_RULE,
+			ANNOTATED_RELATIONSHIP_ELEMENT,
+			BASIC_EVENT,
+			BLOB,
+			CAPABILITY,
+			CONCEPT_DICTIONARY,
+			DATA_ELEMENT,
+			FILE,
+			ENTITY,
+			EVENT,
+			MULTI_LANGUAGE_PROPERTY,
+			OPERATION,
+			PROPERTY,
+			RANGE,
+			REFERENCE_ELEMENT,
+			RELATIONSHIP_ELEMENT,
+			SUBMODEL_ELEMENT,
+			SUBMODEL_ELEMENT_COLLECTION,
+			VIEW,
+	};
+
+	/**
+	 * A public read-only list of all the '<em><b>Referable Elements</b></em>' enumerators.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static final List<ReferableElements> VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY));
+
+	/**
+	 * Returns the '<em><b>Referable Elements</b></em>' literal with the specified literal value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param literal
+	 *            the literal.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static ReferableElements get(String literal) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ReferableElements result = VALUES_ARRAY[i];
+			if (result.toString().equals(literal)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Referable Elements</b></em>' literal with the specified name.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param name
+	 *            the name.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static ReferableElements getByName(String name) {
+		for (int i = 0; i < VALUES_ARRAY.length; ++i) {
+			ReferableElements result = VALUES_ARRAY[i];
+			if (result.getName().equals(name)) {
+				return result;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * Returns the '<em><b>Referable Elements</b></em>' literal with the specified integer value.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the integer value.
+	 * @return the matching enumerator or <code>null</code>.
+	 * @generated
+	 */
+	public static ReferableElements get(int value) {
+		switch (value) {
+		case ACCESS_PERMISSION_RULE_VALUE:
+			return ACCESS_PERMISSION_RULE;
+		case ANNOTATED_RELATIONSHIP_ELEMENT_VALUE:
+			return ANNOTATED_RELATIONSHIP_ELEMENT;
+		case BASIC_EVENT_VALUE:
+			return BASIC_EVENT;
+		case BLOB_VALUE:
+			return BLOB;
+		case CAPABILITY_VALUE:
+			return CAPABILITY;
+		case CONCEPT_DICTIONARY_VALUE:
+			return CONCEPT_DICTIONARY;
+		case DATA_ELEMENT_VALUE:
+			return DATA_ELEMENT;
+		case FILE_VALUE:
+			return FILE;
+		case ENTITY_VALUE:
+			return ENTITY;
+		case EVENT_VALUE:
+			return EVENT;
+		case MULTI_LANGUAGE_PROPERTY_VALUE:
+			return MULTI_LANGUAGE_PROPERTY;
+		case OPERATION_VALUE:
+			return OPERATION;
+		case PROPERTY_VALUE:
+			return PROPERTY;
+		case RANGE_VALUE:
+			return RANGE;
+		case REFERENCE_ELEMENT_VALUE:
+			return REFERENCE_ELEMENT;
+		case RELATIONSHIP_ELEMENT_VALUE:
+			return RELATIONSHIP_ELEMENT;
+		case SUBMODEL_ELEMENT_VALUE:
+			return SUBMODEL_ELEMENT;
+		case SUBMODEL_ELEMENT_COLLECTION_VALUE:
+			return SUBMODEL_ELEMENT_COLLECTION;
+		case VIEW_VALUE:
+			return VIEW;
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final int value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String name;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private final String literal;
+
+	/**
+	 * Only this class can construct instances.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private ReferableElements(int value, String name, String literal) {
+		this.value = value;
+		this.name = name;
+		this.literal = literal;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getName() {
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getLiteral() {
+		return literal;
+	}
+
+	/**
+	 * Returns the literal value of the enumerator, which is its string representation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		return literal;
+	}
+
+} // ReferableElements
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Refereable.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Refereable.java
new file mode 100644
index 0000000..0305e68
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Refereable.java
@@ -0,0 +1,173 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Refereable</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Refereable#getIdShort <em>Id Short</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Refereable#getCategory <em>Category</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Refereable#getDescription <em>Description</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Refereable#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Refereable#getParent <em>Parent</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getRefereable()
+ * @model abstract="true"
+ * @generated
+ */
+public interface Refereable extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Id Short</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Id Short</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Id Short</em>' attribute.
+	 * @see org.eclipse.papyrus.aas.AASPackage#getRefereable_IdShort()
+	 * @model dataType="org.eclipse.uml2.types.String" required="true" transient="true" changeable="false" volatile="true" derived="true" ordered="false"
+	 * @generated
+	 */
+	String getIdShort();
+
+	/**
+	 * Returns the value of the '<em><b>Category</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Category</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Category</em>' attribute.
+	 * @see #setCategory(String)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getRefereable_Category()
+	 * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+	 * @generated
+	 */
+	String getCategory();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Refereable#getCategory <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Category</em>' attribute.
+	 * @see #getCategory()
+	 * @generated
+	 */
+	void setCategory(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Description</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Description</em>' attribute.
+	 * @see #setDescription(String)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getRefereable_Description()
+	 * @model dataType="org.eclipse.uml2.types.String" ordered="false"
+	 * @generated
+	 */
+	String getDescription();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Refereable#getDescription <em>Description</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Description</em>' attribute.
+	 * @see #getDescription()
+	 * @generated
+	 */
+	void setDescription(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Class</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Class</em>' reference.
+	 * @see #setBase_Class(org.eclipse.uml2.uml.Class)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getRefereable_Base_Class()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	org.eclipse.uml2.uml.Class getBase_Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Refereable#getBase_Class <em>Base Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Class</em>' reference.
+	 * @see #getBase_Class()
+	 * @generated
+	 */
+	void setBase_Class(org.eclipse.uml2.uml.Class value);
+
+	/**
+	 * Returns the value of the '<em><b>Parent</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Parent</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Parent</em>' reference.
+	 * @see #setParent(Refereable)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getRefereable_Parent()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	Refereable getParent();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Refereable#getParent <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Parent</em>' reference.
+	 * @see #getParent()
+	 * @generated
+	 */
+	void setParent(Refereable value);
+
+} // Refereable
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Reference.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Reference.java
new file mode 100644
index 0000000..95b6d82
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Reference.java
@@ -0,0 +1,86 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reference</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Reference#getKey <em>Key</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Reference#getBase_Class <em>Base Class</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getReference()
+ * @model
+ * @generated
+ */
+public interface Reference extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Key</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.aas.Key}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Key</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>Key</em>' containment reference list.
+	 * @see org.eclipse.papyrus.aas.AASPackage#getReference_Key()
+	 * @model containment="true" required="true" ordered="false"
+	 * @generated
+	 */
+	EList<Key> getKey();
+
+	/**
+	 * Returns the value of the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Class</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Class</em>' reference.
+	 * @see #setBase_Class(org.eclipse.uml2.uml.Class)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getReference_Base_Class()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	org.eclipse.uml2.uml.Class getBase_Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Reference#getBase_Class <em>Base Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Class</em>' reference.
+	 * @see #getBase_Class()
+	 * @generated
+	 */
+	void setBase_Class(org.eclipse.uml2.uml.Class value);
+
+} // Reference
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ReferenceElement.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ReferenceElement.java
new file mode 100644
index 0000000..56029ce
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/ReferenceElement.java
@@ -0,0 +1,65 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Reference Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.ReferenceElement#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getReferenceElement()
+ * @model
+ * @generated
+ */
+public interface ReferenceElement extends DataElement {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Value</em>' reference.
+	 * @see #setValue(Reference)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getReferenceElement_Value()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	Reference getValue();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.ReferenceElement#getValue <em>Value</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Value</em>' reference.
+	 * @see #getValue()
+	 * @generated
+	 */
+	void setValue(Reference value);
+
+} // ReferenceElement
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/RelationshipElement.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/RelationshipElement.java
new file mode 100644
index 0000000..70d8669
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/RelationshipElement.java
@@ -0,0 +1,66 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.uml2.uml.Dependency;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Relationship Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.RelationshipElement#getBase_Dependency <em>Base Dependency</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getRelationshipElement()
+ * @model
+ * @generated
+ */
+public interface RelationshipElement extends SubmodelElement {
+	/**
+	 * Returns the value of the '<em><b>Base Dependency</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Dependency</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Dependency</em>' reference.
+	 * @see #setBase_Dependency(Dependency)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getRelationshipElement_Base_Dependency()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	Dependency getBase_Dependency();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.RelationshipElement#getBase_Dependency <em>Base Dependency</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Dependency</em>' reference.
+	 * @see #getBase_Dependency()
+	 * @generated
+	 */
+	void setBase_Dependency(Dependency value);
+
+} // RelationshipElement
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Security.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Security.java
new file mode 100644
index 0000000..fdcce43
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Security.java
@@ -0,0 +1,134 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Security</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Security#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Security#getAccessControlPolicyPoints <em>Access Control Policy Points</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Security#getCertificate <em>Certificate</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.Security#getRequiredCertificateExtension <em>Required Certificate Extension</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getSecurity()
+ * @model
+ * @generated
+ */
+public interface Security extends EObject {
+	/**
+	 * Returns the value of the '<em><b>Base Class</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Class</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Class</em>' reference.
+	 * @see #setBase_Class(org.eclipse.uml2.uml.Class)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getSecurity_Base_Class()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	org.eclipse.uml2.uml.Class getBase_Class();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Security#getBase_Class <em>Base Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Class</em>' reference.
+	 * @see #getBase_Class()
+	 * @generated
+	 */
+	void setBase_Class(org.eclipse.uml2.uml.Class value);
+
+	/**
+	 * Returns the value of the '<em><b>Access Control Policy Points</b></em>' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Access Control Policy Points</em>' containment reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Access Control Policy Points</em>' containment reference.
+	 * @see #setAccessControlPolicyPoints(AccessControlPolicyPoints)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getSecurity_AccessControlPolicyPoints()
+	 * @model containment="true" required="true" ordered="false"
+	 * @generated
+	 */
+	AccessControlPolicyPoints getAccessControlPolicyPoints();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.Security#getAccessControlPolicyPoints <em>Access Control Policy Points</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Access Control Policy Points</em>' containment reference.
+	 * @see #getAccessControlPolicyPoints()
+	 * @generated
+	 */
+	void setAccessControlPolicyPoints(AccessControlPolicyPoints value);
+
+	/**
+	 * Returns the value of the '<em><b>Certificate</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.aas.Certificate}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Certificate</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>Certificate</em>' containment reference list.
+	 * @see org.eclipse.papyrus.aas.AASPackage#getSecurity_Certificate()
+	 * @model containment="true" ordered="false"
+	 * @generated
+	 */
+	EList<Certificate> getCertificate();
+
+	/**
+	 * Returns the value of the '<em><b>Required Certificate Extension</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.aas.Reference}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Required Certificate Extension</em>' reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Required Certificate Extension</em>' reference list.
+	 * @see org.eclipse.papyrus.aas.AASPackage#getSecurity_RequiredCertificateExtension()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	EList<Reference> getRequiredCertificateExtension();
+
+} // Security
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Submodel.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Submodel.java
new file mode 100644
index 0000000..fbfa691
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/Submodel.java
@@ -0,0 +1,71 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.common.util.EList;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodel</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <!-- begin-model-doc -->
+ * A model in Basyx
+ * Basyx:
+ * 
+ * identifierType: IRDI (urn:...), URI, custom
+ * identifier (for submodel or operation) ->generated automatically
+ * resource name
+ * idshort: string -> generated automatically
+ * category:string
+ * description:string
+ * parent: not used
+ * administration: not used
+ * 
+ * 
+ * 
+ * <!-- end-model-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.Submodel#getSubmodelelement <em>Submodelelement</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getSubmodel()
+ * @model
+ * @generated
+ */
+public interface Submodel extends Identifiable, HasKind, HasSemantics {
+	/**
+	 * Returns the value of the '<em><b>Submodelelement</b></em>' containment reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.aas.SubmodelElement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Submodelelement</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>Submodelelement</em>' containment reference list.
+	 * @see org.eclipse.papyrus.aas.AASPackage#getSubmodel_Submodelelement()
+	 * @model containment="true" ordered="false"
+	 * @generated
+	 */
+	EList<SubmodelElement> getSubmodelelement();
+
+} // Submodel
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/SubmodelElement.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/SubmodelElement.java
new file mode 100644
index 0000000..7731e9b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/SubmodelElement.java
@@ -0,0 +1,30 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodel Element</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getSubmodelElement()
+ * @model abstract="true"
+ * @generated
+ */
+public interface SubmodelElement extends Refereable, HasSemantics {
+} // SubmodelElement
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/SubmodelElementCollection.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/SubmodelElementCollection.java
new file mode 100644
index 0000000..84232e8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/SubmodelElementCollection.java
@@ -0,0 +1,117 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.uml2.uml.DataType;
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Submodel Element Collection</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.SubmodelElementCollection#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.SubmodelElementCollection#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.SubmodelElementCollection#getBase_DataType <em>Base Data Type</em>}</li>
+ * </ul>
+ *
+ * @see org.eclipse.papyrus.aas.AASPackage#getSubmodelElementCollection()
+ * @model annotation="duplicates"
+ * @generated
+ */
+public interface SubmodelElementCollection extends SubmodelElement {
+	/**
+	 * Returns the value of the '<em><b>Value</b></em>' reference list.
+	 * The list contents are of type {@link org.eclipse.papyrus.aas.SubmodelElement}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Value</em>' reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Value</em>' reference list.
+	 * @see org.eclipse.papyrus.aas.AASPackage#getSubmodelElementCollection_Value()
+	 * @model
+	 * @generated
+	 */
+	EList<SubmodelElement> getValue();
+
+	/**
+	 * Returns the value of the '<em><b>Base Property</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Property</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Property</em>' reference.
+	 * @see #setBase_Property(Property)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getSubmodelElementCollection_Base_Property()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	Property getBase_Property();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.SubmodelElementCollection#getBase_Property <em>Base Property</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Property</em>' reference.
+	 * @see #getBase_Property()
+	 * @generated
+	 */
+	void setBase_Property(Property value);
+
+	/**
+	 * Returns the value of the '<em><b>Base Data Type</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Base Data Type</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the value of the '<em>Base Data Type</em>' reference.
+	 * @see #setBase_DataType(DataType)
+	 * @see org.eclipse.papyrus.aas.AASPackage#getSubmodelElementCollection_Base_DataType()
+	 * @model ordered="false"
+	 * @generated
+	 */
+	DataType getBase_DataType();
+
+	/**
+	 * Sets the value of the '{@link org.eclipse.papyrus.aas.SubmodelElementCollection#getBase_DataType <em>Base Data Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param value
+	 *            the new value of the '<em>Base Data Type</em>' reference.
+	 * @see #getBase_DataType()
+	 * @generated
+	 */
+	void setBase_DataType(DataType value);
+
+} // SubmodelElementCollection
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AASFactoryImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AASFactoryImpl.java
new file mode 100644
index 0000000..9f37b02
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AASFactoryImpl.java
@@ -0,0 +1,714 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EDataType;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.impl.EFactoryImpl;
+
+import org.eclipse.emf.ecore.plugin.EcorePlugin;
+
+import org.eclipse.papyrus.aas.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Factory</b>.
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class AASFactoryImpl extends EFactoryImpl implements AASFactory {
+	/**
+	 * Creates the default factory implementation.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public static AASFactory init() {
+		try {
+			AASFactory theAASFactory = (AASFactory) EPackage.Registry.INSTANCE.getEFactory(AASPackage.eNS_URI);
+			if (theAASFactory != null) {
+				return theAASFactory;
+			}
+		} catch (Exception exception) {
+			EcorePlugin.INSTANCE.log(exception);
+		}
+		return new AASFactoryImpl();
+	}
+
+	/**
+	 * Creates an instance of the factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AASFactoryImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public EObject create(EClass eClass) {
+		switch (eClass.getClassifierID()) {
+		case AASPackage.ASSET_ADMINISTRATION_SHELL:
+			return createAssetAdministrationShell();
+		case AASPackage.ADMINISTRATIVE_INFORMATION:
+			return createAdministrativeInformation();
+		case AASPackage.IDENTIFIER:
+			return createIdentifier();
+		case AASPackage.SECURITY:
+			return createSecurity();
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS:
+			return createAccessControlPolicyPoints();
+		case AASPackage.ACCESS_CONTROL:
+			return createAccessControl();
+		case AASPackage.SUBMODEL:
+			return createSubmodel();
+		case AASPackage.REFERENCE:
+			return createReference();
+		case AASPackage.KEY:
+			return createKey();
+		case AASPackage.CERTIFICATE:
+			return createCertificate();
+		case AASPackage.ASSET:
+			return createAsset();
+		case AASPackage.ENDPOINT:
+			return createEndpoint();
+		case AASPackage.FILE:
+			return createFile();
+		case AASPackage.ENTITY:
+			return createEntity();
+		case AASPackage.RELATIONSHIP_ELEMENT:
+			return createRelationshipElement();
+		case AASPackage.OPERATION:
+			return createOperation();
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION:
+			return createSubmodelElementCollection();
+		case AASPackage.PROPERTY:
+			return createProperty();
+		case AASPackage.REFERENCE_ELEMENT:
+			return createReferenceElement();
+		case AASPackage.BASIC_EVENT:
+			return createBasicEvent();
+		case AASPackage.RANGE:
+			return createRange();
+		case AASPackage.CAPABILITY:
+			return createCapability();
+		default:
+			throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object createFromString(EDataType eDataType, String initialValue) {
+		switch (eDataType.getClassifierID()) {
+		case AASPackage.IDENTIFIER_TYPE:
+			return createIdentifierTypeFromString(eDataType, initialValue);
+		case AASPackage.MODELING_KIND:
+			return createModelingKindFromString(eDataType, initialValue);
+		case AASPackage.KEY_ELEMENTS:
+			return createKeyElementsFromString(eDataType, initialValue);
+		case AASPackage.REFERABLE_ELEMENTS:
+			return createReferableElementsFromString(eDataType, initialValue);
+		case AASPackage.IDENTIFIABLE_ELEMENT:
+			return createIdentifiableElementFromString(eDataType, initialValue);
+		case AASPackage.KEY_TYPE:
+			return createKeyTypeFromString(eDataType, initialValue);
+		case AASPackage.LOCAL_KEY_TYPE:
+			return createLocalKeyTypeFromString(eDataType, initialValue);
+		case AASPackage.ASSET_KIND:
+			return createAssetKindFromString(eDataType, initialValue);
+		case AASPackage.PROTOCOL_KIND:
+			return createProtocolKindFromString(eDataType, initialValue);
+		case AASPackage.MIME_TYPE:
+			return createMimeTypeFromString(eDataType, initialValue);
+		case AASPackage.ENTITY_TYPE:
+			return createEntityTypeFromString(eDataType, initialValue);
+		default:
+			throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String convertToString(EDataType eDataType, Object instanceValue) {
+		switch (eDataType.getClassifierID()) {
+		case AASPackage.IDENTIFIER_TYPE:
+			return convertIdentifierTypeToString(eDataType, instanceValue);
+		case AASPackage.MODELING_KIND:
+			return convertModelingKindToString(eDataType, instanceValue);
+		case AASPackage.KEY_ELEMENTS:
+			return convertKeyElementsToString(eDataType, instanceValue);
+		case AASPackage.REFERABLE_ELEMENTS:
+			return convertReferableElementsToString(eDataType, instanceValue);
+		case AASPackage.IDENTIFIABLE_ELEMENT:
+			return convertIdentifiableElementToString(eDataType, instanceValue);
+		case AASPackage.KEY_TYPE:
+			return convertKeyTypeToString(eDataType, instanceValue);
+		case AASPackage.LOCAL_KEY_TYPE:
+			return convertLocalKeyTypeToString(eDataType, instanceValue);
+		case AASPackage.ASSET_KIND:
+			return convertAssetKindToString(eDataType, instanceValue);
+		case AASPackage.PROTOCOL_KIND:
+			return convertProtocolKindToString(eDataType, instanceValue);
+		case AASPackage.MIME_TYPE:
+			return convertMimeTypeToString(eDataType, instanceValue);
+		case AASPackage.ENTITY_TYPE:
+			return convertEntityTypeToString(eDataType, instanceValue);
+		default:
+			throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier");
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AssetAdministrationShell createAssetAdministrationShell() {
+		AssetAdministrationShellImpl assetAdministrationShell = new AssetAdministrationShellImpl();
+		return assetAdministrationShell;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AdministrativeInformation createAdministrativeInformation() {
+		AdministrativeInformationImpl administrativeInformation = new AdministrativeInformationImpl();
+		return administrativeInformation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Identifier createIdentifier() {
+		IdentifierImpl identifier = new IdentifierImpl();
+		return identifier;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Security createSecurity() {
+		SecurityImpl security = new SecurityImpl();
+		return security;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AccessControlPolicyPoints createAccessControlPolicyPoints() {
+		AccessControlPolicyPointsImpl accessControlPolicyPoints = new AccessControlPolicyPointsImpl();
+		return accessControlPolicyPoints;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AccessControl createAccessControl() {
+		AccessControlImpl accessControl = new AccessControlImpl();
+		return accessControl;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Submodel createSubmodel() {
+		SubmodelImpl submodel = new SubmodelImpl();
+		return submodel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Reference createReference() {
+		ReferenceImpl reference = new ReferenceImpl();
+		return reference;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Key createKey() {
+		KeyImpl key = new KeyImpl();
+		return key;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Certificate createCertificate() {
+		CertificateImpl certificate = new CertificateImpl();
+		return certificate;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Asset createAsset() {
+		AssetImpl asset = new AssetImpl();
+		return asset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Endpoint createEndpoint() {
+		EndpointImpl endpoint = new EndpointImpl();
+		return endpoint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public File createFile() {
+		FileImpl file = new FileImpl();
+		return file;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Entity createEntity() {
+		EntityImpl entity = new EntityImpl();
+		return entity;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public RelationshipElement createRelationshipElement() {
+		RelationshipElementImpl relationshipElement = new RelationshipElementImpl();
+		return relationshipElement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Operation createOperation() {
+		OperationImpl operation = new OperationImpl();
+		return operation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public SubmodelElementCollection createSubmodelElementCollection() {
+		SubmodelElementCollectionImpl submodelElementCollection = new SubmodelElementCollectionImpl();
+		return submodelElementCollection;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Property createProperty() {
+		PropertyImpl property = new PropertyImpl();
+		return property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ReferenceElement createReferenceElement() {
+		ReferenceElementImpl referenceElement = new ReferenceElementImpl();
+		return referenceElement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public BasicEvent createBasicEvent() {
+		BasicEventImpl basicEvent = new BasicEventImpl();
+		return basicEvent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Range createRange() {
+		RangeImpl range = new RangeImpl();
+		return range;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Capability createCapability() {
+		CapabilityImpl capability = new CapabilityImpl();
+		return capability;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IdentifierType createIdentifierTypeFromString(EDataType eDataType, String initialValue) {
+		IdentifierType result = IdentifierType.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertIdentifierTypeToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ModelingKind createModelingKindFromString(EDataType eDataType, String initialValue) {
+		ModelingKind result = ModelingKind.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertModelingKindToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public KeyElements createKeyElementsFromString(EDataType eDataType, String initialValue) {
+		KeyElements result = KeyElements.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertKeyElementsToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ReferableElements createReferableElementsFromString(EDataType eDataType, String initialValue) {
+		ReferableElements result = ReferableElements.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertReferableElementsToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IdentifiableElement createIdentifiableElementFromString(EDataType eDataType, String initialValue) {
+		IdentifiableElement result = IdentifiableElement.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertIdentifiableElementToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public KeyType createKeyTypeFromString(EDataType eDataType, String initialValue) {
+		KeyType result = KeyType.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertKeyTypeToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public LocalKeyType createLocalKeyTypeFromString(EDataType eDataType, String initialValue) {
+		LocalKeyType result = LocalKeyType.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertLocalKeyTypeToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AssetKind createAssetKindFromString(EDataType eDataType, String initialValue) {
+		AssetKind result = AssetKind.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertAssetKindToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ProtocolKind createProtocolKindFromString(EDataType eDataType, String initialValue) {
+		ProtocolKind result = ProtocolKind.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertProtocolKindToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MimeType createMimeTypeFromString(EDataType eDataType, String initialValue) {
+		MimeType result = MimeType.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertMimeTypeToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EntityType createEntityTypeFromString(EDataType eDataType, String initialValue) {
+		EntityType result = EntityType.get(initialValue);
+		if (result == null)
+			throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'");
+		return result;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String convertEntityTypeToString(EDataType eDataType, Object instanceValue) {
+		return instanceValue == null ? null : instanceValue.toString();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AASPackage getAASPackage() {
+		return (AASPackage) getEPackage();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @deprecated
+	 * @generated
+	 */
+	@Deprecated
+	public static AASPackage getPackage() {
+		return AASPackage.eINSTANCE;
+	}
+
+} // AASFactoryImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AASPackageImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AASPackageImpl.java
new file mode 100644
index 0000000..0ad46b7
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AASPackageImpl.java
@@ -0,0 +1,2009 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.ecore.EAttribute;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EEnum;
+import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EcorePackage;
+
+import org.eclipse.emf.ecore.impl.EPackageImpl;
+
+import org.eclipse.papyrus.aas.AASFactory;
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.AccessControl;
+import org.eclipse.papyrus.aas.AccessControlPolicyPoints;
+import org.eclipse.papyrus.aas.AdministrativeInformation;
+import org.eclipse.papyrus.aas.Asset;
+import org.eclipse.papyrus.aas.AssetAdministrationShell;
+import org.eclipse.papyrus.aas.AssetKind;
+import org.eclipse.papyrus.aas.BasicEvent;
+import org.eclipse.papyrus.aas.Capability;
+import org.eclipse.papyrus.aas.Certificate;
+import org.eclipse.papyrus.aas.DataElement;
+import org.eclipse.papyrus.aas.Endpoint;
+import org.eclipse.papyrus.aas.Entity;
+import org.eclipse.papyrus.aas.EntityType;
+import org.eclipse.papyrus.aas.Event;
+import org.eclipse.papyrus.aas.File;
+import org.eclipse.papyrus.aas.HasKind;
+import org.eclipse.papyrus.aas.HasSemantics;
+import org.eclipse.papyrus.aas.Identifiable;
+import org.eclipse.papyrus.aas.IdentifiableElement;
+import org.eclipse.papyrus.aas.Identifier;
+import org.eclipse.papyrus.aas.IdentifierType;
+import org.eclipse.papyrus.aas.Key;
+import org.eclipse.papyrus.aas.KeyElements;
+import org.eclipse.papyrus.aas.KeyType;
+import org.eclipse.papyrus.aas.LocalKeyType;
+import org.eclipse.papyrus.aas.MimeType;
+import org.eclipse.papyrus.aas.ModelingKind;
+import org.eclipse.papyrus.aas.Operation;
+import org.eclipse.papyrus.aas.Property;
+import org.eclipse.papyrus.aas.ProtocolKind;
+import org.eclipse.papyrus.aas.Range;
+import org.eclipse.papyrus.aas.ReferableElements;
+import org.eclipse.papyrus.aas.Refereable;
+import org.eclipse.papyrus.aas.Reference;
+import org.eclipse.papyrus.aas.ReferenceElement;
+import org.eclipse.papyrus.aas.RelationshipElement;
+import org.eclipse.papyrus.aas.Security;
+import org.eclipse.papyrus.aas.Submodel;
+import org.eclipse.papyrus.aas.SubmodelElement;
+import org.eclipse.papyrus.aas.SubmodelElementCollection;
+
+import org.eclipse.uml2.types.TypesPackage;
+
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model <b>Package</b>.
+ * <!-- end-user-doc -->
+ * 
+ * @generated
+ */
+public class AASPackageImpl extends EPackageImpl implements AASPackage {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass assetAdministrationShellEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass identifiableEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass refereableEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass administrativeInformationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass identifierEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass securityEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass accessControlPolicyPointsEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass accessControlEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass submodelEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass hasKindEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass hasSemanticsEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass referenceEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass keyEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass submodelElementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass certificateEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass assetEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass endpointEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass fileEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass dataElementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass entityEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass relationshipElementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass operationEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass submodelElementCollectionEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass propertyEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass referenceElementEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass eventEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass basicEventEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass rangeEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EClass capabilityEClass = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum identifierTypeEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum modelingKindEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum keyElementsEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum referableElementsEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum identifiableElementEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum keyTypeEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum localKeyTypeEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum assetKindEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum protocolKindEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum mimeTypeEEnum = null;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private EEnum entityTypeEEnum = null;
+
+	/**
+	 * Creates an instance of the model <b>Package</b>, registered with
+	 * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package
+	 * package URI value.
+	 * <p>
+	 * Note: the correct way to create the package is via the static
+	 * factory method {@link #init init()}, which also performs
+	 * initialization of the package, or returns the registered package,
+	 * if one already exists.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see org.eclipse.emf.ecore.EPackage.Registry
+	 * @see org.eclipse.papyrus.aas.AASPackage#eNS_URI
+	 * @see #init()
+	 * @generated
+	 */
+	private AASPackageImpl() {
+		super(eNS_URI, AASFactory.eINSTANCE);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private static boolean isInited = false;
+
+	/**
+	 * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends.
+	 *
+	 * <p>
+	 * This method is used to initialize {@link AASPackage#eINSTANCE} when that field is accessed.
+	 * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #eNS_URI
+	 * @see #createPackageContents()
+	 * @see #initializePackageContents()
+	 * @generated
+	 */
+	public static AASPackage init() {
+		if (isInited)
+			return (AASPackage) EPackage.Registry.INSTANCE.getEPackage(AASPackage.eNS_URI);
+
+		// Obtain or create and register package
+		Object registeredAASPackage = EPackage.Registry.INSTANCE.get(eNS_URI);
+		AASPackageImpl theAASPackage = registeredAASPackage instanceof AASPackageImpl ? (AASPackageImpl) registeredAASPackage : new AASPackageImpl();
+
+		isInited = true;
+
+		// Initialize simple dependencies
+		EcorePackage.eINSTANCE.eClass();
+		TypesPackage.eINSTANCE.eClass();
+		UMLPackage.eINSTANCE.eClass();
+
+		// Create package meta-data objects
+		theAASPackage.createPackageContents();
+
+		// Initialize created meta-data
+		theAASPackage.initializePackageContents();
+
+		// Mark meta-data to indicate it can't be changed
+		theAASPackage.freeze();
+
+		// Update the registry and return the package
+		EPackage.Registry.INSTANCE.put(AASPackage.eNS_URI, theAASPackage);
+		return theAASPackage;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getAssetAdministrationShell() {
+		return assetAdministrationShellEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShell_DerivedFrom() {
+		return (EReference) assetAdministrationShellEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShell_Security() {
+		return (EReference) assetAdministrationShellEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShell_Asset() {
+		return (EReference) assetAdministrationShellEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getAssetAdministrationShell_Submodel() {
+		return (EReference) assetAdministrationShellEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAssetAdministrationShell_Url() {
+		return (EAttribute) assetAdministrationShellEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAssetAdministrationShell_Port() {
+		return (EAttribute) assetAdministrationShellEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getIdentifiable() {
+		return identifiableEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getIdentifiable_Administration() {
+		return (EReference) identifiableEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getIdentifiable_Identification() {
+		return (EReference) identifiableEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getRefereable() {
+		return refereableEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getRefereable_IdShort() {
+		return (EAttribute) refereableEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getRefereable_Category() {
+		return (EAttribute) refereableEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getRefereable_Description() {
+		return (EAttribute) refereableEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getRefereable_Base_Class() {
+		return (EReference) refereableEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getRefereable_Parent() {
+		return (EReference) refereableEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getAdministrativeInformation() {
+		return administrativeInformationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAdministrativeInformation_Version() {
+		return (EAttribute) administrativeInformationEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAdministrativeInformation_Revision() {
+		return (EAttribute) administrativeInformationEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getIdentifier() {
+		return identifierEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getIdentifier_IdType() {
+		return (EAttribute) identifierEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getIdentifier_Id() {
+		return (EAttribute) identifierEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getSecurity() {
+		return securityEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getSecurity_Base_Class() {
+		return (EReference) securityEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getSecurity_AccessControlPolicyPoints() {
+		return (EReference) securityEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getSecurity_Certificate() {
+		return (EReference) securityEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getSecurity_RequiredCertificateExtension() {
+		return (EReference) securityEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getAccessControlPolicyPoints() {
+		return accessControlPolicyPointsEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getAccessControlPolicyPoints_LocalAccessControl() {
+		return (EReference) accessControlPolicyPointsEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAccessControlPolicyPoints_ExternalAccessControl() {
+		return (EAttribute) accessControlPolicyPointsEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAccessControlPolicyPoints_ExternalInformationPoints() {
+		return (EAttribute) accessControlPolicyPointsEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getAccessControlPolicyPoints_InternalInformationPoint() {
+		return (EReference) accessControlPolicyPointsEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAccessControlPolicyPoints_ExternalPolicyDecisionPoints() {
+		return (EAttribute) accessControlPolicyPointsEClass.getEStructuralFeatures().get(4);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAccessControlPolicyPoints_ExternalPolicyEnforcementPoint() {
+		return (EAttribute) accessControlPolicyPointsEClass.getEStructuralFeatures().get(5);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getAccessControl() {
+		return accessControlEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getSubmodel() {
+		return submodelEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getSubmodel_Submodelelement() {
+		return (EReference) submodelEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getHasKind() {
+		return hasKindEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getHasKind_Kind() {
+		return (EAttribute) hasKindEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getHasKind_Base_HasKind_Class() {
+		return (EReference) hasKindEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getHasSemantics() {
+		return hasSemanticsEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getHasSemantics_SemanticId() {
+		return (EReference) hasSemanticsEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getHasSemantics_Base_HasSemantics_Class() {
+		return (EReference) hasSemanticsEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getReference() {
+		return referenceEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getReference_Key() {
+		return (EReference) referenceEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getReference_Base_Class() {
+		return (EReference) referenceEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getKey() {
+		return keyEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getKey_Type() {
+		return (EAttribute) keyEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getKey_Local() {
+		return (EAttribute) keyEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getKey_Value() {
+		return (EAttribute) keyEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getKey_IdType() {
+		return (EAttribute) keyEClass.getEStructuralFeatures().get(3);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getSubmodelElement() {
+		return submodelElementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCertificate() {
+		return certificateEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getAsset() {
+		return assetEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getAsset_Kind() {
+		return (EAttribute) assetEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getAsset_Endpoint() {
+		return (EReference) assetEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getEndpoint() {
+		return endpointEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getEndpoint_Address() {
+		return (EAttribute) endpointEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getEndpoint_Protocol() {
+		return (EAttribute) endpointEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getFile() {
+		return fileEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getFile_Path() {
+		return (EAttribute) fileEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getFile_MimeType() {
+		return (EAttribute) fileEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getDataElement() {
+		return dataElementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getDataElement_Base_Property() {
+		return (EReference) dataElementEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getEntity() {
+		return entityEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getEntity_EntityType() {
+		return (EAttribute) entityEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getEntity_Asset() {
+		return (EReference) entityEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getRelationshipElement() {
+		return relationshipElementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getRelationshipElement_Base_Dependency() {
+		return (EReference) relationshipElementEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getOperation() {
+		return operationEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getOperation_Base_Operation() {
+		return (EReference) operationEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getSubmodelElementCollection() {
+		return submodelElementCollectionEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getSubmodelElementCollection_Value() {
+		return (EReference) submodelElementCollectionEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getSubmodelElementCollection_Base_Property() {
+		return (EReference) submodelElementCollectionEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getSubmodelElementCollection_Base_DataType() {
+		return (EReference) submodelElementCollectionEClass.getEStructuralFeatures().get(2);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getProperty() {
+		return propertyEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getReferenceElement() {
+		return referenceElementEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getReferenceElement_Value() {
+		return (EReference) referenceElementEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getEvent() {
+		return eventEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getEvent_Base_Property() {
+		return (EReference) eventEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getBasicEvent() {
+		return basicEventEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getBasicEvent_Observed() {
+		return (EReference) basicEventEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getRange() {
+		return rangeEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getRange_Min() {
+		return (EAttribute) rangeEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EAttribute getRange_Max() {
+		return (EAttribute) rangeEClass.getEStructuralFeatures().get(1);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EClass getCapability() {
+		return capabilityEClass;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EReference getCapability_Base_Property() {
+		return (EReference) capabilityEClass.getEStructuralFeatures().get(0);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getIdentifierType() {
+		return identifierTypeEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getModelingKind() {
+		return modelingKindEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getKeyElements() {
+		return keyElementsEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getReferableElements() {
+		return referableElementsEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getIdentifiableElement() {
+		return identifiableElementEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getKeyType() {
+		return keyTypeEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getLocalKeyType() {
+		return localKeyTypeEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getAssetKind() {
+		return assetKindEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getProtocolKind() {
+		return protocolKindEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getMimeType() {
+		return mimeTypeEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EEnum getEntityType() {
+		return entityTypeEEnum;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AASFactory getAASFactory() {
+		return (AASFactory) getEFactoryInstance();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private boolean isCreated = false;
+
+	/**
+	 * Creates the meta-model objects for the package. This method is
+	 * guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void createPackageContents() {
+		if (isCreated)
+			return;
+		isCreated = true;
+
+		// Create classes and their features
+		assetAdministrationShellEClass = createEClass(ASSET_ADMINISTRATION_SHELL);
+		createEReference(assetAdministrationShellEClass, ASSET_ADMINISTRATION_SHELL__DERIVED_FROM);
+		createEReference(assetAdministrationShellEClass, ASSET_ADMINISTRATION_SHELL__SECURITY);
+		createEReference(assetAdministrationShellEClass, ASSET_ADMINISTRATION_SHELL__ASSET);
+		createEReference(assetAdministrationShellEClass, ASSET_ADMINISTRATION_SHELL__SUBMODEL);
+		createEAttribute(assetAdministrationShellEClass, ASSET_ADMINISTRATION_SHELL__URL);
+		createEAttribute(assetAdministrationShellEClass, ASSET_ADMINISTRATION_SHELL__PORT);
+
+		identifiableEClass = createEClass(IDENTIFIABLE);
+		createEReference(identifiableEClass, IDENTIFIABLE__ADMINISTRATION);
+		createEReference(identifiableEClass, IDENTIFIABLE__IDENTIFICATION);
+
+		refereableEClass = createEClass(REFEREABLE);
+		createEAttribute(refereableEClass, REFEREABLE__ID_SHORT);
+		createEAttribute(refereableEClass, REFEREABLE__CATEGORY);
+		createEAttribute(refereableEClass, REFEREABLE__DESCRIPTION);
+		createEReference(refereableEClass, REFEREABLE__BASE_CLASS);
+		createEReference(refereableEClass, REFEREABLE__PARENT);
+
+		administrativeInformationEClass = createEClass(ADMINISTRATIVE_INFORMATION);
+		createEAttribute(administrativeInformationEClass, ADMINISTRATIVE_INFORMATION__VERSION);
+		createEAttribute(administrativeInformationEClass, ADMINISTRATIVE_INFORMATION__REVISION);
+
+		identifierEClass = createEClass(IDENTIFIER);
+		createEAttribute(identifierEClass, IDENTIFIER__ID_TYPE);
+		createEAttribute(identifierEClass, IDENTIFIER__ID);
+
+		securityEClass = createEClass(SECURITY);
+		createEReference(securityEClass, SECURITY__BASE_CLASS);
+		createEReference(securityEClass, SECURITY__ACCESS_CONTROL_POLICY_POINTS);
+		createEReference(securityEClass, SECURITY__CERTIFICATE);
+		createEReference(securityEClass, SECURITY__REQUIRED_CERTIFICATE_EXTENSION);
+
+		accessControlPolicyPointsEClass = createEClass(ACCESS_CONTROL_POLICY_POINTS);
+		createEReference(accessControlPolicyPointsEClass, ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL);
+		createEAttribute(accessControlPolicyPointsEClass, ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_ACCESS_CONTROL);
+		createEAttribute(accessControlPolicyPointsEClass, ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_INFORMATION_POINTS);
+		createEReference(accessControlPolicyPointsEClass, ACCESS_CONTROL_POLICY_POINTS__INTERNAL_INFORMATION_POINT);
+		createEAttribute(accessControlPolicyPointsEClass, ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_DECISION_POINTS);
+		createEAttribute(accessControlPolicyPointsEClass, ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_ENFORCEMENT_POINT);
+
+		accessControlEClass = createEClass(ACCESS_CONTROL);
+
+		submodelEClass = createEClass(SUBMODEL);
+		createEReference(submodelEClass, SUBMODEL__SUBMODELELEMENT);
+
+		hasKindEClass = createEClass(HAS_KIND);
+		createEAttribute(hasKindEClass, HAS_KIND__KIND);
+		createEReference(hasKindEClass, HAS_KIND__BASE_HAS_KIND_CLASS);
+
+		hasSemanticsEClass = createEClass(HAS_SEMANTICS);
+		createEReference(hasSemanticsEClass, HAS_SEMANTICS__SEMANTIC_ID);
+		createEReference(hasSemanticsEClass, HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS);
+
+		referenceEClass = createEClass(REFERENCE);
+		createEReference(referenceEClass, REFERENCE__KEY);
+		createEReference(referenceEClass, REFERENCE__BASE_CLASS);
+
+		keyEClass = createEClass(KEY);
+		createEAttribute(keyEClass, KEY__TYPE);
+		createEAttribute(keyEClass, KEY__LOCAL);
+		createEAttribute(keyEClass, KEY__VALUE);
+		createEAttribute(keyEClass, KEY__ID_TYPE);
+
+		submodelElementEClass = createEClass(SUBMODEL_ELEMENT);
+
+		certificateEClass = createEClass(CERTIFICATE);
+
+		assetEClass = createEClass(ASSET);
+		createEAttribute(assetEClass, ASSET__KIND);
+		createEReference(assetEClass, ASSET__ENDPOINT);
+
+		endpointEClass = createEClass(ENDPOINT);
+		createEAttribute(endpointEClass, ENDPOINT__ADDRESS);
+		createEAttribute(endpointEClass, ENDPOINT__PROTOCOL);
+
+		fileEClass = createEClass(FILE);
+		createEAttribute(fileEClass, FILE__PATH);
+		createEAttribute(fileEClass, FILE__MIME_TYPE);
+
+		dataElementEClass = createEClass(DATA_ELEMENT);
+		createEReference(dataElementEClass, DATA_ELEMENT__BASE_PROPERTY);
+
+		entityEClass = createEClass(ENTITY);
+		createEAttribute(entityEClass, ENTITY__ENTITY_TYPE);
+		createEReference(entityEClass, ENTITY__ASSET);
+
+		relationshipElementEClass = createEClass(RELATIONSHIP_ELEMENT);
+		createEReference(relationshipElementEClass, RELATIONSHIP_ELEMENT__BASE_DEPENDENCY);
+
+		operationEClass = createEClass(OPERATION);
+		createEReference(operationEClass, OPERATION__BASE_OPERATION);
+
+		submodelElementCollectionEClass = createEClass(SUBMODEL_ELEMENT_COLLECTION);
+		createEReference(submodelElementCollectionEClass, SUBMODEL_ELEMENT_COLLECTION__VALUE);
+		createEReference(submodelElementCollectionEClass, SUBMODEL_ELEMENT_COLLECTION__BASE_PROPERTY);
+		createEReference(submodelElementCollectionEClass, SUBMODEL_ELEMENT_COLLECTION__BASE_DATA_TYPE);
+
+		propertyEClass = createEClass(PROPERTY);
+
+		referenceElementEClass = createEClass(REFERENCE_ELEMENT);
+		createEReference(referenceElementEClass, REFERENCE_ELEMENT__VALUE);
+
+		eventEClass = createEClass(EVENT);
+		createEReference(eventEClass, EVENT__BASE_PROPERTY);
+
+		basicEventEClass = createEClass(BASIC_EVENT);
+		createEReference(basicEventEClass, BASIC_EVENT__OBSERVED);
+
+		rangeEClass = createEClass(RANGE);
+		createEAttribute(rangeEClass, RANGE__MIN);
+		createEAttribute(rangeEClass, RANGE__MAX);
+
+		capabilityEClass = createEClass(CAPABILITY);
+		createEReference(capabilityEClass, CAPABILITY__BASE_PROPERTY);
+
+		// Create enums
+		identifierTypeEEnum = createEEnum(IDENTIFIER_TYPE);
+		modelingKindEEnum = createEEnum(MODELING_KIND);
+		keyElementsEEnum = createEEnum(KEY_ELEMENTS);
+		referableElementsEEnum = createEEnum(REFERABLE_ELEMENTS);
+		identifiableElementEEnum = createEEnum(IDENTIFIABLE_ELEMENT);
+		keyTypeEEnum = createEEnum(KEY_TYPE);
+		localKeyTypeEEnum = createEEnum(LOCAL_KEY_TYPE);
+		assetKindEEnum = createEEnum(ASSET_KIND);
+		protocolKindEEnum = createEEnum(PROTOCOL_KIND);
+		mimeTypeEEnum = createEEnum(MIME_TYPE);
+		entityTypeEEnum = createEEnum(ENTITY_TYPE);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	private boolean isInitialized = false;
+
+	/**
+	 * Complete the initialization of the package and its meta-model. This
+	 * method is guarded to have no affect on any invocation but its first.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void initializePackageContents() {
+		if (isInitialized)
+			return;
+		isInitialized = true;
+
+		// Initialize package
+		setName(eNAME);
+		setNsPrefix(eNS_PREFIX);
+		setNsURI(eNS_URI);
+
+		// Obtain other dependent packages
+		TypesPackage theTypesPackage = (TypesPackage) EPackage.Registry.INSTANCE.getEPackage(TypesPackage.eNS_URI);
+		UMLPackage theUMLPackage = (UMLPackage) EPackage.Registry.INSTANCE.getEPackage(UMLPackage.eNS_URI);
+
+		// Create type parameters
+
+		// Set bounds for type parameters
+
+		// Add supertypes to classes
+		assetAdministrationShellEClass.getESuperTypes().add(this.getIdentifiable());
+		identifiableEClass.getESuperTypes().add(this.getRefereable());
+		submodelEClass.getESuperTypes().add(this.getIdentifiable());
+		submodelEClass.getESuperTypes().add(this.getHasKind());
+		submodelEClass.getESuperTypes().add(this.getHasSemantics());
+		submodelElementEClass.getESuperTypes().add(this.getRefereable());
+		submodelElementEClass.getESuperTypes().add(this.getHasSemantics());
+		assetEClass.getESuperTypes().add(this.getIdentifiable());
+		fileEClass.getESuperTypes().add(this.getDataElement());
+		dataElementEClass.getESuperTypes().add(this.getSubmodelElement());
+		entityEClass.getESuperTypes().add(this.getSubmodelElement());
+		relationshipElementEClass.getESuperTypes().add(this.getSubmodelElement());
+		operationEClass.getESuperTypes().add(this.getSubmodelElement());
+		submodelElementCollectionEClass.getESuperTypes().add(this.getSubmodelElement());
+		propertyEClass.getESuperTypes().add(this.getDataElement());
+		referenceElementEClass.getESuperTypes().add(this.getDataElement());
+		eventEClass.getESuperTypes().add(this.getSubmodelElement());
+		basicEventEClass.getESuperTypes().add(this.getEvent());
+		rangeEClass.getESuperTypes().add(this.getDataElement());
+		capabilityEClass.getESuperTypes().add(this.getSubmodelElement());
+
+		// Initialize classes, features, and operations; add parameters
+		initEClass(assetAdministrationShellEClass, AssetAdministrationShell.class, "AssetAdministrationShell", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getAssetAdministrationShell_DerivedFrom(), this.getAssetAdministrationShell(), null, "derivedFrom", null, 0, 1, AssetAdministrationShell.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+				!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getAssetAdministrationShell_Security(), this.getSecurity(), null, "security", null, 0, 1, AssetAdministrationShell.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
+				!IS_DERIVED, !IS_ORDERED);
+		initEReference(getAssetAdministrationShell_Asset(), this.getAsset(), null, "asset", null, 1, 1, AssetAdministrationShell.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+				!IS_ORDERED);
+		initEReference(getAssetAdministrationShell_Submodel(), this.getSubmodel(), null, "submodel", null, 0, -1, AssetAdministrationShell.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
+				!IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getAssetAdministrationShell_Url(), theTypesPackage.getString(), "url", null, 0, 1, AssetAdministrationShell.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getAssetAdministrationShell_Port(), theTypesPackage.getInteger(), "port", null, 0, 1, AssetAdministrationShell.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(identifiableEClass, Identifiable.class, "Identifiable", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getIdentifiable_Administration(), this.getAdministrativeInformation(), null, "administration", null, 0, 1, Identifiable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
+				!IS_DERIVED, !IS_ORDERED);
+		initEReference(getIdentifiable_Identification(), this.getIdentifier(), null, "identification", null, 1, 1, Identifiable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+				!IS_ORDERED);
+
+		initEClass(refereableEClass, Refereable.class, "Refereable", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getRefereable_IdShort(), theTypesPackage.getString(), "idShort", null, 1, 1, Refereable.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getRefereable_Category(), theTypesPackage.getString(), "category", null, 0, 1, Refereable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getRefereable_Description(), theTypesPackage.getString(), "description", null, 0, 1, Refereable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getRefereable_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, Refereable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getRefereable_Parent(), this.getRefereable(), null, "parent", null, 0, 1, Refereable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(administrativeInformationEClass, AdministrativeInformation.class, "AdministrativeInformation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getAdministrativeInformation_Version(), theTypesPackage.getString(), "version", null, 1, 1, AdministrativeInformation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getAdministrativeInformation_Revision(), theTypesPackage.getString(), "revision", null, 1, 1, AdministrativeInformation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(identifierEClass, Identifier.class, "Identifier", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getIdentifier_IdType(), this.getIdentifierType(), "idType", null, 1, 1, Identifier.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getIdentifier_Id(), theTypesPackage.getString(), "id", null, 1, 1, Identifier.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(securityEClass, Security.class, "Security", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSecurity_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, Security.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getSecurity_AccessControlPolicyPoints(), this.getAccessControlPolicyPoints(), null, "accessControlPolicyPoints", null, 1, 1, Security.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getSecurity_Certificate(), this.getCertificate(), null, "certificate", null, 0, -1, Security.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getSecurity_RequiredCertificateExtension(), this.getReference(), null, "requiredCertificateExtension", null, 0, -1, Security.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
+				!IS_DERIVED, !IS_ORDERED);
+
+		initEClass(accessControlPolicyPointsEClass, AccessControlPolicyPoints.class, "AccessControlPolicyPoints", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getAccessControlPolicyPoints_LocalAccessControl(), this.getAccessControl(), null, "localAccessControl", null, 1, 1, AccessControlPolicyPoints.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES,
+				!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getAccessControlPolicyPoints_ExternalAccessControl(), ecorePackage.getEBoolean(), "externalAccessControl", null, 1, 1, AccessControlPolicyPoints.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE,
+				!IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getAccessControlPolicyPoints_ExternalInformationPoints(), ecorePackage.getEBoolean(), "externalInformationPoints", null, 1, 1, AccessControlPolicyPoints.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getAccessControlPolicyPoints_InternalInformationPoint(), this.getSubmodel(), null, "internalInformationPoint", null, 1, 1, AccessControlPolicyPoints.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES,
+				!IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getAccessControlPolicyPoints_ExternalPolicyDecisionPoints(), ecorePackage.getEBoolean(), "externalPolicyDecisionPoints", null, 1, 1, AccessControlPolicyPoints.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getAccessControlPolicyPoints_ExternalPolicyEnforcementPoint(), ecorePackage.getEBoolean(), "externalPolicyEnforcementPoint", null, 1, 1, AccessControlPolicyPoints.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID,
+				IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(accessControlEClass, AccessControl.class, "AccessControl", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(submodelEClass, Submodel.class, "Submodel", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSubmodel_Submodelelement(), this.getSubmodelElement(), null, "submodelelement", null, 0, -1, Submodel.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+				!IS_ORDERED);
+
+		initEClass(hasKindEClass, HasKind.class, "HasKind", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getHasKind_Kind(), this.getModelingKind(), "kind", null, 0, 1, HasKind.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getHasKind_Base_HasKind_Class(), theUMLPackage.getClass_(), null, "base_HasKind_Class", null, 0, 1, HasKind.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+				!IS_ORDERED);
+
+		initEClass(hasSemanticsEClass, HasSemantics.class, "HasSemantics", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getHasSemantics_SemanticId(), this.getReference(), null, "semanticId", null, 1, 1, HasSemantics.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getHasSemantics_Base_HasSemantics_Class(), theUMLPackage.getClass_(), null, "base_HasSemantics_Class", null, 0, 1, HasSemantics.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(referenceEClass, Reference.class, "Reference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getReference_Key(), this.getKey(), null, "key", null, 1, -1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getReference_Base_Class(), theUMLPackage.getClass_(), null, "base_Class", null, 0, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(keyEClass, Key.class, "Key", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getKey_Type(), this.getKeyElements(), "type", null, 0, 1, Key.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getKey_Local(), theTypesPackage.getBoolean(), "local", "true", 0, 1, Key.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getKey_Value(), theTypesPackage.getString(), "value", null, 0, 1, Key.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getKey_IdType(), this.getKeyType(), "idType", null, 0, 1, Key.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(submodelElementEClass, SubmodelElement.class, "SubmodelElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(certificateEClass, Certificate.class, "Certificate", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(assetEClass, Asset.class, "Asset", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getAsset_Kind(), this.getAssetKind(), "kind", null, 1, 1, Asset.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getAsset_Endpoint(), this.getEndpoint(), null, "endpoint", null, 0, -1, Asset.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(endpointEClass, Endpoint.class, "Endpoint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getEndpoint_Address(), theTypesPackage.getString(), "address", null, 0, 1, Endpoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getEndpoint_Protocol(), this.getProtocolKind(), "protocol", null, 0, 1, Endpoint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(fileEClass, File.class, "File", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getFile_Path(), theTypesPackage.getString(), "path", null, 0, 1, File.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getFile_MimeType(), this.getMimeType(), "mimeType", null, 1, 1, File.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(dataElementEClass, DataElement.class, "DataElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getDataElement_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 1, 1, DataElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+				!IS_ORDERED);
+
+		initEClass(entityEClass, Entity.class, "Entity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getEntity_EntityType(), this.getEntityType(), "entityType", null, 1, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getEntity_Asset(), this.getAsset(), null, "asset", null, 1, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(relationshipElementEClass, RelationshipElement.class, "RelationshipElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getRelationshipElement_Base_Dependency(), theUMLPackage.getDependency(), null, "base_Dependency", null, 0, 1, RelationshipElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(operationEClass, Operation.class, "Operation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getOperation_Base_Operation(), theUMLPackage.getOperation(), null, "base_Operation", null, 1, 1, Operation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+				!IS_ORDERED);
+
+		initEClass(submodelElementCollectionEClass, SubmodelElementCollection.class, "SubmodelElementCollection", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getSubmodelElementCollection_Value(), this.getSubmodelElement(), null, "value", null, 0, -1, SubmodelElementCollection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE,
+				!IS_DERIVED, IS_ORDERED);
+		initEReference(getSubmodelElementCollection_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, SubmodelElementCollection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEReference(getSubmodelElementCollection_Base_DataType(), theUMLPackage.getDataType(), null, "base_DataType", null, 0, 1, SubmodelElementCollection.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE,
+				IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(propertyEClass, Property.class, "Property", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+
+		initEClass(referenceElementEClass, ReferenceElement.class, "ReferenceElement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getReferenceElement_Value(), this.getReference(), null, "value", null, 0, 1, ReferenceElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(eventEClass, Event.class, "Event", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getEvent_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, Event.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(basicEventEClass, BasicEvent.class, "BasicEvent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getBasicEvent_Observed(), theUMLPackage.getElement(), null, "observed", null, 1, 1, BasicEvent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(rangeEClass, Range.class, "Range", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEAttribute(getRange_Min(), theTypesPackage.getInteger(), "min", null, 0, 1, Range.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+		initEAttribute(getRange_Max(), theTypesPackage.getInteger(), "max", null, 0, 1, Range.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED);
+
+		initEClass(capabilityEClass, Capability.class, "Capability", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+		initEReference(getCapability_Base_Property(), theUMLPackage.getProperty(), null, "base_Property", null, 0, 1, Capability.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED,
+				!IS_ORDERED);
+
+		// Initialize enums and add enum literals
+		initEEnum(identifierTypeEEnum, IdentifierType.class, "IdentifierType");
+		addEEnumLiteral(identifierTypeEEnum, IdentifierType.CUSTOM);
+		addEEnumLiteral(identifierTypeEEnum, IdentifierType.IRDI);
+		addEEnumLiteral(identifierTypeEEnum, IdentifierType.IRI);
+
+		initEEnum(modelingKindEEnum, ModelingKind.class, "ModelingKind");
+		addEEnumLiteral(modelingKindEEnum, ModelingKind.TEMPLATE);
+		addEEnumLiteral(modelingKindEEnum, ModelingKind.INSTANCE);
+
+		initEEnum(keyElementsEEnum, KeyElements.class, "KeyElements");
+		addEEnumLiteral(keyElementsEEnum, KeyElements.GLOBAL_REFERENCE);
+		addEEnumLiteral(keyElementsEEnum, KeyElements.FRAGMENT_REFERENCE);
+
+		initEEnum(referableElementsEEnum, ReferableElements.class, "ReferableElements");
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.ACCESS_PERMISSION_RULE);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.ANNOTATED_RELATIONSHIP_ELEMENT);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.BASIC_EVENT);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.BLOB);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.CAPABILITY);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.CONCEPT_DICTIONARY);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.DATA_ELEMENT);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.FILE);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.ENTITY);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.EVENT);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.MULTI_LANGUAGE_PROPERTY);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.OPERATION);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.PROPERTY);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.RANGE);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.REFERENCE_ELEMENT);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.RELATIONSHIP_ELEMENT);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.SUBMODEL_ELEMENT);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.SUBMODEL_ELEMENT_COLLECTION);
+		addEEnumLiteral(referableElementsEEnum, ReferableElements.VIEW);
+
+		initEEnum(identifiableElementEEnum, IdentifiableElement.class, "IdentifiableElement");
+		addEEnumLiteral(identifiableElementEEnum, IdentifiableElement.ASSET);
+		addEEnumLiteral(identifiableElementEEnum, IdentifiableElement.ASSET_ADMINISTRATION_SHELL);
+		addEEnumLiteral(identifiableElementEEnum, IdentifiableElement.CONCEPT_DESCRIPTION);
+		addEEnumLiteral(identifiableElementEEnum, IdentifiableElement.SUBMODEL);
+
+		initEEnum(keyTypeEEnum, KeyType.class, "KeyType");
+
+		initEEnum(localKeyTypeEEnum, LocalKeyType.class, "LocalKeyType");
+		addEEnumLiteral(localKeyTypeEEnum, LocalKeyType.ID_SHORT);
+		addEEnumLiteral(localKeyTypeEEnum, LocalKeyType.FRAGMENT_ID);
+
+		initEEnum(assetKindEEnum, AssetKind.class, "AssetKind");
+		addEEnumLiteral(assetKindEEnum, AssetKind.TYPE);
+		addEEnumLiteral(assetKindEEnum, AssetKind.INSTANCE);
+
+		initEEnum(protocolKindEEnum, ProtocolKind.class, "ProtocolKind");
+		addEEnumLiteral(protocolKindEEnum, ProtocolKind.HTTP);
+		addEEnumLiteral(protocolKindEEnum, ProtocolKind.MQTT);
+		addEEnumLiteral(protocolKindEEnum, ProtocolKind.OPCUA);
+		addEEnumLiteral(protocolKindEEnum, ProtocolKind.CO_AP);
+		addEEnumLiteral(protocolKindEEnum, ProtocolKind.OTHER);
+
+		initEEnum(mimeTypeEEnum, MimeType.class, "MimeType");
+		addEEnumLiteral(mimeTypeEEnum, MimeType.APPLICATIONJSON);
+		addEEnumLiteral(mimeTypeEEnum, MimeType.APPLICATIONXLS);
+		addEEnumLiteral(mimeTypeEEnum, MimeType.IMAGEJPG);
+		addEEnumLiteral(mimeTypeEEnum, MimeType.APPLICATIONPDF);
+		addEEnumLiteral(mimeTypeEEnum, MimeType.APPLICATIONZIP);
+		addEEnumLiteral(mimeTypeEEnum, MimeType.IMAGEBMP);
+		addEEnumLiteral(mimeTypeEEnum, MimeType.OTHER);
+
+		initEEnum(entityTypeEEnum, EntityType.class, "EntityType");
+		addEEnumLiteral(entityTypeEEnum, EntityType.CO_MANAGED_ENTITY);
+		addEEnumLiteral(entityTypeEEnum, EntityType.SELF_MANAGED_ENTITY);
+
+		// Create resource
+		createResource(eNS_URI);
+
+		// Create annotations
+		// http://www.eclipse.org/uml2/2.0.0/UML
+		createUMLAnnotations();
+		// http:///org/eclipse/emf/ecore/util/ExtendedMetaData
+		createExtendedMetaDataAnnotations();
+		// duplicates
+		createDuplicatesAnnotations();
+	}
+
+	/**
+	 * Initializes the annotations for <b>http://www.eclipse.org/uml2/2.0.0/UML</b>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void createUMLAnnotations() {
+		String source = "http://www.eclipse.org/uml2/2.0.0/UML";
+		addAnnotation(this,
+				source,
+				new String[] {
+						"originalName", "AAS"
+				});
+		addAnnotation(getHasKind_Base_HasKind_Class(),
+				source,
+				new String[] {
+						"originalName", "base_Class"
+				});
+		addAnnotation(getHasSemantics_Base_HasSemantics_Class(),
+				source,
+				new String[] {
+						"originalName", "base_Class"
+				});
+		addAnnotation(mimeTypeEEnum.getELiterals().get(0),
+				source,
+				new String[] {
+						"originalName", "application/json"
+				});
+		addAnnotation(mimeTypeEEnum.getELiterals().get(1),
+				source,
+				new String[] {
+						"originalName", "application/xls"
+				});
+		addAnnotation(mimeTypeEEnum.getELiterals().get(2),
+				source,
+				new String[] {
+						"originalName", "image/jpg"
+				});
+		addAnnotation(mimeTypeEEnum.getELiterals().get(3),
+				source,
+				new String[] {
+						"originalName", "application/pdf"
+				});
+		addAnnotation(mimeTypeEEnum.getELiterals().get(4),
+				source,
+				new String[] {
+						"originalName", "application/zip"
+				});
+		addAnnotation(mimeTypeEEnum.getELiterals().get(5),
+				source,
+				new String[] {
+						"originalName", "image/bmp"
+				});
+	}
+
+	/**
+	 * Initializes the annotations for <b>http:///org/eclipse/emf/ecore/util/ExtendedMetaData</b>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void createExtendedMetaDataAnnotations() {
+		String source = "http:///org/eclipse/emf/ecore/util/ExtendedMetaData";
+		addAnnotation(keyElementsEEnum,
+				source,
+				new String[] {
+						"baseType", "ReferableElements"
+				});
+		addAnnotation(referableElementsEEnum,
+				source,
+				new String[] {
+						"baseType", "IdentifiableElement"
+				});
+		addAnnotation(keyTypeEEnum,
+				source,
+				new String[] {
+						"baseType", "LocalKeyType"
+				});
+	}
+
+	/**
+	 * Initializes the annotations for <b>duplicates</b>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected void createDuplicatesAnnotations() {
+		String source = "duplicates";
+		addAnnotation(dataElementEClass,
+				source,
+				new String[] {
+				});
+		addAnnotation(operationEClass,
+				source,
+				new String[] {
+				});
+		addAnnotation(submodelElementCollectionEClass,
+				source,
+				new String[] {
+				});
+		addAnnotation(eventEClass,
+				source,
+				new String[] {
+				});
+		addAnnotation(capabilityEClass,
+				source,
+				new String[] {
+				});
+	}
+
+} // AASPackageImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AccessControlImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AccessControlImpl.java
new file mode 100644
index 0000000..adbec85
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AccessControlImpl.java
@@ -0,0 +1,54 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.AccessControl;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Access Control</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class AccessControlImpl extends MinimalEObjectImpl.Container implements AccessControl {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AccessControlImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.ACCESS_CONTROL;
+	}
+
+} // AccessControlImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AccessControlPolicyPointsImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AccessControlPolicyPointsImpl.java
new file mode 100644
index 0000000..1d420b4
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AccessControlPolicyPointsImpl.java
@@ -0,0 +1,517 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.AccessControl;
+import org.eclipse.papyrus.aas.AccessControlPolicyPoints;
+import org.eclipse.papyrus.aas.Submodel;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Access Control Policy Points</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl#getLocalAccessControl <em>Local Access Control</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl#isExternalAccessControl <em>External Access Control</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl#isExternalInformationPoints <em>External Information Points</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl#getInternalInformationPoint <em>Internal Information Point</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl#isExternalPolicyDecisionPoints <em>External Policy Decision Points</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AccessControlPolicyPointsImpl#isExternalPolicyEnforcementPoint <em>External Policy Enforcement Point</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AccessControlPolicyPointsImpl extends MinimalEObjectImpl.Container implements AccessControlPolicyPoints {
+	/**
+	 * The cached value of the '{@link #getLocalAccessControl() <em>Local Access Control</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getLocalAccessControl()
+	 * @generated
+	 * @ordered
+	 */
+	protected AccessControl localAccessControl;
+
+	/**
+	 * The default value of the '{@link #isExternalAccessControl() <em>External Access Control</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isExternalAccessControl()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final boolean EXTERNAL_ACCESS_CONTROL_EDEFAULT = false;
+
+	/**
+	 * The cached value of the '{@link #isExternalAccessControl() <em>External Access Control</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isExternalAccessControl()
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean externalAccessControl = EXTERNAL_ACCESS_CONTROL_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #isExternalInformationPoints() <em>External Information Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isExternalInformationPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final boolean EXTERNAL_INFORMATION_POINTS_EDEFAULT = false;
+
+	/**
+	 * The cached value of the '{@link #isExternalInformationPoints() <em>External Information Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isExternalInformationPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean externalInformationPoints = EXTERNAL_INFORMATION_POINTS_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getInternalInformationPoint() <em>Internal Information Point</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getInternalInformationPoint()
+	 * @generated
+	 * @ordered
+	 */
+	protected Submodel internalInformationPoint;
+
+	/**
+	 * The default value of the '{@link #isExternalPolicyDecisionPoints() <em>External Policy Decision Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isExternalPolicyDecisionPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final boolean EXTERNAL_POLICY_DECISION_POINTS_EDEFAULT = false;
+
+	/**
+	 * The cached value of the '{@link #isExternalPolicyDecisionPoints() <em>External Policy Decision Points</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isExternalPolicyDecisionPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean externalPolicyDecisionPoints = EXTERNAL_POLICY_DECISION_POINTS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #isExternalPolicyEnforcementPoint() <em>External Policy Enforcement Point</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isExternalPolicyEnforcementPoint()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final boolean EXTERNAL_POLICY_ENFORCEMENT_POINT_EDEFAULT = false;
+
+	/**
+	 * The cached value of the '{@link #isExternalPolicyEnforcementPoint() <em>External Policy Enforcement Point</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isExternalPolicyEnforcementPoint()
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean externalPolicyEnforcementPoint = EXTERNAL_POLICY_ENFORCEMENT_POINT_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AccessControlPolicyPointsImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.ACCESS_CONTROL_POLICY_POINTS;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AccessControl getLocalAccessControl() {
+		return localAccessControl;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public NotificationChain basicSetLocalAccessControl(AccessControl newLocalAccessControl, NotificationChain msgs) {
+		AccessControl oldLocalAccessControl = localAccessControl;
+		localAccessControl = newLocalAccessControl;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AASPackage.ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL, oldLocalAccessControl, newLocalAccessControl);
+			if (msgs == null)
+				msgs = notification;
+			else
+				msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setLocalAccessControl(AccessControl newLocalAccessControl) {
+		if (newLocalAccessControl != localAccessControl) {
+			NotificationChain msgs = null;
+			if (localAccessControl != null)
+				msgs = ((InternalEObject) localAccessControl).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AASPackage.ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL, null, msgs);
+			if (newLocalAccessControl != null)
+				msgs = ((InternalEObject) newLocalAccessControl).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AASPackage.ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL, null, msgs);
+			msgs = basicSetLocalAccessControl(newLocalAccessControl, msgs);
+			if (msgs != null)
+				msgs.dispatch();
+		} else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL, newLocalAccessControl, newLocalAccessControl));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isExternalAccessControl() {
+		return externalAccessControl;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setExternalAccessControl(boolean newExternalAccessControl) {
+		boolean oldExternalAccessControl = externalAccessControl;
+		externalAccessControl = newExternalAccessControl;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_ACCESS_CONTROL, oldExternalAccessControl, externalAccessControl));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isExternalInformationPoints() {
+		return externalInformationPoints;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setExternalInformationPoints(boolean newExternalInformationPoints) {
+		boolean oldExternalInformationPoints = externalInformationPoints;
+		externalInformationPoints = newExternalInformationPoints;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_INFORMATION_POINTS, oldExternalInformationPoints, externalInformationPoints));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Submodel getInternalInformationPoint() {
+		if (internalInformationPoint != null && internalInformationPoint.eIsProxy()) {
+			InternalEObject oldInternalInformationPoint = (InternalEObject) internalInformationPoint;
+			internalInformationPoint = (Submodel) eResolveProxy(oldInternalInformationPoint);
+			if (internalInformationPoint != oldInternalInformationPoint) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.ACCESS_CONTROL_POLICY_POINTS__INTERNAL_INFORMATION_POINT, oldInternalInformationPoint, internalInformationPoint));
+			}
+		}
+		return internalInformationPoint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Submodel basicGetInternalInformationPoint() {
+		return internalInformationPoint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setInternalInformationPoint(Submodel newInternalInformationPoint) {
+		Submodel oldInternalInformationPoint = internalInformationPoint;
+		internalInformationPoint = newInternalInformationPoint;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ACCESS_CONTROL_POLICY_POINTS__INTERNAL_INFORMATION_POINT, oldInternalInformationPoint, internalInformationPoint));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isExternalPolicyDecisionPoints() {
+		return externalPolicyDecisionPoints;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setExternalPolicyDecisionPoints(boolean newExternalPolicyDecisionPoints) {
+		boolean oldExternalPolicyDecisionPoints = externalPolicyDecisionPoints;
+		externalPolicyDecisionPoints = newExternalPolicyDecisionPoints;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_DECISION_POINTS, oldExternalPolicyDecisionPoints, externalPolicyDecisionPoints));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isExternalPolicyEnforcementPoint() {
+		return externalPolicyEnforcementPoint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setExternalPolicyEnforcementPoint(boolean newExternalPolicyEnforcementPoint) {
+		boolean oldExternalPolicyEnforcementPoint = externalPolicyEnforcementPoint;
+		externalPolicyEnforcementPoint = newExternalPolicyEnforcementPoint;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_ENFORCEMENT_POINT, oldExternalPolicyEnforcementPoint, externalPolicyEnforcementPoint));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL:
+			return basicSetLocalAccessControl(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 AASPackage.ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL:
+			return getLocalAccessControl();
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_ACCESS_CONTROL:
+			return isExternalAccessControl();
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_INFORMATION_POINTS:
+			return isExternalInformationPoints();
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__INTERNAL_INFORMATION_POINT:
+			if (resolve)
+				return getInternalInformationPoint();
+			return basicGetInternalInformationPoint();
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_DECISION_POINTS:
+			return isExternalPolicyDecisionPoints();
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_ENFORCEMENT_POINT:
+			return isExternalPolicyEnforcementPoint();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL:
+			setLocalAccessControl((AccessControl) newValue);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_ACCESS_CONTROL:
+			setExternalAccessControl((Boolean) newValue);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_INFORMATION_POINTS:
+			setExternalInformationPoints((Boolean) newValue);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__INTERNAL_INFORMATION_POINT:
+			setInternalInformationPoint((Submodel) newValue);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_DECISION_POINTS:
+			setExternalPolicyDecisionPoints((Boolean) newValue);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_ENFORCEMENT_POINT:
+			setExternalPolicyEnforcementPoint((Boolean) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL:
+			setLocalAccessControl((AccessControl) null);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_ACCESS_CONTROL:
+			setExternalAccessControl(EXTERNAL_ACCESS_CONTROL_EDEFAULT);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_INFORMATION_POINTS:
+			setExternalInformationPoints(EXTERNAL_INFORMATION_POINTS_EDEFAULT);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__INTERNAL_INFORMATION_POINT:
+			setInternalInformationPoint((Submodel) null);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_DECISION_POINTS:
+			setExternalPolicyDecisionPoints(EXTERNAL_POLICY_DECISION_POINTS_EDEFAULT);
+			return;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_ENFORCEMENT_POINT:
+			setExternalPolicyEnforcementPoint(EXTERNAL_POLICY_ENFORCEMENT_POINT_EDEFAULT);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__LOCAL_ACCESS_CONTROL:
+			return localAccessControl != null;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_ACCESS_CONTROL:
+			return externalAccessControl != EXTERNAL_ACCESS_CONTROL_EDEFAULT;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_INFORMATION_POINTS:
+			return externalInformationPoints != EXTERNAL_INFORMATION_POINTS_EDEFAULT;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__INTERNAL_INFORMATION_POINT:
+			return internalInformationPoint != null;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_DECISION_POINTS:
+			return externalPolicyDecisionPoints != EXTERNAL_POLICY_DECISION_POINTS_EDEFAULT;
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS__EXTERNAL_POLICY_ENFORCEMENT_POINT:
+			return externalPolicyEnforcementPoint != EXTERNAL_POLICY_ENFORCEMENT_POINT_EDEFAULT;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (externalAccessControl: ");
+		result.append(externalAccessControl);
+		result.append(", externalInformationPoints: ");
+		result.append(externalInformationPoints);
+		result.append(", externalPolicyDecisionPoints: ");
+		result.append(externalPolicyDecisionPoints);
+		result.append(", externalPolicyEnforcementPoint: ");
+		result.append(externalPolicyEnforcementPoint);
+		result.append(')');
+		return result.toString();
+	}
+
+} // AccessControlPolicyPointsImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AdministrativeInformationImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AdministrativeInformationImpl.java
new file mode 100644
index 0000000..f943722
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AdministrativeInformationImpl.java
@@ -0,0 +1,246 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+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.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.AdministrativeInformation;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Administrative Information</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AdministrativeInformationImpl#getVersion <em>Version</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AdministrativeInformationImpl#getRevision <em>Revision</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AdministrativeInformationImpl extends MinimalEObjectImpl.Container implements AdministrativeInformation {
+	/**
+	 * The default value of the '{@link #getVersion() <em>Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String VERSION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getVersion() <em>Version</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getVersion()
+	 * @generated
+	 * @ordered
+	 */
+	protected String version = VERSION_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getRevision() <em>Revision</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getRevision()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String REVISION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getRevision() <em>Revision</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getRevision()
+	 * @generated
+	 * @ordered
+	 */
+	protected String revision = REVISION_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AdministrativeInformationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.ADMINISTRATIVE_INFORMATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getVersion() {
+		return version;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setVersion(String newVersion) {
+		String oldVersion = version;
+		version = newVersion;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ADMINISTRATIVE_INFORMATION__VERSION, oldVersion, version));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getRevision() {
+		return revision;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setRevision(String newRevision) {
+		String oldRevision = revision;
+		revision = newRevision;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ADMINISTRATIVE_INFORMATION__REVISION, oldRevision, revision));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.ADMINISTRATIVE_INFORMATION__VERSION:
+			return getVersion();
+		case AASPackage.ADMINISTRATIVE_INFORMATION__REVISION:
+			return getRevision();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.ADMINISTRATIVE_INFORMATION__VERSION:
+			setVersion((String) newValue);
+			return;
+		case AASPackage.ADMINISTRATIVE_INFORMATION__REVISION:
+			setRevision((String) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.ADMINISTRATIVE_INFORMATION__VERSION:
+			setVersion(VERSION_EDEFAULT);
+			return;
+		case AASPackage.ADMINISTRATIVE_INFORMATION__REVISION:
+			setRevision(REVISION_EDEFAULT);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.ADMINISTRATIVE_INFORMATION__VERSION:
+			return VERSION_EDEFAULT == null ? version != null : !VERSION_EDEFAULT.equals(version);
+		case AASPackage.ADMINISTRATIVE_INFORMATION__REVISION:
+			return REVISION_EDEFAULT == null ? revision != null : !REVISION_EDEFAULT.equals(revision);
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (version: ");
+		result.append(version);
+		result.append(", revision: ");
+		result.append(revision);
+		result.append(')');
+		return result.toString();
+	}
+
+} // AdministrativeInformationImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AssetAdministrationShellImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AssetAdministrationShellImpl.java
new file mode 100644
index 0000000..9880938
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AssetAdministrationShellImpl.java
@@ -0,0 +1,487 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.common.util.EList;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Asset;
+import org.eclipse.papyrus.aas.AssetAdministrationShell;
+import org.eclipse.papyrus.aas.Security;
+import org.eclipse.papyrus.aas.Submodel;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Asset Administration Shell</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl#getDerivedFrom <em>Derived From</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl#getSecurity <em>Security</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl#getAsset <em>Asset</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl#getSubmodel <em>Submodel</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl#getUrl <em>Url</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AssetAdministrationShellImpl#getPort <em>Port</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AssetAdministrationShellImpl extends IdentifiableImpl implements AssetAdministrationShell {
+	/**
+	 * The cached value of the '{@link #getDerivedFrom() <em>Derived From</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getDerivedFrom()
+	 * @generated
+	 * @ordered
+	 */
+	protected AssetAdministrationShell derivedFrom;
+
+	/**
+	 * The cached value of the '{@link #getSecurity() <em>Security</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getSecurity()
+	 * @generated
+	 * @ordered
+	 */
+	protected Security security;
+
+	/**
+	 * The cached value of the '{@link #getAsset() <em>Asset</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getAsset()
+	 * @generated
+	 * @ordered
+	 */
+	protected Asset asset;
+
+	/**
+	 * The cached value of the '{@link #getSubmodel() <em>Submodel</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getSubmodel()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Submodel> submodel;
+
+	/**
+	 * The default value of the '{@link #getUrl() <em>Url</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getUrl()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String URL_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getUrl() <em>Url</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getUrl()
+	 * @generated
+	 * @ordered
+	 */
+	protected String url = URL_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getPort() <em>Port</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final int PORT_EDEFAULT = 0;
+
+	/**
+	 * The cached value of the '{@link #getPort() <em>Port</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getPort()
+	 * @generated
+	 * @ordered
+	 */
+	protected int port = PORT_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AssetAdministrationShellImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.ASSET_ADMINISTRATION_SHELL;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AssetAdministrationShell getDerivedFrom() {
+		if (derivedFrom != null && derivedFrom.eIsProxy()) {
+			InternalEObject oldDerivedFrom = (InternalEObject) derivedFrom;
+			derivedFrom = (AssetAdministrationShell) eResolveProxy(oldDerivedFrom);
+			if (derivedFrom != oldDerivedFrom) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.ASSET_ADMINISTRATION_SHELL__DERIVED_FROM, oldDerivedFrom, derivedFrom));
+			}
+		}
+		return derivedFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AssetAdministrationShell basicGetDerivedFrom() {
+		return derivedFrom;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setDerivedFrom(AssetAdministrationShell newDerivedFrom) {
+		AssetAdministrationShell oldDerivedFrom = derivedFrom;
+		derivedFrom = newDerivedFrom;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ASSET_ADMINISTRATION_SHELL__DERIVED_FROM, oldDerivedFrom, derivedFrom));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Security getSecurity() {
+		if (security != null && security.eIsProxy()) {
+			InternalEObject oldSecurity = (InternalEObject) security;
+			security = (Security) eResolveProxy(oldSecurity);
+			if (security != oldSecurity) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.ASSET_ADMINISTRATION_SHELL__SECURITY, oldSecurity, security));
+			}
+		}
+		return security;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Security basicGetSecurity() {
+		return security;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setSecurity(Security newSecurity) {
+		Security oldSecurity = security;
+		security = newSecurity;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ASSET_ADMINISTRATION_SHELL__SECURITY, oldSecurity, security));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Asset getAsset() {
+		if (asset != null && asset.eIsProxy()) {
+			InternalEObject oldAsset = (InternalEObject) asset;
+			asset = (Asset) eResolveProxy(oldAsset);
+			if (asset != oldAsset) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.ASSET_ADMINISTRATION_SHELL__ASSET, oldAsset, asset));
+			}
+		}
+		return asset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Asset basicGetAsset() {
+		return asset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setAsset(Asset newAsset) {
+		Asset oldAsset = asset;
+		asset = newAsset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ASSET_ADMINISTRATION_SHELL__ASSET, oldAsset, asset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Submodel> getSubmodel() {
+		if (submodel == null) {
+			submodel = new EObjectResolvingEList<Submodel>(Submodel.class, this, AASPackage.ASSET_ADMINISTRATION_SHELL__SUBMODEL);
+		}
+		return submodel;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getUrl() {
+		return url;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setUrl(String newUrl) {
+		String oldUrl = url;
+		url = newUrl;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ASSET_ADMINISTRATION_SHELL__URL, oldUrl, url));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getPort() {
+		return port;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setPort(int newPort) {
+		int oldPort = port;
+		port = newPort;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ASSET_ADMINISTRATION_SHELL__PORT, oldPort, port));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__DERIVED_FROM:
+			if (resolve)
+				return getDerivedFrom();
+			return basicGetDerivedFrom();
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__SECURITY:
+			if (resolve)
+				return getSecurity();
+			return basicGetSecurity();
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__ASSET:
+			if (resolve)
+				return getAsset();
+			return basicGetAsset();
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__SUBMODEL:
+			return getSubmodel();
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__URL:
+			return getUrl();
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__PORT:
+			return getPort();
+		}
+		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 AASPackage.ASSET_ADMINISTRATION_SHELL__DERIVED_FROM:
+			setDerivedFrom((AssetAdministrationShell) newValue);
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__SECURITY:
+			setSecurity((Security) newValue);
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__ASSET:
+			setAsset((Asset) newValue);
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__SUBMODEL:
+			getSubmodel().clear();
+			getSubmodel().addAll((Collection<? extends Submodel>) newValue);
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__URL:
+			setUrl((String) newValue);
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__PORT:
+			setPort((Integer) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__DERIVED_FROM:
+			setDerivedFrom((AssetAdministrationShell) null);
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__SECURITY:
+			setSecurity((Security) null);
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__ASSET:
+			setAsset((Asset) null);
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__SUBMODEL:
+			getSubmodel().clear();
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__URL:
+			setUrl(URL_EDEFAULT);
+			return;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__PORT:
+			setPort(PORT_EDEFAULT);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__DERIVED_FROM:
+			return derivedFrom != null;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__SECURITY:
+			return security != null;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__ASSET:
+			return asset != null;
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__SUBMODEL:
+			return submodel != null && !submodel.isEmpty();
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__URL:
+			return URL_EDEFAULT == null ? url != null : !URL_EDEFAULT.equals(url);
+		case AASPackage.ASSET_ADMINISTRATION_SHELL__PORT:
+			return port != PORT_EDEFAULT;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (url: ");
+		result.append(url);
+		result.append(", port: ");
+		result.append(port);
+		result.append(')');
+		return result.toString();
+	}
+
+} // AssetAdministrationShellImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AssetImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AssetImpl.java
new file mode 100644
index 0000000..be8a9a7
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/AssetImpl.java
@@ -0,0 +1,247 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import java.util.Collection;
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Asset;
+import org.eclipse.papyrus.aas.AssetKind;
+import org.eclipse.papyrus.aas.Endpoint;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Asset</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AssetImpl#getKind <em>Kind</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.AssetImpl#getEndpoint <em>Endpoint</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class AssetImpl extends IdentifiableImpl implements Asset {
+	/**
+	 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final AssetKind KIND_EDEFAULT = AssetKind.TYPE;
+
+	/**
+	 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected AssetKind kind = KIND_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getEndpoint() <em>Endpoint</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getEndpoint()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Endpoint> endpoint;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AssetImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.ASSET;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AssetKind getKind() {
+		return kind;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setKind(AssetKind newKind) {
+		AssetKind oldKind = kind;
+		kind = newKind == null ? KIND_EDEFAULT : newKind;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ASSET__KIND, oldKind, kind));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Endpoint> getEndpoint() {
+		if (endpoint == null) {
+			endpoint = new EObjectContainmentEList<Endpoint>(Endpoint.class, this, AASPackage.ASSET__ENDPOINT);
+		}
+		return endpoint;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+		case AASPackage.ASSET__ENDPOINT:
+			return ((InternalEList<?>) getEndpoint()).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 AASPackage.ASSET__KIND:
+			return getKind();
+		case AASPackage.ASSET__ENDPOINT:
+			return getEndpoint();
+		}
+		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 AASPackage.ASSET__KIND:
+			setKind((AssetKind) newValue);
+			return;
+		case AASPackage.ASSET__ENDPOINT:
+			getEndpoint().clear();
+			getEndpoint().addAll((Collection<? extends Endpoint>) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.ASSET__KIND:
+			setKind(KIND_EDEFAULT);
+			return;
+		case AASPackage.ASSET__ENDPOINT:
+			getEndpoint().clear();
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.ASSET__KIND:
+			return kind != KIND_EDEFAULT;
+		case AASPackage.ASSET__ENDPOINT:
+			return endpoint != null && !endpoint.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (kind: ");
+		result.append(kind);
+		result.append(')');
+		return result.toString();
+	}
+
+} // AssetImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/BasicEventImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/BasicEventImpl.java
new file mode 100644
index 0000000..d1665a8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/BasicEventImpl.java
@@ -0,0 +1,181 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.BasicEvent;
+
+import org.eclipse.uml2.uml.Element;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Basic Event</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.BasicEventImpl#getObserved <em>Observed</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class BasicEventImpl extends EventImpl implements BasicEvent {
+	/**
+	 * The cached value of the '{@link #getObserved() <em>Observed</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getObserved()
+	 * @generated
+	 * @ordered
+	 */
+	protected Element observed;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected BasicEventImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.BASIC_EVENT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Element getObserved() {
+		if (observed != null && observed.eIsProxy()) {
+			InternalEObject oldObserved = (InternalEObject) observed;
+			observed = (Element) eResolveProxy(oldObserved);
+			if (observed != oldObserved) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.BASIC_EVENT__OBSERVED, oldObserved, observed));
+			}
+		}
+		return observed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Element basicGetObserved() {
+		return observed;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setObserved(Element newObserved) {
+		Element oldObserved = observed;
+		observed = newObserved;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.BASIC_EVENT__OBSERVED, oldObserved, observed));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.BASIC_EVENT__OBSERVED:
+			if (resolve)
+				return getObserved();
+			return basicGetObserved();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.BASIC_EVENT__OBSERVED:
+			setObserved((Element) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.BASIC_EVENT__OBSERVED:
+			setObserved((Element) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.BASIC_EVENT__OBSERVED:
+			return observed != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // BasicEventImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/CapabilityImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/CapabilityImpl.java
new file mode 100644
index 0000000..0ce2750
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/CapabilityImpl.java
@@ -0,0 +1,214 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Capability;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Capability</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.CapabilityImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.CapabilityImpl#getIdShort <em>Id Short</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class CapabilityImpl extends SubmodelElementImpl implements Capability {
+	/**
+	 * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_Property()
+	 * @generated
+	 * @ordered
+	 */
+	protected Property base_Property;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CapabilityImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.CAPABILITY;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Property getBase_Property() {
+		if (base_Property != null && base_Property.eIsProxy()) {
+			InternalEObject oldBase_Property = (InternalEObject) base_Property;
+			base_Property = (Property) eResolveProxy(oldBase_Property);
+			if (base_Property != oldBase_Property) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.CAPABILITY__BASE_PROPERTY, oldBase_Property, base_Property));
+			}
+		}
+		return base_Property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Property basicGetBase_Property() {
+		return base_Property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_Property(Property newBase_Property) {
+		Property oldBase_Property = base_Property;
+		base_Property = newBase_Property;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.CAPABILITY__BASE_PROPERTY, oldBase_Property, base_Property));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getIdShort() {
+		// get the name of the Referable Element
+		if (getBase_Property() != null) {
+			String name = getBase_Property().getName();
+			// remove space
+			if (name != null) {
+				String idShort = name.toLowerCase().replace(" ", "");
+				return idShort;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isSetIdShort() {
+		return ID_SHORT_EDEFAULT == null ? getIdShort() != null : !ID_SHORT_EDEFAULT.equals(getIdShort());
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.CAPABILITY__BASE_PROPERTY:
+			if (resolve)
+				return getBase_Property();
+			return basicGetBase_Property();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.CAPABILITY__BASE_PROPERTY:
+			setBase_Property((Property) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.CAPABILITY__BASE_PROPERTY:
+			setBase_Property((Property) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.CAPABILITY__BASE_PROPERTY:
+			return base_Property != null;
+		case AASPackage.CAPABILITY__ID_SHORT:
+			return isSetIdShort();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // CapabilityImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/CertificateImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/CertificateImpl.java
new file mode 100644
index 0000000..ea44700
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/CertificateImpl.java
@@ -0,0 +1,54 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Certificate;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Certificate</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class CertificateImpl extends MinimalEObjectImpl.Container implements Certificate {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected CertificateImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.CERTIFICATE;
+	}
+
+} // CertificateImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/DataElementImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/DataElementImpl.java
new file mode 100644
index 0000000..6f75647
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/DataElementImpl.java
@@ -0,0 +1,214 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.DataElement;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Data Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.DataElementImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.DataElementImpl#getIdShort <em>Id Short</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class DataElementImpl extends SubmodelElementImpl implements DataElement {
+	/**
+	 * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_Property()
+	 * @generated
+	 * @ordered
+	 */
+	protected Property base_Property;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected DataElementImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.DATA_ELEMENT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Property getBase_Property() {
+		if (base_Property != null && base_Property.eIsProxy()) {
+			InternalEObject oldBase_Property = (InternalEObject) base_Property;
+			base_Property = (Property) eResolveProxy(oldBase_Property);
+			if (base_Property != oldBase_Property) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.DATA_ELEMENT__BASE_PROPERTY, oldBase_Property, base_Property));
+			}
+		}
+		return base_Property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Property basicGetBase_Property() {
+		return base_Property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_Property(Property newBase_Property) {
+		Property oldBase_Property = base_Property;
+		base_Property = newBase_Property;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.DATA_ELEMENT__BASE_PROPERTY, oldBase_Property, base_Property));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getIdShort() {
+		// get the name of the Referable Element
+		if (getBase_Property() != null) {
+			String name = getBase_Property().getName();
+			// remove space
+			if (name != null) {
+				String idShort = name.toLowerCase().replace(" ", "");
+				return idShort;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isSetIdShort() {
+		return ID_SHORT_EDEFAULT == null ? getIdShort() != null : !ID_SHORT_EDEFAULT.equals(getIdShort());
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.DATA_ELEMENT__BASE_PROPERTY:
+			if (resolve)
+				return getBase_Property();
+			return basicGetBase_Property();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.DATA_ELEMENT__BASE_PROPERTY:
+			setBase_Property((Property) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.DATA_ELEMENT__BASE_PROPERTY:
+			setBase_Property((Property) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.DATA_ELEMENT__BASE_PROPERTY:
+			return base_Property != null;
+		case AASPackage.DATA_ELEMENT__ID_SHORT:
+			return isSetIdShort();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // DataElementImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/EndpointImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/EndpointImpl.java
new file mode 100644
index 0000000..53f3ba0
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/EndpointImpl.java
@@ -0,0 +1,247 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+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.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Endpoint;
+import org.eclipse.papyrus.aas.ProtocolKind;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Endpoint</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.EndpointImpl#getAddress <em>Address</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.EndpointImpl#getProtocol <em>Protocol</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class EndpointImpl extends MinimalEObjectImpl.Container implements Endpoint {
+	/**
+	 * The default value of the '{@link #getAddress() <em>Address</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getAddress()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ADDRESS_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getAddress() <em>Address</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getAddress()
+	 * @generated
+	 * @ordered
+	 */
+	protected String address = ADDRESS_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getProtocol() <em>Protocol</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getProtocol()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final ProtocolKind PROTOCOL_EDEFAULT = ProtocolKind.HTTP;
+
+	/**
+	 * The cached value of the '{@link #getProtocol() <em>Protocol</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getProtocol()
+	 * @generated
+	 * @ordered
+	 */
+	protected ProtocolKind protocol = PROTOCOL_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected EndpointImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.ENDPOINT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getAddress() {
+		return address;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setAddress(String newAddress) {
+		String oldAddress = address;
+		address = newAddress;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ENDPOINT__ADDRESS, oldAddress, address));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ProtocolKind getProtocol() {
+		return protocol;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setProtocol(ProtocolKind newProtocol) {
+		ProtocolKind oldProtocol = protocol;
+		protocol = newProtocol == null ? PROTOCOL_EDEFAULT : newProtocol;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ENDPOINT__PROTOCOL, oldProtocol, protocol));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.ENDPOINT__ADDRESS:
+			return getAddress();
+		case AASPackage.ENDPOINT__PROTOCOL:
+			return getProtocol();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.ENDPOINT__ADDRESS:
+			setAddress((String) newValue);
+			return;
+		case AASPackage.ENDPOINT__PROTOCOL:
+			setProtocol((ProtocolKind) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.ENDPOINT__ADDRESS:
+			setAddress(ADDRESS_EDEFAULT);
+			return;
+		case AASPackage.ENDPOINT__PROTOCOL:
+			setProtocol(PROTOCOL_EDEFAULT);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.ENDPOINT__ADDRESS:
+			return ADDRESS_EDEFAULT == null ? address != null : !ADDRESS_EDEFAULT.equals(address);
+		case AASPackage.ENDPOINT__PROTOCOL:
+			return protocol != PROTOCOL_EDEFAULT;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (address: ");
+		result.append(address);
+		result.append(", protocol: ");
+		result.append(protocol);
+		result.append(')');
+		return result.toString();
+	}
+
+} // EndpointImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/EntityImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/EntityImpl.java
new file mode 100644
index 0000000..6fd7952
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/EntityImpl.java
@@ -0,0 +1,255 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Asset;
+import org.eclipse.papyrus.aas.Entity;
+import org.eclipse.papyrus.aas.EntityType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Entity</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.EntityImpl#getEntityType <em>Entity Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.EntityImpl#getAsset <em>Asset</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class EntityImpl extends SubmodelElementImpl implements Entity {
+	/**
+	 * The default value of the '{@link #getEntityType() <em>Entity Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getEntityType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final EntityType ENTITY_TYPE_EDEFAULT = EntityType.CO_MANAGED_ENTITY;
+
+	/**
+	 * The cached value of the '{@link #getEntityType() <em>Entity Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getEntityType()
+	 * @generated
+	 * @ordered
+	 */
+	protected EntityType entityType = ENTITY_TYPE_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getAsset() <em>Asset</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getAsset()
+	 * @generated
+	 * @ordered
+	 */
+	protected Asset asset;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected EntityImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.ENTITY;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EntityType getEntityType() {
+		return entityType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setEntityType(EntityType newEntityType) {
+		EntityType oldEntityType = entityType;
+		entityType = newEntityType == null ? ENTITY_TYPE_EDEFAULT : newEntityType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ENTITY__ENTITY_TYPE, oldEntityType, entityType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Asset getAsset() {
+		if (asset != null && asset.eIsProxy()) {
+			InternalEObject oldAsset = (InternalEObject) asset;
+			asset = (Asset) eResolveProxy(oldAsset);
+			if (asset != oldAsset) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.ENTITY__ASSET, oldAsset, asset));
+			}
+		}
+		return asset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Asset basicGetAsset() {
+		return asset;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setAsset(Asset newAsset) {
+		Asset oldAsset = asset;
+		asset = newAsset;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.ENTITY__ASSET, oldAsset, asset));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.ENTITY__ENTITY_TYPE:
+			return getEntityType();
+		case AASPackage.ENTITY__ASSET:
+			if (resolve)
+				return getAsset();
+			return basicGetAsset();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.ENTITY__ENTITY_TYPE:
+			setEntityType((EntityType) newValue);
+			return;
+		case AASPackage.ENTITY__ASSET:
+			setAsset((Asset) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.ENTITY__ENTITY_TYPE:
+			setEntityType(ENTITY_TYPE_EDEFAULT);
+			return;
+		case AASPackage.ENTITY__ASSET:
+			setAsset((Asset) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.ENTITY__ENTITY_TYPE:
+			return entityType != ENTITY_TYPE_EDEFAULT;
+		case AASPackage.ENTITY__ASSET:
+			return asset != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (entityType: ");
+		result.append(entityType);
+		result.append(')');
+		return result.toString();
+	}
+
+} // EntityImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/EventImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/EventImpl.java
new file mode 100644
index 0000000..9ca3688
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/EventImpl.java
@@ -0,0 +1,214 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Event;
+
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Event</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.EventImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.EventImpl#getIdShort <em>Id Short</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class EventImpl extends SubmodelElementImpl implements Event {
+	/**
+	 * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_Property()
+	 * @generated
+	 * @ordered
+	 */
+	protected Property base_Property;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected EventImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.EVENT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Property getBase_Property() {
+		if (base_Property != null && base_Property.eIsProxy()) {
+			InternalEObject oldBase_Property = (InternalEObject) base_Property;
+			base_Property = (Property) eResolveProxy(oldBase_Property);
+			if (base_Property != oldBase_Property) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.EVENT__BASE_PROPERTY, oldBase_Property, base_Property));
+			}
+		}
+		return base_Property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Property basicGetBase_Property() {
+		return base_Property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_Property(Property newBase_Property) {
+		Property oldBase_Property = base_Property;
+		base_Property = newBase_Property;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.EVENT__BASE_PROPERTY, oldBase_Property, base_Property));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getIdShort() {
+		// get the name of the Referable Element
+		if (getBase_Property() != null) {
+			String name = getBase_Property().getName();
+			// remove space
+			if (name != null) {
+				String idShort = name.toLowerCase().replace(" ", "");
+				return idShort;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isSetIdShort() {
+		return ID_SHORT_EDEFAULT == null ? getIdShort() != null : !ID_SHORT_EDEFAULT.equals(getIdShort());
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.EVENT__BASE_PROPERTY:
+			if (resolve)
+				return getBase_Property();
+			return basicGetBase_Property();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.EVENT__BASE_PROPERTY:
+			setBase_Property((Property) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.EVENT__BASE_PROPERTY:
+			setBase_Property((Property) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.EVENT__BASE_PROPERTY:
+			return base_Property != null;
+		case AASPackage.EVENT__ID_SHORT:
+			return isSetIdShort();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // EventImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/FileImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/FileImpl.java
new file mode 100644
index 0000000..c4047fc
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/FileImpl.java
@@ -0,0 +1,246 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.File;
+import org.eclipse.papyrus.aas.MimeType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>File</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.FileImpl#getPath <em>Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.FileImpl#getMimeType <em>Mime Type</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class FileImpl extends DataElementImpl implements File {
+	/**
+	 * The default value of the '{@link #getPath() <em>Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String PATH_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getPath() <em>Path</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getPath()
+	 * @generated
+	 * @ordered
+	 */
+	protected String path = PATH_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMimeType() <em>Mime Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getMimeType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final MimeType MIME_TYPE_EDEFAULT = MimeType.APPLICATIONJSON;
+
+	/**
+	 * The cached value of the '{@link #getMimeType() <em>Mime Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getMimeType()
+	 * @generated
+	 * @ordered
+	 */
+	protected MimeType mimeType = MIME_TYPE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected FileImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.FILE;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getPath() {
+		return path;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setPath(String newPath) {
+		String oldPath = path;
+		path = newPath;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.FILE__PATH, oldPath, path));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public MimeType getMimeType() {
+		return mimeType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setMimeType(MimeType newMimeType) {
+		MimeType oldMimeType = mimeType;
+		mimeType = newMimeType == null ? MIME_TYPE_EDEFAULT : newMimeType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.FILE__MIME_TYPE, oldMimeType, mimeType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.FILE__PATH:
+			return getPath();
+		case AASPackage.FILE__MIME_TYPE:
+			return getMimeType();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.FILE__PATH:
+			setPath((String) newValue);
+			return;
+		case AASPackage.FILE__MIME_TYPE:
+			setMimeType((MimeType) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.FILE__PATH:
+			setPath(PATH_EDEFAULT);
+			return;
+		case AASPackage.FILE__MIME_TYPE:
+			setMimeType(MIME_TYPE_EDEFAULT);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.FILE__PATH:
+			return PATH_EDEFAULT == null ? path != null : !PATH_EDEFAULT.equals(path);
+		case AASPackage.FILE__MIME_TYPE:
+			return mimeType != MIME_TYPE_EDEFAULT;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (path: ");
+		result.append(path);
+		result.append(", mimeType: ");
+		result.append(mimeType);
+		result.append(')');
+		return result.toString();
+	}
+
+} // FileImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/HasKindImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/HasKindImpl.java
new file mode 100644
index 0000000..0f5e34d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/HasKindImpl.java
@@ -0,0 +1,255 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.HasKind;
+import org.eclipse.papyrus.aas.ModelingKind;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Has Kind</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.HasKindImpl#getKind <em>Kind</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.HasKindImpl#getBase_HasKind_Class <em>Base Has Kind Class</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class HasKindImpl extends MinimalEObjectImpl.Container implements HasKind {
+	/**
+	 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final ModelingKind KIND_EDEFAULT = ModelingKind.TEMPLATE;
+
+	/**
+	 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected ModelingKind kind = KIND_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getBase_HasKind_Class() <em>Base Has Kind Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_HasKind_Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected org.eclipse.uml2.uml.Class base_HasKind_Class;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected HasKindImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.HAS_KIND;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ModelingKind getKind() {
+		return kind;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setKind(ModelingKind newKind) {
+		ModelingKind oldKind = kind;
+		kind = newKind == null ? KIND_EDEFAULT : newKind;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.HAS_KIND__KIND, oldKind, kind));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class getBase_HasKind_Class() {
+		if (base_HasKind_Class != null && base_HasKind_Class.eIsProxy()) {
+			InternalEObject oldBase_HasKind_Class = (InternalEObject) base_HasKind_Class;
+			base_HasKind_Class = (org.eclipse.uml2.uml.Class) eResolveProxy(oldBase_HasKind_Class);
+			if (base_HasKind_Class != oldBase_HasKind_Class) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.HAS_KIND__BASE_HAS_KIND_CLASS, oldBase_HasKind_Class, base_HasKind_Class));
+			}
+		}
+		return base_HasKind_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class basicGetBase_HasKind_Class() {
+		return base_HasKind_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_HasKind_Class(org.eclipse.uml2.uml.Class newBase_HasKind_Class) {
+		org.eclipse.uml2.uml.Class oldBase_HasKind_Class = base_HasKind_Class;
+		base_HasKind_Class = newBase_HasKind_Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.HAS_KIND__BASE_HAS_KIND_CLASS, oldBase_HasKind_Class, base_HasKind_Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.HAS_KIND__KIND:
+			return getKind();
+		case AASPackage.HAS_KIND__BASE_HAS_KIND_CLASS:
+			if (resolve)
+				return getBase_HasKind_Class();
+			return basicGetBase_HasKind_Class();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.HAS_KIND__KIND:
+			setKind((ModelingKind) newValue);
+			return;
+		case AASPackage.HAS_KIND__BASE_HAS_KIND_CLASS:
+			setBase_HasKind_Class((org.eclipse.uml2.uml.Class) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.HAS_KIND__KIND:
+			setKind(KIND_EDEFAULT);
+			return;
+		case AASPackage.HAS_KIND__BASE_HAS_KIND_CLASS:
+			setBase_HasKind_Class((org.eclipse.uml2.uml.Class) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.HAS_KIND__KIND:
+			return kind != KIND_EDEFAULT;
+		case AASPackage.HAS_KIND__BASE_HAS_KIND_CLASS:
+			return base_HasKind_Class != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (kind: ");
+		result.append(kind);
+		result.append(')');
+		return result.toString();
+	}
+
+} // HasKindImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/HasSemanticsImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/HasSemanticsImpl.java
new file mode 100644
index 0000000..6570823
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/HasSemanticsImpl.java
@@ -0,0 +1,246 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.HasSemantics;
+import org.eclipse.papyrus.aas.Reference;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Has Semantics</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.HasSemanticsImpl#getSemanticId <em>Semantic Id</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.HasSemanticsImpl#getBase_HasSemantics_Class <em>Base Has Semantics Class</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class HasSemanticsImpl extends MinimalEObjectImpl.Container implements HasSemantics {
+	/**
+	 * The cached value of the '{@link #getSemanticId() <em>Semantic Id</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getSemanticId()
+	 * @generated
+	 * @ordered
+	 */
+	protected Reference semanticId;
+
+	/**
+	 * The cached value of the '{@link #getBase_HasSemantics_Class() <em>Base Has Semantics Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_HasSemantics_Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected org.eclipse.uml2.uml.Class base_HasSemantics_Class;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected HasSemanticsImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.HAS_SEMANTICS;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Reference getSemanticId() {
+		if (semanticId != null && semanticId.eIsProxy()) {
+			InternalEObject oldSemanticId = (InternalEObject) semanticId;
+			semanticId = (Reference) eResolveProxy(oldSemanticId);
+			if (semanticId != oldSemanticId) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.HAS_SEMANTICS__SEMANTIC_ID, oldSemanticId, semanticId));
+			}
+		}
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Reference basicGetSemanticId() {
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setSemanticId(Reference newSemanticId) {
+		Reference oldSemanticId = semanticId;
+		semanticId = newSemanticId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.HAS_SEMANTICS__SEMANTIC_ID, oldSemanticId, semanticId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class getBase_HasSemantics_Class() {
+		if (base_HasSemantics_Class != null && base_HasSemantics_Class.eIsProxy()) {
+			InternalEObject oldBase_HasSemantics_Class = (InternalEObject) base_HasSemantics_Class;
+			base_HasSemantics_Class = (org.eclipse.uml2.uml.Class) eResolveProxy(oldBase_HasSemantics_Class);
+			if (base_HasSemantics_Class != oldBase_HasSemantics_Class) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS, oldBase_HasSemantics_Class, base_HasSemantics_Class));
+			}
+		}
+		return base_HasSemantics_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class basicGetBase_HasSemantics_Class() {
+		return base_HasSemantics_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_HasSemantics_Class(org.eclipse.uml2.uml.Class newBase_HasSemantics_Class) {
+		org.eclipse.uml2.uml.Class oldBase_HasSemantics_Class = base_HasSemantics_Class;
+		base_HasSemantics_Class = newBase_HasSemantics_Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS, oldBase_HasSemantics_Class, base_HasSemantics_Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.HAS_SEMANTICS__SEMANTIC_ID:
+			if (resolve)
+				return getSemanticId();
+			return basicGetSemanticId();
+		case AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS:
+			if (resolve)
+				return getBase_HasSemantics_Class();
+			return basicGetBase_HasSemantics_Class();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.HAS_SEMANTICS__SEMANTIC_ID:
+			setSemanticId((Reference) newValue);
+			return;
+		case AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS:
+			setBase_HasSemantics_Class((org.eclipse.uml2.uml.Class) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.HAS_SEMANTICS__SEMANTIC_ID:
+			setSemanticId((Reference) null);
+			return;
+		case AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS:
+			setBase_HasSemantics_Class((org.eclipse.uml2.uml.Class) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.HAS_SEMANTICS__SEMANTIC_ID:
+			return semanticId != null;
+		case AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS:
+			return base_HasSemantics_Class != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // HasSemanticsImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/IdentifiableImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/IdentifiableImpl.java
new file mode 100644
index 0000000..fc7556d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/IdentifiableImpl.java
@@ -0,0 +1,276 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.NotificationChain;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.AdministrativeInformation;
+import org.eclipse.papyrus.aas.Identifiable;
+import org.eclipse.papyrus.aas.Identifier;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Identifiable</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.IdentifiableImpl#getAdministration <em>Administration</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.IdentifiableImpl#getIdentification <em>Identification</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class IdentifiableImpl extends RefereableImpl implements Identifiable {
+	/**
+	 * The cached value of the '{@link #getAdministration() <em>Administration</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getAdministration()
+	 * @generated
+	 * @ordered
+	 */
+	protected AdministrativeInformation administration;
+
+	/**
+	 * The cached value of the '{@link #getIdentification() <em>Identification</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getIdentification()
+	 * @generated
+	 * @ordered
+	 */
+	protected Identifier identification;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected IdentifiableImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.IDENTIFIABLE;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AdministrativeInformation getAdministration() {
+		return administration;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public NotificationChain basicSetAdministration(AdministrativeInformation newAdministration, NotificationChain msgs) {
+		AdministrativeInformation oldAdministration = administration;
+		administration = newAdministration;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AASPackage.IDENTIFIABLE__ADMINISTRATION, oldAdministration, newAdministration);
+			if (msgs == null)
+				msgs = notification;
+			else
+				msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setAdministration(AdministrativeInformation newAdministration) {
+		if (newAdministration != administration) {
+			NotificationChain msgs = null;
+			if (administration != null)
+				msgs = ((InternalEObject) administration).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AASPackage.IDENTIFIABLE__ADMINISTRATION, null, msgs);
+			if (newAdministration != null)
+				msgs = ((InternalEObject) newAdministration).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AASPackage.IDENTIFIABLE__ADMINISTRATION, null, msgs);
+			msgs = basicSetAdministration(newAdministration, msgs);
+			if (msgs != null)
+				msgs.dispatch();
+		} else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.IDENTIFIABLE__ADMINISTRATION, newAdministration, newAdministration));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Identifier getIdentification() {
+		return identification;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public NotificationChain basicSetIdentification(Identifier newIdentification, NotificationChain msgs) {
+		Identifier oldIdentification = identification;
+		identification = newIdentification;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AASPackage.IDENTIFIABLE__IDENTIFICATION, oldIdentification, newIdentification);
+			if (msgs == null)
+				msgs = notification;
+			else
+				msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setIdentification(Identifier newIdentification) {
+		if (newIdentification != identification) {
+			NotificationChain msgs = null;
+			if (identification != null)
+				msgs = ((InternalEObject) identification).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AASPackage.IDENTIFIABLE__IDENTIFICATION, null, msgs);
+			if (newIdentification != null)
+				msgs = ((InternalEObject) newIdentification).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AASPackage.IDENTIFIABLE__IDENTIFICATION, null, msgs);
+			msgs = basicSetIdentification(newIdentification, msgs);
+			if (msgs != null)
+				msgs.dispatch();
+		} else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.IDENTIFIABLE__IDENTIFICATION, newIdentification, newIdentification));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+		case AASPackage.IDENTIFIABLE__ADMINISTRATION:
+			return basicSetAdministration(null, msgs);
+		case AASPackage.IDENTIFIABLE__IDENTIFICATION:
+			return basicSetIdentification(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 AASPackage.IDENTIFIABLE__ADMINISTRATION:
+			return getAdministration();
+		case AASPackage.IDENTIFIABLE__IDENTIFICATION:
+			return getIdentification();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.IDENTIFIABLE__ADMINISTRATION:
+			setAdministration((AdministrativeInformation) newValue);
+			return;
+		case AASPackage.IDENTIFIABLE__IDENTIFICATION:
+			setIdentification((Identifier) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.IDENTIFIABLE__ADMINISTRATION:
+			setAdministration((AdministrativeInformation) null);
+			return;
+		case AASPackage.IDENTIFIABLE__IDENTIFICATION:
+			setIdentification((Identifier) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.IDENTIFIABLE__ADMINISTRATION:
+			return administration != null;
+		case AASPackage.IDENTIFIABLE__IDENTIFICATION:
+			return identification != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // IdentifiableImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/IdentifierImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/IdentifierImpl.java
new file mode 100644
index 0000000..fb96da8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/IdentifierImpl.java
@@ -0,0 +1,247 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+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.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Identifier;
+import org.eclipse.papyrus.aas.IdentifierType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Identifier</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.IdentifierImpl#getIdType <em>Id Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.IdentifierImpl#getId <em>Id</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class IdentifierImpl extends MinimalEObjectImpl.Container implements Identifier {
+	/**
+	 * The default value of the '{@link #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final IdentifierType ID_TYPE_EDEFAULT = IdentifierType.CUSTOM;
+
+	/**
+	 * The cached value of the '{@link #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected IdentifierType idType = ID_TYPE_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 IdentifierImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.IDENTIFIER;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public IdentifierType getIdType() {
+		return idType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setIdType(IdentifierType newIdType) {
+		IdentifierType oldIdType = idType;
+		idType = newIdType == null ? ID_TYPE_EDEFAULT : newIdType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.IDENTIFIER__ID_TYPE, oldIdType, idType));
+	}
+
+	/**
+	 * <!-- 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, AASPackage.IDENTIFIER__ID, oldId, id));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.IDENTIFIER__ID_TYPE:
+			return getIdType();
+		case AASPackage.IDENTIFIER__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 AASPackage.IDENTIFIER__ID_TYPE:
+			setIdType((IdentifierType) newValue);
+			return;
+		case AASPackage.IDENTIFIER__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 AASPackage.IDENTIFIER__ID_TYPE:
+			setIdType(ID_TYPE_EDEFAULT);
+			return;
+		case AASPackage.IDENTIFIER__ID:
+			setId(ID_EDEFAULT);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.IDENTIFIER__ID_TYPE:
+			return idType != ID_TYPE_EDEFAULT;
+		case AASPackage.IDENTIFIER__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();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (idType: ");
+		result.append(idType);
+		result.append(", id: ");
+		result.append(id);
+		result.append(')');
+		return result.toString();
+	}
+
+} // IdentifierImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/KeyImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/KeyImpl.java
new file mode 100644
index 0000000..c824e0b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/KeyImpl.java
@@ -0,0 +1,364 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+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.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Key;
+import org.eclipse.papyrus.aas.KeyElements;
+import org.eclipse.papyrus.aas.KeyType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Key</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.KeyImpl#getType <em>Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.KeyImpl#isLocal <em>Local</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.KeyImpl#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.KeyImpl#getIdType <em>Id Type</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class KeyImpl extends MinimalEObjectImpl.Container implements Key {
+	/**
+	 * The default value of the '{@link #getType() <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final KeyElements TYPE_EDEFAULT = KeyElements.GLOBAL_REFERENCE;
+
+	/**
+	 * The cached value of the '{@link #getType() <em>Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getType()
+	 * @generated
+	 * @ordered
+	 */
+	protected KeyElements type = TYPE_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #isLocal() <em>Local</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isLocal()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final boolean LOCAL_EDEFAULT = true;
+
+	/**
+	 * The cached value of the '{@link #isLocal() <em>Local</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #isLocal()
+	 * @generated
+	 * @ordered
+	 */
+	protected boolean local = LOCAL_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 #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final KeyType ID_TYPE_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getIdType() <em>Id Type</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getIdType()
+	 * @generated
+	 * @ordered
+	 */
+	protected KeyType idType = ID_TYPE_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected KeyImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.KEY;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public KeyElements getType() {
+		return type;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setType(KeyElements newType) {
+		KeyElements oldType = type;
+		type = newType == null ? TYPE_EDEFAULT : newType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.KEY__TYPE, oldType, type));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isLocal() {
+		return local;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setLocal(boolean newLocal) {
+		boolean oldLocal = local;
+		local = newLocal;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.KEY__LOCAL, oldLocal, local));
+	}
+
+	/**
+	 * <!-- 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, AASPackage.KEY__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public KeyType getIdType() {
+		return idType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setIdType(KeyType newIdType) {
+		KeyType oldIdType = idType;
+		idType = newIdType == null ? ID_TYPE_EDEFAULT : newIdType;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.KEY__ID_TYPE, oldIdType, idType));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.KEY__TYPE:
+			return getType();
+		case AASPackage.KEY__LOCAL:
+			return isLocal();
+		case AASPackage.KEY__VALUE:
+			return getValue();
+		case AASPackage.KEY__ID_TYPE:
+			return getIdType();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.KEY__TYPE:
+			setType((KeyElements) newValue);
+			return;
+		case AASPackage.KEY__LOCAL:
+			setLocal((Boolean) newValue);
+			return;
+		case AASPackage.KEY__VALUE:
+			setValue((String) newValue);
+			return;
+		case AASPackage.KEY__ID_TYPE:
+			setIdType((KeyType) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.KEY__TYPE:
+			setType(TYPE_EDEFAULT);
+			return;
+		case AASPackage.KEY__LOCAL:
+			setLocal(LOCAL_EDEFAULT);
+			return;
+		case AASPackage.KEY__VALUE:
+			setValue(VALUE_EDEFAULT);
+			return;
+		case AASPackage.KEY__ID_TYPE:
+			setIdType(ID_TYPE_EDEFAULT);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.KEY__TYPE:
+			return type != TYPE_EDEFAULT;
+		case AASPackage.KEY__LOCAL:
+			return local != LOCAL_EDEFAULT;
+		case AASPackage.KEY__VALUE:
+			return VALUE_EDEFAULT == null ? value != null : !VALUE_EDEFAULT.equals(value);
+		case AASPackage.KEY__ID_TYPE:
+			return idType != ID_TYPE_EDEFAULT;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (type: ");
+		result.append(type);
+		result.append(", local: ");
+		result.append(local);
+		result.append(", value: ");
+		result.append(value);
+		result.append(", idType: ");
+		result.append(idType);
+		result.append(')');
+		return result.toString();
+	}
+
+} // KeyImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/OperationImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/OperationImpl.java
new file mode 100644
index 0000000..386f5d2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/OperationImpl.java
@@ -0,0 +1,212 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Operation;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Operation</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.OperationImpl#getBase_Operation <em>Base Operation</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.OperationImpl#getIdShort <em>Id Short</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class OperationImpl extends SubmodelElementImpl implements Operation {
+	/**
+	 * The cached value of the '{@link #getBase_Operation() <em>Base Operation</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_Operation()
+	 * @generated
+	 * @ordered
+	 */
+	protected org.eclipse.uml2.uml.Operation base_Operation;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected OperationImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.OPERATION;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Operation getBase_Operation() {
+		if (base_Operation != null && base_Operation.eIsProxy()) {
+			InternalEObject oldBase_Operation = (InternalEObject) base_Operation;
+			base_Operation = (org.eclipse.uml2.uml.Operation) eResolveProxy(oldBase_Operation);
+			if (base_Operation != oldBase_Operation) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.OPERATION__BASE_OPERATION, oldBase_Operation, base_Operation));
+			}
+		}
+		return base_Operation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Operation basicGetBase_Operation() {
+		return base_Operation;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_Operation(org.eclipse.uml2.uml.Operation newBase_Operation) {
+		org.eclipse.uml2.uml.Operation oldBase_Operation = base_Operation;
+		base_Operation = newBase_Operation;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.OPERATION__BASE_OPERATION, oldBase_Operation, base_Operation));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String getIdShort() {
+		// get the name of the Referable Element
+		if (getBase_Operation() != null) {
+			String name = getBase_Operation().getName();
+			// remove space
+			if (name != null) {
+				String idShort = name.toLowerCase().replace(" ", "");
+				return idShort;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public boolean isSetIdShort() {
+		return ID_SHORT_EDEFAULT == null ? getIdShort() != null : !ID_SHORT_EDEFAULT.equals(getIdShort());
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.OPERATION__BASE_OPERATION:
+			if (resolve)
+				return getBase_Operation();
+			return basicGetBase_Operation();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.OPERATION__BASE_OPERATION:
+			setBase_Operation((org.eclipse.uml2.uml.Operation) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.OPERATION__BASE_OPERATION:
+			setBase_Operation((org.eclipse.uml2.uml.Operation) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.OPERATION__BASE_OPERATION:
+			return base_Operation != null;
+		case AASPackage.OPERATION__ID_SHORT:
+			return isSetIdShort();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // OperationImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/PropertyImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/PropertyImpl.java
new file mode 100644
index 0000000..3e0b1be
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/PropertyImpl.java
@@ -0,0 +1,52 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Property</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class PropertyImpl extends DataElementImpl implements Property {
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected PropertyImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.PROPERTY;
+	}
+
+} // PropertyImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/RangeImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/RangeImpl.java
new file mode 100644
index 0000000..6c3d1d1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/RangeImpl.java
@@ -0,0 +1,245 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Range;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Range</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.RangeImpl#getMin <em>Min</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.RangeImpl#getMax <em>Max</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class RangeImpl extends DataElementImpl implements Range {
+	/**
+	 * The default value of the '{@link #getMin() <em>Min</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getMin()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final int MIN_EDEFAULT = 0;
+
+	/**
+	 * The cached value of the '{@link #getMin() <em>Min</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getMin()
+	 * @generated
+	 * @ordered
+	 */
+	protected int min = MIN_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getMax() <em>Max</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getMax()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final int MAX_EDEFAULT = 0;
+
+	/**
+	 * The cached value of the '{@link #getMax() <em>Max</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getMax()
+	 * @generated
+	 * @ordered
+	 */
+	protected int max = MAX_EDEFAULT;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected RangeImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.RANGE;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getMin() {
+		return min;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setMin(int newMin) {
+		int oldMin = min;
+		min = newMin;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.RANGE__MIN, oldMin, min));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public int getMax() {
+		return max;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setMax(int newMax) {
+		int oldMax = max;
+		max = newMax;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.RANGE__MAX, oldMax, max));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.RANGE__MIN:
+			return getMin();
+		case AASPackage.RANGE__MAX:
+			return getMax();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.RANGE__MIN:
+			setMin((Integer) newValue);
+			return;
+		case AASPackage.RANGE__MAX:
+			setMax((Integer) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.RANGE__MIN:
+			setMin(MIN_EDEFAULT);
+			return;
+		case AASPackage.RANGE__MAX:
+			setMax(MAX_EDEFAULT);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.RANGE__MIN:
+			return min != MIN_EDEFAULT;
+		case AASPackage.RANGE__MAX:
+			return max != MAX_EDEFAULT;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (min: ");
+		result.append(min);
+		result.append(", max: ");
+		result.append(max);
+		result.append(')');
+		return result.toString();
+	}
+
+} // RangeImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/RefereableImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/RefereableImpl.java
new file mode 100644
index 0000000..b22bce2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/RefereableImpl.java
@@ -0,0 +1,412 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Refereable;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Refereable</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.RefereableImpl#getIdShort <em>Id Short</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.RefereableImpl#getCategory <em>Category</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.RefereableImpl#getDescription <em>Description</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.RefereableImpl#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.RefereableImpl#getParent <em>Parent</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class RefereableImpl extends MinimalEObjectImpl.Container implements Refereable {
+	/**
+	 * The default value of the '{@link #getIdShort() <em>Id Short</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getIdShort()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String ID_SHORT_EDEFAULT = null;
+
+	/**
+	 * The default value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String CATEGORY_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getCategory() <em>Category</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getCategory()
+	 * @generated
+	 * @ordered
+	 */
+	protected String category = CATEGORY_EDEFAULT;
+
+	/**
+	 * The default value of the '{@link #getDescription() <em>Description</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String DESCRIPTION_EDEFAULT = null;
+
+	/**
+	 * The cached value of the '{@link #getDescription() <em>Description</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getDescription()
+	 * @generated
+	 * @ordered
+	 */
+	protected String description = DESCRIPTION_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected org.eclipse.uml2.uml.Class base_Class;
+
+	/**
+	 * The cached value of the '{@link #getParent() <em>Parent</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getParent()
+	 * @generated
+	 * @ordered
+	 */
+	protected Refereable parent;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected RefereableImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.REFEREABLE;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getIdShort() {
+		// get the name of the Referable Element
+		if (getBase_Class() != null) {
+			String name = getBase_Class().getName();
+			// remove space
+			if (name != null) {
+				String idShort = name.toLowerCase().replace(" ", "");
+				return idShort;
+			}
+		}
+		return null;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getCategory() {
+		return category;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setCategory(String newCategory) {
+		String oldCategory = category;
+		category = newCategory;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.REFEREABLE__CATEGORY, oldCategory, category));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public String getDescription() {
+		return description;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setDescription(String newDescription) {
+		String oldDescription = description;
+		description = newDescription;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.REFEREABLE__DESCRIPTION, oldDescription, description));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class getBase_Class() {
+		if (base_Class != null && base_Class.eIsProxy()) {
+			InternalEObject oldBase_Class = (InternalEObject) base_Class;
+			base_Class = (org.eclipse.uml2.uml.Class) eResolveProxy(oldBase_Class);
+			if (base_Class != oldBase_Class) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.REFEREABLE__BASE_CLASS, oldBase_Class, base_Class));
+			}
+		}
+		return base_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class basicGetBase_Class() {
+		return base_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) {
+		org.eclipse.uml2.uml.Class oldBase_Class = base_Class;
+		base_Class = newBase_Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.REFEREABLE__BASE_CLASS, oldBase_Class, base_Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Refereable getParent() {
+		if (parent != null && parent.eIsProxy()) {
+			InternalEObject oldParent = (InternalEObject) parent;
+			parent = (Refereable) eResolveProxy(oldParent);
+			if (parent != oldParent) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.REFEREABLE__PARENT, oldParent, parent));
+			}
+		}
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Refereable basicGetParent() {
+		return parent;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setParent(Refereable newParent) {
+		Refereable oldParent = parent;
+		parent = newParent;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.REFEREABLE__PARENT, oldParent, parent));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.REFEREABLE__ID_SHORT:
+			return getIdShort();
+		case AASPackage.REFEREABLE__CATEGORY:
+			return getCategory();
+		case AASPackage.REFEREABLE__DESCRIPTION:
+			return getDescription();
+		case AASPackage.REFEREABLE__BASE_CLASS:
+			if (resolve)
+				return getBase_Class();
+			return basicGetBase_Class();
+		case AASPackage.REFEREABLE__PARENT:
+			if (resolve)
+				return getParent();
+			return basicGetParent();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.REFEREABLE__CATEGORY:
+			setCategory((String) newValue);
+			return;
+		case AASPackage.REFEREABLE__DESCRIPTION:
+			setDescription((String) newValue);
+			return;
+		case AASPackage.REFEREABLE__BASE_CLASS:
+			setBase_Class((org.eclipse.uml2.uml.Class) newValue);
+			return;
+		case AASPackage.REFEREABLE__PARENT:
+			setParent((Refereable) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.REFEREABLE__CATEGORY:
+			setCategory(CATEGORY_EDEFAULT);
+			return;
+		case AASPackage.REFEREABLE__DESCRIPTION:
+			setDescription(DESCRIPTION_EDEFAULT);
+			return;
+		case AASPackage.REFEREABLE__BASE_CLASS:
+			setBase_Class((org.eclipse.uml2.uml.Class) null);
+			return;
+		case AASPackage.REFEREABLE__PARENT:
+			setParent((Refereable) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.REFEREABLE__ID_SHORT:
+			return ID_SHORT_EDEFAULT == null ? getIdShort() != null : !ID_SHORT_EDEFAULT.equals(getIdShort());
+		case AASPackage.REFEREABLE__CATEGORY:
+			return CATEGORY_EDEFAULT == null ? category != null : !CATEGORY_EDEFAULT.equals(category);
+		case AASPackage.REFEREABLE__DESCRIPTION:
+			return DESCRIPTION_EDEFAULT == null ? description != null : !DESCRIPTION_EDEFAULT.equals(description);
+		case AASPackage.REFEREABLE__BASE_CLASS:
+			return base_Class != null;
+		case AASPackage.REFEREABLE__PARENT:
+			return parent != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (category: ");
+		result.append(category);
+		result.append(", description: ");
+		result.append(description);
+		result.append(')');
+		return result.toString();
+	}
+
+} // RefereableImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/ReferenceElementImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/ReferenceElementImpl.java
new file mode 100644
index 0000000..2a80e8e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/ReferenceElementImpl.java
@@ -0,0 +1,180 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Reference;
+import org.eclipse.papyrus.aas.ReferenceElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Reference Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.ReferenceElementImpl#getValue <em>Value</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ReferenceElementImpl extends DataElementImpl implements ReferenceElement {
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected Reference value;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ReferenceElementImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.REFERENCE_ELEMENT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Reference getValue() {
+		if (value != null && value.eIsProxy()) {
+			InternalEObject oldValue = (InternalEObject) value;
+			value = (Reference) eResolveProxy(oldValue);
+			if (value != oldValue) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.REFERENCE_ELEMENT__VALUE, oldValue, value));
+			}
+		}
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Reference basicGetValue() {
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setValue(Reference newValue) {
+		Reference oldValue = value;
+		value = newValue;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.REFERENCE_ELEMENT__VALUE, oldValue, value));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.REFERENCE_ELEMENT__VALUE:
+			if (resolve)
+				return getValue();
+			return basicGetValue();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.REFERENCE_ELEMENT__VALUE:
+			setValue((Reference) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.REFERENCE_ELEMENT__VALUE:
+			setValue((Reference) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.REFERENCE_ELEMENT__VALUE:
+			return value != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // ReferenceElementImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/ReferenceImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/ReferenceImpl.java
new file mode 100644
index 0000000..6b99e45
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/ReferenceImpl.java
@@ -0,0 +1,241 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.Key;
+import org.eclipse.papyrus.aas.Reference;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Reference</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.ReferenceImpl#getKey <em>Key</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.ReferenceImpl#getBase_Class <em>Base Class</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class ReferenceImpl extends MinimalEObjectImpl.Container implements Reference {
+	/**
+	 * The cached value of the '{@link #getKey() <em>Key</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getKey()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Key> key;
+
+	/**
+	 * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected org.eclipse.uml2.uml.Class base_Class;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected ReferenceImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.REFERENCE;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Key> getKey() {
+		if (key == null) {
+			key = new EObjectContainmentEList<Key>(Key.class, this, AASPackage.REFERENCE__KEY);
+		}
+		return key;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class getBase_Class() {
+		if (base_Class != null && base_Class.eIsProxy()) {
+			InternalEObject oldBase_Class = (InternalEObject) base_Class;
+			base_Class = (org.eclipse.uml2.uml.Class) eResolveProxy(oldBase_Class);
+			if (base_Class != oldBase_Class) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.REFERENCE__BASE_CLASS, oldBase_Class, base_Class));
+			}
+		}
+		return base_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class basicGetBase_Class() {
+		return base_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) {
+		org.eclipse.uml2.uml.Class oldBase_Class = base_Class;
+		base_Class = newBase_Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.REFERENCE__BASE_CLASS, oldBase_Class, base_Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+		case AASPackage.REFERENCE__KEY:
+			return ((InternalEList<?>) getKey()).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 AASPackage.REFERENCE__KEY:
+			return getKey();
+		case AASPackage.REFERENCE__BASE_CLASS:
+			if (resolve)
+				return getBase_Class();
+			return basicGetBase_Class();
+		}
+		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 AASPackage.REFERENCE__KEY:
+			getKey().clear();
+			getKey().addAll((Collection<? extends Key>) newValue);
+			return;
+		case AASPackage.REFERENCE__BASE_CLASS:
+			setBase_Class((org.eclipse.uml2.uml.Class) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.REFERENCE__KEY:
+			getKey().clear();
+			return;
+		case AASPackage.REFERENCE__BASE_CLASS:
+			setBase_Class((org.eclipse.uml2.uml.Class) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.REFERENCE__KEY:
+			return key != null && !key.isEmpty();
+		case AASPackage.REFERENCE__BASE_CLASS:
+			return base_Class != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // ReferenceImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/RelationshipElementImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/RelationshipElementImpl.java
new file mode 100644
index 0000000..f5ccb2e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/RelationshipElementImpl.java
@@ -0,0 +1,181 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.RelationshipElement;
+
+import org.eclipse.uml2.uml.Dependency;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Relationship Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.RelationshipElementImpl#getBase_Dependency <em>Base Dependency</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class RelationshipElementImpl extends SubmodelElementImpl implements RelationshipElement {
+	/**
+	 * The cached value of the '{@link #getBase_Dependency() <em>Base Dependency</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_Dependency()
+	 * @generated
+	 * @ordered
+	 */
+	protected Dependency base_Dependency;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected RelationshipElementImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.RELATIONSHIP_ELEMENT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Dependency getBase_Dependency() {
+		if (base_Dependency != null && base_Dependency.eIsProxy()) {
+			InternalEObject oldBase_Dependency = (InternalEObject) base_Dependency;
+			base_Dependency = (Dependency) eResolveProxy(oldBase_Dependency);
+			if (base_Dependency != oldBase_Dependency) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.RELATIONSHIP_ELEMENT__BASE_DEPENDENCY, oldBase_Dependency, base_Dependency));
+			}
+		}
+		return base_Dependency;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Dependency basicGetBase_Dependency() {
+		return base_Dependency;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_Dependency(Dependency newBase_Dependency) {
+		Dependency oldBase_Dependency = base_Dependency;
+		base_Dependency = newBase_Dependency;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.RELATIONSHIP_ELEMENT__BASE_DEPENDENCY, oldBase_Dependency, base_Dependency));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.RELATIONSHIP_ELEMENT__BASE_DEPENDENCY:
+			if (resolve)
+				return getBase_Dependency();
+			return basicGetBase_Dependency();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.RELATIONSHIP_ELEMENT__BASE_DEPENDENCY:
+			setBase_Dependency((Dependency) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.RELATIONSHIP_ELEMENT__BASE_DEPENDENCY:
+			setBase_Dependency((Dependency) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.RELATIONSHIP_ELEMENT__BASE_DEPENDENCY:
+			return base_Dependency != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // RelationshipElementImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SecurityImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SecurityImpl.java
new file mode 100644
index 0000000..775bfc4
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SecurityImpl.java
@@ -0,0 +1,353 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+import org.eclipse.emf.ecore.impl.MinimalEObjectImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.AccessControlPolicyPoints;
+import org.eclipse.papyrus.aas.Certificate;
+import org.eclipse.papyrus.aas.Reference;
+import org.eclipse.papyrus.aas.Security;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Security</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SecurityImpl#getBase_Class <em>Base Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SecurityImpl#getAccessControlPolicyPoints <em>Access Control Policy Points</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SecurityImpl#getCertificate <em>Certificate</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SecurityImpl#getRequiredCertificateExtension <em>Required Certificate Extension</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SecurityImpl extends MinimalEObjectImpl.Container implements Security {
+	/**
+	 * The cached value of the '{@link #getBase_Class() <em>Base Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected org.eclipse.uml2.uml.Class base_Class;
+
+	/**
+	 * The cached value of the '{@link #getAccessControlPolicyPoints() <em>Access Control Policy Points</em>}' containment reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getAccessControlPolicyPoints()
+	 * @generated
+	 * @ordered
+	 */
+	protected AccessControlPolicyPoints accessControlPolicyPoints;
+
+	/**
+	 * The cached value of the '{@link #getCertificate() <em>Certificate</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getCertificate()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Certificate> certificate;
+
+	/**
+	 * The cached value of the '{@link #getRequiredCertificateExtension() <em>Required Certificate Extension</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getRequiredCertificateExtension()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<Reference> requiredCertificateExtension;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected SecurityImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.SECURITY;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class getBase_Class() {
+		if (base_Class != null && base_Class.eIsProxy()) {
+			InternalEObject oldBase_Class = (InternalEObject) base_Class;
+			base_Class = (org.eclipse.uml2.uml.Class) eResolveProxy(oldBase_Class);
+			if (base_Class != oldBase_Class) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.SECURITY__BASE_CLASS, oldBase_Class, base_Class));
+			}
+		}
+		return base_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class basicGetBase_Class() {
+		return base_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_Class(org.eclipse.uml2.uml.Class newBase_Class) {
+		org.eclipse.uml2.uml.Class oldBase_Class = base_Class;
+		base_Class = newBase_Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SECURITY__BASE_CLASS, oldBase_Class, base_Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AccessControlPolicyPoints getAccessControlPolicyPoints() {
+		return accessControlPolicyPoints;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public NotificationChain basicSetAccessControlPolicyPoints(AccessControlPolicyPoints newAccessControlPolicyPoints, NotificationChain msgs) {
+		AccessControlPolicyPoints oldAccessControlPolicyPoints = accessControlPolicyPoints;
+		accessControlPolicyPoints = newAccessControlPolicyPoints;
+		if (eNotificationRequired()) {
+			ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, AASPackage.SECURITY__ACCESS_CONTROL_POLICY_POINTS, oldAccessControlPolicyPoints, newAccessControlPolicyPoints);
+			if (msgs == null)
+				msgs = notification;
+			else
+				msgs.add(notification);
+		}
+		return msgs;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setAccessControlPolicyPoints(AccessControlPolicyPoints newAccessControlPolicyPoints) {
+		if (newAccessControlPolicyPoints != accessControlPolicyPoints) {
+			NotificationChain msgs = null;
+			if (accessControlPolicyPoints != null)
+				msgs = ((InternalEObject) accessControlPolicyPoints).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - AASPackage.SECURITY__ACCESS_CONTROL_POLICY_POINTS, null, msgs);
+			if (newAccessControlPolicyPoints != null)
+				msgs = ((InternalEObject) newAccessControlPolicyPoints).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - AASPackage.SECURITY__ACCESS_CONTROL_POLICY_POINTS, null, msgs);
+			msgs = basicSetAccessControlPolicyPoints(newAccessControlPolicyPoints, msgs);
+			if (msgs != null)
+				msgs.dispatch();
+		} else if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SECURITY__ACCESS_CONTROL_POLICY_POINTS, newAccessControlPolicyPoints, newAccessControlPolicyPoints));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Certificate> getCertificate() {
+		if (certificate == null) {
+			certificate = new EObjectContainmentEList<Certificate>(Certificate.class, this, AASPackage.SECURITY__CERTIFICATE);
+		}
+		return certificate;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<Reference> getRequiredCertificateExtension() {
+		if (requiredCertificateExtension == null) {
+			requiredCertificateExtension = new EObjectResolvingEList<Reference>(Reference.class, this, AASPackage.SECURITY__REQUIRED_CERTIFICATE_EXTENSION);
+		}
+		return requiredCertificateExtension;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+		case AASPackage.SECURITY__ACCESS_CONTROL_POLICY_POINTS:
+			return basicSetAccessControlPolicyPoints(null, msgs);
+		case AASPackage.SECURITY__CERTIFICATE:
+			return ((InternalEList<?>) getCertificate()).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 AASPackage.SECURITY__BASE_CLASS:
+			if (resolve)
+				return getBase_Class();
+			return basicGetBase_Class();
+		case AASPackage.SECURITY__ACCESS_CONTROL_POLICY_POINTS:
+			return getAccessControlPolicyPoints();
+		case AASPackage.SECURITY__CERTIFICATE:
+			return getCertificate();
+		case AASPackage.SECURITY__REQUIRED_CERTIFICATE_EXTENSION:
+			return getRequiredCertificateExtension();
+		}
+		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 AASPackage.SECURITY__BASE_CLASS:
+			setBase_Class((org.eclipse.uml2.uml.Class) newValue);
+			return;
+		case AASPackage.SECURITY__ACCESS_CONTROL_POLICY_POINTS:
+			setAccessControlPolicyPoints((AccessControlPolicyPoints) newValue);
+			return;
+		case AASPackage.SECURITY__CERTIFICATE:
+			getCertificate().clear();
+			getCertificate().addAll((Collection<? extends Certificate>) newValue);
+			return;
+		case AASPackage.SECURITY__REQUIRED_CERTIFICATE_EXTENSION:
+			getRequiredCertificateExtension().clear();
+			getRequiredCertificateExtension().addAll((Collection<? extends Reference>) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.SECURITY__BASE_CLASS:
+			setBase_Class((org.eclipse.uml2.uml.Class) null);
+			return;
+		case AASPackage.SECURITY__ACCESS_CONTROL_POLICY_POINTS:
+			setAccessControlPolicyPoints((AccessControlPolicyPoints) null);
+			return;
+		case AASPackage.SECURITY__CERTIFICATE:
+			getCertificate().clear();
+			return;
+		case AASPackage.SECURITY__REQUIRED_CERTIFICATE_EXTENSION:
+			getRequiredCertificateExtension().clear();
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.SECURITY__BASE_CLASS:
+			return base_Class != null;
+		case AASPackage.SECURITY__ACCESS_CONTROL_POLICY_POINTS:
+			return accessControlPolicyPoints != null;
+		case AASPackage.SECURITY__CERTIFICATE:
+			return certificate != null && !certificate.isEmpty();
+		case AASPackage.SECURITY__REQUIRED_CERTIFICATE_EXTENSION:
+			return requiredCertificateExtension != null && !requiredCertificateExtension.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // SecurityImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SubmodelElementCollectionImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SubmodelElementCollectionImpl.java
new file mode 100644
index 0000000..a14d6fb
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SubmodelElementCollectionImpl.java
@@ -0,0 +1,337 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.SubmodelElement;
+import org.eclipse.papyrus.aas.SubmodelElementCollection;
+import org.eclipse.uml2.uml.DataType;
+import org.eclipse.uml2.uml.Property;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Submodel Element Collection</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelElementCollectionImpl#getValue <em>Value</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelElementCollectionImpl#getBase_Property <em>Base Property</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelElementCollectionImpl#getBase_DataType <em>Base Data Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelElementCollectionImpl#getIdShort <em>Id Short</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SubmodelElementCollectionImpl extends SubmodelElementImpl implements SubmodelElementCollection {
+	/**
+	 * The cached value of the '{@link #getValue() <em>Value</em>}' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @see #getValue()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<SubmodelElement> value;
+
+	/**
+	 * The cached value of the '{@link #getBase_Property() <em>Base Property</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @see #getBase_Property()
+	 * @generated
+	 * @ordered
+	 */
+	protected Property base_Property;
+
+	/**
+	 * The cached value of the '{@link #getBase_DataType() <em>Base Data Type</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @see #getBase_DataType()
+	 * @generated
+	 * @ordered
+	 */
+	protected DataType base_DataType;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	protected SubmodelElementCollectionImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.SUBMODEL_ELEMENT_COLLECTION;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	public EList<SubmodelElement> getValue() {
+		if (value == null) {
+			value = new EObjectResolvingEList<>(SubmodelElement.class, this, AASPackage.SUBMODEL_ELEMENT_COLLECTION__VALUE);
+		}
+		return value;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	public Property getBase_Property() {
+		if (base_Property != null && base_Property.eIsProxy()) {
+			InternalEObject oldBase_Property = (InternalEObject) base_Property;
+			base_Property = (Property) eResolveProxy(oldBase_Property);
+			if (base_Property != oldBase_Property) {
+				if (eNotificationRequired()) {
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_PROPERTY, oldBase_Property, base_Property));
+				}
+			}
+		}
+		return base_Property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	public Property basicGetBase_Property() {
+		return base_Property;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	public void setBase_Property(Property newBase_Property) {
+		Property oldBase_Property = base_Property;
+		base_Property = newBase_Property;
+		if (eNotificationRequired()) {
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_PROPERTY, oldBase_Property, base_Property));
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	public DataType getBase_DataType() {
+		if (base_DataType != null && base_DataType.eIsProxy()) {
+			InternalEObject oldBase_DataType = (InternalEObject) base_DataType;
+			base_DataType = (DataType) eResolveProxy(oldBase_DataType);
+			if (base_DataType != oldBase_DataType) {
+				if (eNotificationRequired()) {
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_DATA_TYPE, oldBase_DataType, base_DataType));
+				}
+			}
+		}
+		return base_DataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	public DataType basicGetBase_DataType() {
+		return base_DataType;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	public void setBase_DataType(DataType newBase_DataType) {
+		DataType oldBase_DataType = base_DataType;
+		base_DataType = newBase_DataType;
+		if (eNotificationRequired()) {
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_DATA_TYPE, oldBase_DataType, base_DataType));
+		}
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	public String getIdShort() {
+		// get the name of the Referable Element
+		String name = "";
+		if (getBase_DataType() != null) {
+			name = getBase_DataType().getName();
+
+		} else if (getBase_Class() != null) {
+			name = getBase_Class().getName();
+
+		} else if (getBase_Property() != null) {
+			name = getBase_Property().getName();
+
+		}
+		// remove space
+		if (name != null) {
+			String idShort = name.toLowerCase().replace(" ", "");
+			return idShort;
+		}
+		return name;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	public boolean isSetIdShort() {
+		return ID_SHORT_EDEFAULT == null ? getIdShort() != null : !ID_SHORT_EDEFAULT.equals(getIdShort());
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__VALUE:
+			return getValue();
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_PROPERTY:
+			if (resolve) {
+				return getBase_Property();
+			}
+			return basicGetBase_Property();
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_DATA_TYPE:
+			if (resolve) {
+				return getBase_DataType();
+			}
+			return basicGetBase_DataType();
+		}
+		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 AASPackage.SUBMODEL_ELEMENT_COLLECTION__VALUE:
+			getValue().clear();
+			getValue().addAll((Collection<? extends SubmodelElement>) newValue);
+			return;
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_PROPERTY:
+			setBase_Property((Property) newValue);
+			return;
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_DATA_TYPE:
+			setBase_DataType((DataType) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__VALUE:
+			getValue().clear();
+			return;
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_PROPERTY:
+			setBase_Property((Property) null);
+			return;
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_DATA_TYPE:
+			setBase_DataType((DataType) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 *
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__VALUE:
+			return value != null && !value.isEmpty();
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_PROPERTY:
+			return base_Property != null;
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__BASE_DATA_TYPE:
+			return base_DataType != null;
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION__ID_SHORT:
+			return isSetIdShort();
+		}
+		return super.eIsSet(featureID);
+	}
+
+} // SubmodelElementCollectionImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SubmodelElementImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SubmodelElementImpl.java
new file mode 100644
index 0000000..926a44a
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SubmodelElementImpl.java
@@ -0,0 +1,288 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import org.eclipse.emf.common.notify.Notification;
+
+import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.InternalEObject;
+
+import org.eclipse.emf.ecore.impl.ENotificationImpl;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.HasSemantics;
+import org.eclipse.papyrus.aas.Reference;
+import org.eclipse.papyrus.aas.SubmodelElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Submodel Element</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelElementImpl#getSemanticId <em>Semantic Id</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelElementImpl#getBase_HasSemantics_Class <em>Base Has Semantics Class</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public abstract class SubmodelElementImpl extends RefereableImpl implements SubmodelElement {
+	/**
+	 * The cached value of the '{@link #getSemanticId() <em>Semantic Id</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getSemanticId()
+	 * @generated
+	 * @ordered
+	 */
+	protected Reference semanticId;
+
+	/**
+	 * The cached value of the '{@link #getBase_HasSemantics_Class() <em>Base Has Semantics Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_HasSemantics_Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected org.eclipse.uml2.uml.Class base_HasSemantics_Class;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected SubmodelElementImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.SUBMODEL_ELEMENT;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Reference getSemanticId() {
+		if (semanticId != null && semanticId.eIsProxy()) {
+			InternalEObject oldSemanticId = (InternalEObject) semanticId;
+			semanticId = (Reference) eResolveProxy(oldSemanticId);
+			if (semanticId != oldSemanticId) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.SUBMODEL_ELEMENT__SEMANTIC_ID, oldSemanticId, semanticId));
+			}
+		}
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Reference basicGetSemanticId() {
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setSemanticId(Reference newSemanticId) {
+		Reference oldSemanticId = semanticId;
+		semanticId = newSemanticId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SUBMODEL_ELEMENT__SEMANTIC_ID, oldSemanticId, semanticId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class getBase_HasSemantics_Class() {
+		if (base_HasSemantics_Class != null && base_HasSemantics_Class.eIsProxy()) {
+			InternalEObject oldBase_HasSemantics_Class = (InternalEObject) base_HasSemantics_Class;
+			base_HasSemantics_Class = (org.eclipse.uml2.uml.Class) eResolveProxy(oldBase_HasSemantics_Class);
+			if (base_HasSemantics_Class != oldBase_HasSemantics_Class) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS, oldBase_HasSemantics_Class, base_HasSemantics_Class));
+			}
+		}
+		return base_HasSemantics_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class basicGetBase_HasSemantics_Class() {
+		return base_HasSemantics_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_HasSemantics_Class(org.eclipse.uml2.uml.Class newBase_HasSemantics_Class) {
+		org.eclipse.uml2.uml.Class oldBase_HasSemantics_Class = base_HasSemantics_Class;
+		base_HasSemantics_Class = newBase_HasSemantics_Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS, oldBase_HasSemantics_Class, base_HasSemantics_Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public Object eGet(int featureID, boolean resolve, boolean coreType) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL_ELEMENT__SEMANTIC_ID:
+			if (resolve)
+				return getSemanticId();
+			return basicGetSemanticId();
+		case AASPackage.SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS:
+			if (resolve)
+				return getBase_HasSemantics_Class();
+			return basicGetBase_HasSemantics_Class();
+		}
+		return super.eGet(featureID, resolve, coreType);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eSet(int featureID, Object newValue) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL_ELEMENT__SEMANTIC_ID:
+			setSemanticId((Reference) newValue);
+			return;
+		case AASPackage.SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS:
+			setBase_HasSemantics_Class((org.eclipse.uml2.uml.Class) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL_ELEMENT__SEMANTIC_ID:
+			setSemanticId((Reference) null);
+			return;
+		case AASPackage.SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS:
+			setBase_HasSemantics_Class((org.eclipse.uml2.uml.Class) null);
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL_ELEMENT__SEMANTIC_ID:
+			return semanticId != null;
+		case AASPackage.SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS:
+			return base_HasSemantics_Class != null;
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == HasSemantics.class) {
+			switch (derivedFeatureID) {
+			case AASPackage.SUBMODEL_ELEMENT__SEMANTIC_ID:
+				return AASPackage.HAS_SEMANTICS__SEMANTIC_ID;
+			case AASPackage.SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS:
+				return AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS;
+			default:
+				return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == HasSemantics.class) {
+			switch (baseFeatureID) {
+			case AASPackage.HAS_SEMANTICS__SEMANTIC_ID:
+				return AASPackage.SUBMODEL_ELEMENT__SEMANTIC_ID;
+			case AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS:
+				return AASPackage.SUBMODEL_ELEMENT__BASE_HAS_SEMANTICS_CLASS;
+			default:
+				return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+} // SubmodelElementImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SubmodelImpl.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SubmodelImpl.java
new file mode 100644
index 0000000..c8292bb
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/impl/SubmodelImpl.java
@@ -0,0 +1,510 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.impl;
+
+import java.util.Collection;
+
+import org.eclipse.emf.common.notify.Notification;
+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.ENotificationImpl;
+
+import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.InternalEList;
+
+import org.eclipse.papyrus.aas.AASPackage;
+import org.eclipse.papyrus.aas.HasKind;
+import org.eclipse.papyrus.aas.HasSemantics;
+import org.eclipse.papyrus.aas.ModelingKind;
+import org.eclipse.papyrus.aas.Reference;
+import org.eclipse.papyrus.aas.Submodel;
+import org.eclipse.papyrus.aas.SubmodelElement;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Submodel</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * </p>
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelImpl#getKind <em>Kind</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelImpl#getBase_HasKind_Class <em>Base Has Kind Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelImpl#getSemanticId <em>Semantic Id</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelImpl#getBase_HasSemantics_Class <em>Base Has Semantics Class</em>}</li>
+ * <li>{@link org.eclipse.papyrus.aas.impl.SubmodelImpl#getSubmodelelement <em>Submodelelement</em>}</li>
+ * </ul>
+ *
+ * @generated
+ */
+public class SubmodelImpl extends IdentifiableImpl implements Submodel {
+	/**
+	 * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final ModelingKind KIND_EDEFAULT = ModelingKind.TEMPLATE;
+
+	/**
+	 * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getKind()
+	 * @generated
+	 * @ordered
+	 */
+	protected ModelingKind kind = KIND_EDEFAULT;
+
+	/**
+	 * The cached value of the '{@link #getBase_HasKind_Class() <em>Base Has Kind Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_HasKind_Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected org.eclipse.uml2.uml.Class base_HasKind_Class;
+
+	/**
+	 * The cached value of the '{@link #getSemanticId() <em>Semantic Id</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getSemanticId()
+	 * @generated
+	 * @ordered
+	 */
+	protected Reference semanticId;
+
+	/**
+	 * The cached value of the '{@link #getBase_HasSemantics_Class() <em>Base Has Semantics Class</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getBase_HasSemantics_Class()
+	 * @generated
+	 * @ordered
+	 */
+	protected org.eclipse.uml2.uml.Class base_HasSemantics_Class;
+
+	/**
+	 * The cached value of the '{@link #getSubmodelelement() <em>Submodelelement</em>}' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @see #getSubmodelelement()
+	 * @generated
+	 * @ordered
+	 */
+	protected EList<SubmodelElement> submodelelement;
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected SubmodelImpl() {
+		super();
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	protected EClass eStaticClass() {
+		return AASPackage.Literals.SUBMODEL;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public ModelingKind getKind() {
+		return kind;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setKind(ModelingKind newKind) {
+		ModelingKind oldKind = kind;
+		kind = newKind == null ? KIND_EDEFAULT : newKind;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SUBMODEL__KIND, oldKind, kind));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class getBase_HasKind_Class() {
+		if (base_HasKind_Class != null && base_HasKind_Class.eIsProxy()) {
+			InternalEObject oldBase_HasKind_Class = (InternalEObject) base_HasKind_Class;
+			base_HasKind_Class = (org.eclipse.uml2.uml.Class) eResolveProxy(oldBase_HasKind_Class);
+			if (base_HasKind_Class != oldBase_HasKind_Class) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.SUBMODEL__BASE_HAS_KIND_CLASS, oldBase_HasKind_Class, base_HasKind_Class));
+			}
+		}
+		return base_HasKind_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class basicGetBase_HasKind_Class() {
+		return base_HasKind_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_HasKind_Class(org.eclipse.uml2.uml.Class newBase_HasKind_Class) {
+		org.eclipse.uml2.uml.Class oldBase_HasKind_Class = base_HasKind_Class;
+		base_HasKind_Class = newBase_HasKind_Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SUBMODEL__BASE_HAS_KIND_CLASS, oldBase_HasKind_Class, base_HasKind_Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Reference getSemanticId() {
+		if (semanticId != null && semanticId.eIsProxy()) {
+			InternalEObject oldSemanticId = (InternalEObject) semanticId;
+			semanticId = (Reference) eResolveProxy(oldSemanticId);
+			if (semanticId != oldSemanticId) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.SUBMODEL__SEMANTIC_ID, oldSemanticId, semanticId));
+			}
+		}
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public Reference basicGetSemanticId() {
+		return semanticId;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setSemanticId(Reference newSemanticId) {
+		Reference oldSemanticId = semanticId;
+		semanticId = newSemanticId;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SUBMODEL__SEMANTIC_ID, oldSemanticId, semanticId));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class getBase_HasSemantics_Class() {
+		if (base_HasSemantics_Class != null && base_HasSemantics_Class.eIsProxy()) {
+			InternalEObject oldBase_HasSemantics_Class = (InternalEObject) base_HasSemantics_Class;
+			base_HasSemantics_Class = (org.eclipse.uml2.uml.Class) eResolveProxy(oldBase_HasSemantics_Class);
+			if (base_HasSemantics_Class != oldBase_HasSemantics_Class) {
+				if (eNotificationRequired())
+					eNotify(new ENotificationImpl(this, Notification.RESOLVE, AASPackage.SUBMODEL__BASE_HAS_SEMANTICS_CLASS, oldBase_HasSemantics_Class, base_HasSemantics_Class));
+			}
+		}
+		return base_HasSemantics_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public org.eclipse.uml2.uml.Class basicGetBase_HasSemantics_Class() {
+		return base_HasSemantics_Class;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public void setBase_HasSemantics_Class(org.eclipse.uml2.uml.Class newBase_HasSemantics_Class) {
+		org.eclipse.uml2.uml.Class oldBase_HasSemantics_Class = base_HasSemantics_Class;
+		base_HasSemantics_Class = newBase_HasSemantics_Class;
+		if (eNotificationRequired())
+			eNotify(new ENotificationImpl(this, Notification.SET, AASPackage.SUBMODEL__BASE_HAS_SEMANTICS_CLASS, oldBase_HasSemantics_Class, base_HasSemantics_Class));
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public EList<SubmodelElement> getSubmodelelement() {
+		if (submodelelement == null) {
+			submodelelement = new EObjectContainmentEList<SubmodelElement>(SubmodelElement.class, this, AASPackage.SUBMODEL__SUBMODELELEMENT);
+		}
+		return submodelelement;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL__SUBMODELELEMENT:
+			return ((InternalEList<?>) getSubmodelelement()).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 AASPackage.SUBMODEL__KIND:
+			return getKind();
+		case AASPackage.SUBMODEL__BASE_HAS_KIND_CLASS:
+			if (resolve)
+				return getBase_HasKind_Class();
+			return basicGetBase_HasKind_Class();
+		case AASPackage.SUBMODEL__SEMANTIC_ID:
+			if (resolve)
+				return getSemanticId();
+			return basicGetSemanticId();
+		case AASPackage.SUBMODEL__BASE_HAS_SEMANTICS_CLASS:
+			if (resolve)
+				return getBase_HasSemantics_Class();
+			return basicGetBase_HasSemantics_Class();
+		case AASPackage.SUBMODEL__SUBMODELELEMENT:
+			return getSubmodelelement();
+		}
+		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 AASPackage.SUBMODEL__KIND:
+			setKind((ModelingKind) newValue);
+			return;
+		case AASPackage.SUBMODEL__BASE_HAS_KIND_CLASS:
+			setBase_HasKind_Class((org.eclipse.uml2.uml.Class) newValue);
+			return;
+		case AASPackage.SUBMODEL__SEMANTIC_ID:
+			setSemanticId((Reference) newValue);
+			return;
+		case AASPackage.SUBMODEL__BASE_HAS_SEMANTICS_CLASS:
+			setBase_HasSemantics_Class((org.eclipse.uml2.uml.Class) newValue);
+			return;
+		case AASPackage.SUBMODEL__SUBMODELELEMENT:
+			getSubmodelelement().clear();
+			getSubmodelelement().addAll((Collection<? extends SubmodelElement>) newValue);
+			return;
+		}
+		super.eSet(featureID, newValue);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public void eUnset(int featureID) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL__KIND:
+			setKind(KIND_EDEFAULT);
+			return;
+		case AASPackage.SUBMODEL__BASE_HAS_KIND_CLASS:
+			setBase_HasKind_Class((org.eclipse.uml2.uml.Class) null);
+			return;
+		case AASPackage.SUBMODEL__SEMANTIC_ID:
+			setSemanticId((Reference) null);
+			return;
+		case AASPackage.SUBMODEL__BASE_HAS_SEMANTICS_CLASS:
+			setBase_HasSemantics_Class((org.eclipse.uml2.uml.Class) null);
+			return;
+		case AASPackage.SUBMODEL__SUBMODELELEMENT:
+			getSubmodelelement().clear();
+			return;
+		}
+		super.eUnset(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public boolean eIsSet(int featureID) {
+		switch (featureID) {
+		case AASPackage.SUBMODEL__KIND:
+			return kind != KIND_EDEFAULT;
+		case AASPackage.SUBMODEL__BASE_HAS_KIND_CLASS:
+			return base_HasKind_Class != null;
+		case AASPackage.SUBMODEL__SEMANTIC_ID:
+			return semanticId != null;
+		case AASPackage.SUBMODEL__BASE_HAS_SEMANTICS_CLASS:
+			return base_HasSemantics_Class != null;
+		case AASPackage.SUBMODEL__SUBMODELELEMENT:
+			return submodelelement != null && !submodelelement.isEmpty();
+		}
+		return super.eIsSet(featureID);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eBaseStructuralFeatureID(int derivedFeatureID, Class<?> baseClass) {
+		if (baseClass == HasKind.class) {
+			switch (derivedFeatureID) {
+			case AASPackage.SUBMODEL__KIND:
+				return AASPackage.HAS_KIND__KIND;
+			case AASPackage.SUBMODEL__BASE_HAS_KIND_CLASS:
+				return AASPackage.HAS_KIND__BASE_HAS_KIND_CLASS;
+			default:
+				return -1;
+			}
+		}
+		if (baseClass == HasSemantics.class) {
+			switch (derivedFeatureID) {
+			case AASPackage.SUBMODEL__SEMANTIC_ID:
+				return AASPackage.HAS_SEMANTICS__SEMANTIC_ID;
+			case AASPackage.SUBMODEL__BASE_HAS_SEMANTICS_CLASS:
+				return AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS;
+			default:
+				return -1;
+			}
+		}
+		return super.eBaseStructuralFeatureID(derivedFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public int eDerivedStructuralFeatureID(int baseFeatureID, Class<?> baseClass) {
+		if (baseClass == HasKind.class) {
+			switch (baseFeatureID) {
+			case AASPackage.HAS_KIND__KIND:
+				return AASPackage.SUBMODEL__KIND;
+			case AASPackage.HAS_KIND__BASE_HAS_KIND_CLASS:
+				return AASPackage.SUBMODEL__BASE_HAS_KIND_CLASS;
+			default:
+				return -1;
+			}
+		}
+		if (baseClass == HasSemantics.class) {
+			switch (baseFeatureID) {
+			case AASPackage.HAS_SEMANTICS__SEMANTIC_ID:
+				return AASPackage.SUBMODEL__SEMANTIC_ID;
+			case AASPackage.HAS_SEMANTICS__BASE_HAS_SEMANTICS_CLASS:
+				return AASPackage.SUBMODEL__BASE_HAS_SEMANTICS_CLASS;
+			default:
+				return -1;
+			}
+		}
+		return super.eDerivedStructuralFeatureID(baseFeatureID, baseClass);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	@Override
+	public String toString() {
+		if (eIsProxy())
+			return super.toString();
+
+		StringBuilder result = new StringBuilder(super.toString());
+		result.append(" (kind: ");
+		result.append(kind);
+		result.append(')');
+		return result.toString();
+	}
+
+} // SubmodelImpl
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/util/AASAdapterFactory.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/util/AASAdapterFactory.java
new file mode 100644
index 0000000..38436c8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/util/AASAdapterFactory.java
@@ -0,0 +1,702 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.util;
+
+import org.eclipse.emf.common.notify.Adapter;
+import org.eclipse.emf.common.notify.Notifier;
+
+import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
+
+import org.eclipse.emf.ecore.EObject;
+
+import org.eclipse.papyrus.aas.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Adapter Factory</b> for the model.
+ * It provides an adapter <code>createXXX</code> method for each class of the model.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage
+ * @generated
+ */
+public class AASAdapterFactory extends AdapterFactoryImpl {
+	/**
+	 * The cached model package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected static AASPackage modelPackage;
+
+	/**
+	 * Creates an instance of the adapter factory.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AASAdapterFactory() {
+		if (modelPackage == null) {
+			modelPackage = AASPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Returns whether this factory is applicable for the type of the object.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return whether this factory is applicable for the type of the object.
+	 * @generated
+	 */
+	@Override
+	public boolean isFactoryForType(Object object) {
+		if (object == modelPackage) {
+			return true;
+		}
+		if (object instanceof EObject) {
+			return ((EObject) object).eClass().getEPackage() == modelPackage;
+		}
+		return false;
+	}
+
+	/**
+	 * The switch that delegates to the <code>createXXX</code> methods.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected AASSwitch<Adapter> modelSwitch = new AASSwitch<Adapter>() {
+		@Override
+		public Adapter caseAssetAdministrationShell(AssetAdministrationShell object) {
+			return createAssetAdministrationShellAdapter();
+		}
+
+		@Override
+		public Adapter caseIdentifiable(Identifiable object) {
+			return createIdentifiableAdapter();
+		}
+
+		@Override
+		public Adapter caseRefereable(Refereable object) {
+			return createRefereableAdapter();
+		}
+
+		@Override
+		public Adapter caseAdministrativeInformation(AdministrativeInformation object) {
+			return createAdministrativeInformationAdapter();
+		}
+
+		@Override
+		public Adapter caseIdentifier(Identifier object) {
+			return createIdentifierAdapter();
+		}
+
+		@Override
+		public Adapter caseSecurity(Security object) {
+			return createSecurityAdapter();
+		}
+
+		@Override
+		public Adapter caseAccessControlPolicyPoints(AccessControlPolicyPoints object) {
+			return createAccessControlPolicyPointsAdapter();
+		}
+
+		@Override
+		public Adapter caseAccessControl(AccessControl object) {
+			return createAccessControlAdapter();
+		}
+
+		@Override
+		public Adapter caseSubmodel(Submodel object) {
+			return createSubmodelAdapter();
+		}
+
+		@Override
+		public Adapter caseHasKind(HasKind object) {
+			return createHasKindAdapter();
+		}
+
+		@Override
+		public Adapter caseHasSemantics(HasSemantics object) {
+			return createHasSemanticsAdapter();
+		}
+
+		@Override
+		public Adapter caseReference(Reference object) {
+			return createReferenceAdapter();
+		}
+
+		@Override
+		public Adapter caseKey(Key object) {
+			return createKeyAdapter();
+		}
+
+		@Override
+		public Adapter caseSubmodelElement(SubmodelElement object) {
+			return createSubmodelElementAdapter();
+		}
+
+		@Override
+		public Adapter caseCertificate(Certificate object) {
+			return createCertificateAdapter();
+		}
+
+		@Override
+		public Adapter caseAsset(Asset object) {
+			return createAssetAdapter();
+		}
+
+		@Override
+		public Adapter caseEndpoint(Endpoint object) {
+			return createEndpointAdapter();
+		}
+
+		@Override
+		public Adapter caseFile(File object) {
+			return createFileAdapter();
+		}
+
+		@Override
+		public Adapter caseDataElement(DataElement object) {
+			return createDataElementAdapter();
+		}
+
+		@Override
+		public Adapter caseEntity(Entity object) {
+			return createEntityAdapter();
+		}
+
+		@Override
+		public Adapter caseRelationshipElement(RelationshipElement object) {
+			return createRelationshipElementAdapter();
+		}
+
+		@Override
+		public Adapter caseOperation(Operation object) {
+			return createOperationAdapter();
+		}
+
+		@Override
+		public Adapter caseSubmodelElementCollection(SubmodelElementCollection object) {
+			return createSubmodelElementCollectionAdapter();
+		}
+
+		@Override
+		public Adapter caseProperty(Property object) {
+			return createPropertyAdapter();
+		}
+
+		@Override
+		public Adapter caseReferenceElement(ReferenceElement object) {
+			return createReferenceElementAdapter();
+		}
+
+		@Override
+		public Adapter caseEvent(Event object) {
+			return createEventAdapter();
+		}
+
+		@Override
+		public Adapter caseBasicEvent(BasicEvent object) {
+			return createBasicEventAdapter();
+		}
+
+		@Override
+		public Adapter caseRange(Range object) {
+			return createRangeAdapter();
+		}
+
+		@Override
+		public Adapter caseCapability(Capability object) {
+			return createCapabilityAdapter();
+		}
+
+		@Override
+		public Adapter defaultCase(EObject object) {
+			return createEObjectAdapter();
+		}
+	};
+
+	/**
+	 * Creates an adapter for the <code>target</code>.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param target
+	 *            the object to adapt.
+	 * @return the adapter for the <code>target</code>.
+	 * @generated
+	 */
+	@Override
+	public Adapter createAdapter(Notifier target) {
+		return modelSwitch.doSwitch((EObject) target);
+	}
+
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.AssetAdministrationShell <em>Asset Administration Shell</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.papyrus.aas.AssetAdministrationShell
+	 * @generated
+	 */
+	public Adapter createAssetAdministrationShellAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Identifiable <em>Identifiable</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.papyrus.aas.Identifiable
+	 * @generated
+	 */
+	public Adapter createIdentifiableAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Refereable <em>Refereable</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.papyrus.aas.Refereable
+	 * @generated
+	 */
+	public Adapter createRefereableAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.AdministrativeInformation <em>Administrative Information</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.papyrus.aas.AdministrativeInformation
+	 * @generated
+	 */
+	public Adapter createAdministrativeInformationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Identifier <em>Identifier</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.papyrus.aas.Identifier
+	 * @generated
+	 */
+	public Adapter createIdentifierAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Security <em>Security</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.papyrus.aas.Security
+	 * @generated
+	 */
+	public Adapter createSecurityAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.AccessControlPolicyPoints <em>Access Control Policy Points</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.papyrus.aas.AccessControlPolicyPoints
+	 * @generated
+	 */
+	public Adapter createAccessControlPolicyPointsAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.AccessControl <em>Access Control</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.papyrus.aas.AccessControl
+	 * @generated
+	 */
+	public Adapter createAccessControlAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Submodel <em>Submodel</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.papyrus.aas.Submodel
+	 * @generated
+	 */
+	public Adapter createSubmodelAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.HasKind <em>Has Kind</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.papyrus.aas.HasKind
+	 * @generated
+	 */
+	public Adapter createHasKindAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.HasSemantics <em>Has Semantics</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.papyrus.aas.HasSemantics
+	 * @generated
+	 */
+	public Adapter createHasSemanticsAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Reference <em>Reference</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.papyrus.aas.Reference
+	 * @generated
+	 */
+	public Adapter createReferenceAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Key <em>Key</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.papyrus.aas.Key
+	 * @generated
+	 */
+	public Adapter createKeyAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.SubmodelElement <em>Submodel Element</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.papyrus.aas.SubmodelElement
+	 * @generated
+	 */
+	public Adapter createSubmodelElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Certificate <em>Certificate</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.papyrus.aas.Certificate
+	 * @generated
+	 */
+	public Adapter createCertificateAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Asset <em>Asset</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.papyrus.aas.Asset
+	 * @generated
+	 */
+	public Adapter createAssetAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Endpoint <em>Endpoint</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.papyrus.aas.Endpoint
+	 * @generated
+	 */
+	public Adapter createEndpointAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.File <em>File</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.papyrus.aas.File
+	 * @generated
+	 */
+	public Adapter createFileAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.DataElement <em>Data Element</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.papyrus.aas.DataElement
+	 * @generated
+	 */
+	public Adapter createDataElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Entity <em>Entity</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.papyrus.aas.Entity
+	 * @generated
+	 */
+	public Adapter createEntityAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.RelationshipElement <em>Relationship Element</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.papyrus.aas.RelationshipElement
+	 * @generated
+	 */
+	public Adapter createRelationshipElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Operation <em>Operation</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.papyrus.aas.Operation
+	 * @generated
+	 */
+	public Adapter createOperationAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.SubmodelElementCollection <em>Submodel Element Collection</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.papyrus.aas.SubmodelElementCollection
+	 * @generated
+	 */
+	public Adapter createSubmodelElementCollectionAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Property <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 org.eclipse.papyrus.aas.Property
+	 * @generated
+	 */
+	public Adapter createPropertyAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.ReferenceElement <em>Reference Element</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.papyrus.aas.ReferenceElement
+	 * @generated
+	 */
+	public Adapter createReferenceElementAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Event <em>Event</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.papyrus.aas.Event
+	 * @generated
+	 */
+	public Adapter createEventAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.BasicEvent <em>Basic Event</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.papyrus.aas.BasicEvent
+	 * @generated
+	 */
+	public Adapter createBasicEventAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Range <em>Range</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.papyrus.aas.Range
+	 * @generated
+	 */
+	public Adapter createRangeAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.aas.Capability <em>Capability</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.papyrus.aas.Capability
+	 * @generated
+	 */
+	public Adapter createCapabilityAdapter() {
+		return null;
+	}
+
+	/**
+	 * Creates a new adapter for the default case.
+	 * <!-- begin-user-doc -->
+	 * This default implementation returns null.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the new adapter.
+	 * @generated
+	 */
+	public Adapter createEObjectAdapter() {
+		return null;
+	}
+
+} // AASAdapterFactory
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/util/AASSwitch.java b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/util/AASSwitch.java
new file mode 100644
index 0000000..7e695ca
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.profile/src/org/eclipse/papyrus/aas/util/AASSwitch.java
@@ -0,0 +1,911 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.util;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EPackage;
+
+import org.eclipse.emf.ecore.util.Switch;
+
+import org.eclipse.papyrus.aas.*;
+
+/**
+ * <!-- begin-user-doc -->
+ * The <b>Switch</b> for the model's inheritance hierarchy.
+ * It supports the call {@link #doSwitch(EObject) doSwitch(object)}
+ * to invoke the <code>caseXXX</code> method for each class of the model,
+ * starting with the actual class of the object
+ * and proceeding up the inheritance hierarchy
+ * until a non-null result is returned,
+ * which is the result of the switch.
+ * <!-- end-user-doc -->
+ * 
+ * @see org.eclipse.papyrus.aas.AASPackage
+ * @generated
+ */
+public class AASSwitch<T> extends Switch<T> {
+	/**
+	 * The cached model package
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	protected static AASPackage modelPackage;
+
+	/**
+	 * Creates an instance of the switch.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @generated
+	 */
+	public AASSwitch() {
+		if (modelPackage == null) {
+			modelPackage = AASPackage.eINSTANCE;
+		}
+	}
+
+	/**
+	 * Checks whether this is a switch for the given package.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param ePackage
+	 *            the package in question.
+	 * @return whether this is a switch for the given package.
+	 * @generated
+	 */
+	@Override
+	protected boolean isSwitchFor(EPackage ePackage) {
+		return ePackage == modelPackage;
+	}
+
+	/**
+	 * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * 
+	 * @return the first non-null result returned by a <code>caseXXX</code> call.
+	 * @generated
+	 */
+	@Override
+	protected T doSwitch(int classifierID, EObject theEObject) {
+		switch (classifierID) {
+		case AASPackage.ASSET_ADMINISTRATION_SHELL: {
+			AssetAdministrationShell assetAdministrationShell = (AssetAdministrationShell) theEObject;
+			T result = caseAssetAdministrationShell(assetAdministrationShell);
+			if (result == null)
+				result = caseIdentifiable(assetAdministrationShell);
+			if (result == null)
+				result = caseRefereable(assetAdministrationShell);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.IDENTIFIABLE: {
+			Identifiable identifiable = (Identifiable) theEObject;
+			T result = caseIdentifiable(identifiable);
+			if (result == null)
+				result = caseRefereable(identifiable);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.REFEREABLE: {
+			Refereable refereable = (Refereable) theEObject;
+			T result = caseRefereable(refereable);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.ADMINISTRATIVE_INFORMATION: {
+			AdministrativeInformation administrativeInformation = (AdministrativeInformation) theEObject;
+			T result = caseAdministrativeInformation(administrativeInformation);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.IDENTIFIER: {
+			Identifier identifier = (Identifier) theEObject;
+			T result = caseIdentifier(identifier);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.SECURITY: {
+			Security security = (Security) theEObject;
+			T result = caseSecurity(security);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.ACCESS_CONTROL_POLICY_POINTS: {
+			AccessControlPolicyPoints accessControlPolicyPoints = (AccessControlPolicyPoints) theEObject;
+			T result = caseAccessControlPolicyPoints(accessControlPolicyPoints);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.ACCESS_CONTROL: {
+			AccessControl accessControl = (AccessControl) theEObject;
+			T result = caseAccessControl(accessControl);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.SUBMODEL: {
+			Submodel submodel = (Submodel) theEObject;
+			T result = caseSubmodel(submodel);
+			if (result == null)
+				result = caseIdentifiable(submodel);
+			if (result == null)
+				result = caseHasKind(submodel);
+			if (result == null)
+				result = caseHasSemantics(submodel);
+			if (result == null)
+				result = caseRefereable(submodel);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.HAS_KIND: {
+			HasKind hasKind = (HasKind) theEObject;
+			T result = caseHasKind(hasKind);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.HAS_SEMANTICS: {
+			HasSemantics hasSemantics = (HasSemantics) theEObject;
+			T result = caseHasSemantics(hasSemantics);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.REFERENCE: {
+			Reference reference = (Reference) theEObject;
+			T result = caseReference(reference);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.KEY: {
+			Key key = (Key) theEObject;
+			T result = caseKey(key);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.SUBMODEL_ELEMENT: {
+			SubmodelElement submodelElement = (SubmodelElement) theEObject;
+			T result = caseSubmodelElement(submodelElement);
+			if (result == null)
+				result = caseRefereable(submodelElement);
+			if (result == null)
+				result = caseHasSemantics(submodelElement);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.CERTIFICATE: {
+			Certificate certificate = (Certificate) theEObject;
+			T result = caseCertificate(certificate);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.ASSET: {
+			Asset asset = (Asset) theEObject;
+			T result = caseAsset(asset);
+			if (result == null)
+				result = caseIdentifiable(asset);
+			if (result == null)
+				result = caseRefereable(asset);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.ENDPOINT: {
+			Endpoint endpoint = (Endpoint) theEObject;
+			T result = caseEndpoint(endpoint);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.FILE: {
+			File file = (File) theEObject;
+			T result = caseFile(file);
+			if (result == null)
+				result = caseDataElement(file);
+			if (result == null)
+				result = caseSubmodelElement(file);
+			if (result == null)
+				result = caseRefereable(file);
+			if (result == null)
+				result = caseHasSemantics(file);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.DATA_ELEMENT: {
+			DataElement dataElement = (DataElement) theEObject;
+			T result = caseDataElement(dataElement);
+			if (result == null)
+				result = caseSubmodelElement(dataElement);
+			if (result == null)
+				result = caseRefereable(dataElement);
+			if (result == null)
+				result = caseHasSemantics(dataElement);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.ENTITY: {
+			Entity entity = (Entity) theEObject;
+			T result = caseEntity(entity);
+			if (result == null)
+				result = caseSubmodelElement(entity);
+			if (result == null)
+				result = caseRefereable(entity);
+			if (result == null)
+				result = caseHasSemantics(entity);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.RELATIONSHIP_ELEMENT: {
+			RelationshipElement relationshipElement = (RelationshipElement) theEObject;
+			T result = caseRelationshipElement(relationshipElement);
+			if (result == null)
+				result = caseSubmodelElement(relationshipElement);
+			if (result == null)
+				result = caseRefereable(relationshipElement);
+			if (result == null)
+				result = caseHasSemantics(relationshipElement);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.OPERATION: {
+			Operation operation = (Operation) theEObject;
+			T result = caseOperation(operation);
+			if (result == null)
+				result = caseSubmodelElement(operation);
+			if (result == null)
+				result = caseRefereable(operation);
+			if (result == null)
+				result = caseHasSemantics(operation);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.SUBMODEL_ELEMENT_COLLECTION: {
+			SubmodelElementCollection submodelElementCollection = (SubmodelElementCollection) theEObject;
+			T result = caseSubmodelElementCollection(submodelElementCollection);
+			if (result == null)
+				result = caseSubmodelElement(submodelElementCollection);
+			if (result == null)
+				result = caseRefereable(submodelElementCollection);
+			if (result == null)
+				result = caseHasSemantics(submodelElementCollection);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.PROPERTY: {
+			Property property = (Property) theEObject;
+			T result = caseProperty(property);
+			if (result == null)
+				result = caseDataElement(property);
+			if (result == null)
+				result = caseSubmodelElement(property);
+			if (result == null)
+				result = caseRefereable(property);
+			if (result == null)
+				result = caseHasSemantics(property);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.REFERENCE_ELEMENT: {
+			ReferenceElement referenceElement = (ReferenceElement) theEObject;
+			T result = caseReferenceElement(referenceElement);
+			if (result == null)
+				result = caseDataElement(referenceElement);
+			if (result == null)
+				result = caseSubmodelElement(referenceElement);
+			if (result == null)
+				result = caseRefereable(referenceElement);
+			if (result == null)
+				result = caseHasSemantics(referenceElement);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.EVENT: {
+			Event event = (Event) theEObject;
+			T result = caseEvent(event);
+			if (result == null)
+				result = caseSubmodelElement(event);
+			if (result == null)
+				result = caseRefereable(event);
+			if (result == null)
+				result = caseHasSemantics(event);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.BASIC_EVENT: {
+			BasicEvent basicEvent = (BasicEvent) theEObject;
+			T result = caseBasicEvent(basicEvent);
+			if (result == null)
+				result = caseEvent(basicEvent);
+			if (result == null)
+				result = caseSubmodelElement(basicEvent);
+			if (result == null)
+				result = caseRefereable(basicEvent);
+			if (result == null)
+				result = caseHasSemantics(basicEvent);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.RANGE: {
+			Range range = (Range) theEObject;
+			T result = caseRange(range);
+			if (result == null)
+				result = caseDataElement(range);
+			if (result == null)
+				result = caseSubmodelElement(range);
+			if (result == null)
+				result = caseRefereable(range);
+			if (result == null)
+				result = caseHasSemantics(range);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		case AASPackage.CAPABILITY: {
+			Capability capability = (Capability) theEObject;
+			T result = caseCapability(capability);
+			if (result == null)
+				result = caseSubmodelElement(capability);
+			if (result == null)
+				result = caseRefereable(capability);
+			if (result == null)
+				result = caseHasSemantics(capability);
+			if (result == null)
+				result = defaultCase(theEObject);
+			return result;
+		}
+		default:
+			return defaultCase(theEObject);
+		}
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Asset Administration Shell</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>Asset Administration Shell</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAssetAdministrationShell(AssetAdministrationShell object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Identifiable</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>Identifiable</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIdentifiable(Identifiable object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Refereable</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>Refereable</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseRefereable(Refereable object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Administrative Information</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>Administrative Information</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAdministrativeInformation(AdministrativeInformation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Identifier</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>Identifier</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseIdentifier(Identifier object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Security</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>Security</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSecurity(Security object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Access Control Policy Points</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>Access Control Policy Points</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAccessControlPolicyPoints(AccessControlPolicyPoints object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Access Control</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>Access Control</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAccessControl(AccessControl object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodel</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>Submodel</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodel(Submodel object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Has Kind</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>Has Kind</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseHasKind(HasKind object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Has Semantics</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>Has Semantics</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseHasSemantics(HasSemantics object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Reference</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>Reference</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseReference(Reference object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Key</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>Key</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseKey(Key object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodel Element</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>Submodel Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodelElement(SubmodelElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Certificate</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>Certificate</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCertificate(Certificate object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Asset</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>Asset</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseAsset(Asset object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Endpoint</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>Endpoint</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEndpoint(Endpoint object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>File</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>File</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseFile(File object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Data Element</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>Data Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseDataElement(DataElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Entity</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>Entity</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEntity(Entity object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Relationship Element</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>Relationship Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseRelationshipElement(RelationshipElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Operation</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>Operation</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseOperation(Operation object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Submodel Element Collection</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>Submodel Element Collection</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseSubmodelElementCollection(SubmodelElementCollection object) {
+		return null;
+	}
+
+	/**
+	 * 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 caseProperty(Property object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Reference Element</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>Reference Element</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseReferenceElement(ReferenceElement object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Event</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>Event</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseEvent(Event object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Basic Event</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>Basic Event</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseBasicEvent(BasicEvent object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Range</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>Range</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseRange(Range object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>Capability</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>Capability</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+	 * @generated
+	 */
+	public T caseCapability(Capability object) {
+		return null;
+	}
+
+	/**
+	 * Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * <!-- begin-user-doc -->
+	 * This implementation returns null;
+	 * returning a non-null result will terminate the switch, but this is the last case anyway.
+	 * <!-- end-user-doc -->
+	 * 
+	 * @param object
+	 *            the target of the switch.
+	 * @return the result of interpreting the object as an instance of '<em>EObject</em>'.
+	 * @see #doSwitch(org.eclipse.emf.ecore.EObject)
+	 * @generated
+	 */
+	@Override
+	public T defaultCase(EObject object) {
+		return null;
+	}
+
+} // AASSwitch
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/.classpath b/plugins/modeling/org.eclipse.papyrus.aas.ui/.classpath
new file mode 100644
index 0000000..4a00bec
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/.classpath
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
+		<attributes>
+			<attribute name="module" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/.project b/plugins/modeling/org.eclipse.papyrus.aas.ui/.project
new file mode 100644
index 0000000..fa5d74b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.aas.ui</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.core.resources.prefs b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.core.resources.prefs
new file mode 100755
index 0000000..896a9a5
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.core.runtime.prefs b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.core.runtime.prefs
new file mode 100755
index 0000000..5a0ad22
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.jdt.core.prefs b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.jdt.core.prefs
new file mode 100755
index 0000000..49ce3e3
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,317 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_additive_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_logical_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_string_concatenation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_additive_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_relational_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_additive_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_logical_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_relational_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_shift_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation=insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_additive_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_logical_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_before_string_concatenation=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.jdt.ui.prefs b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.jdt.ui.prefs
new file mode 100755
index 0000000..ba7542e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,127 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License 2.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-2.0/\n *\n * SPDX-License-Identifier: EPL-2.0\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=true
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_modifiers=false
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=true
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=true
+sp_cleanup.remove_unused_imports=true
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=true
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.pde.api.tools.prefs b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100755
index 0000000..b2260f8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,104 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_FIELD=Warning
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Warning
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Warning
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_DEFAULT_METHOD=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+changed_execution_env=Warning
+eclipse.preferences.version=1
+incompatible_api_component_version=Warning
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+incompatible_api_component_version_report_major_without_breaking_change=Error
+incompatible_api_component_version_report_minor_without_api_change=Error
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Error
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/META-INF/MANIFEST.MF b/plugins/modeling/org.eclipse.papyrus.aas.ui/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..ec29d7c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/META-INF/MANIFEST.MF
@@ -0,0 +1,45 @@
+Manifest-Version: 1.0
+Bundle-ManifestVersion: 2
+Bundle-Name: %pluginName
+Bundle-Vendor: %providerName
+Bundle-SymbolicName: org.eclipse.papyrus.aas.ui;singleton:=true
+Bundle-Version: 0.7.0.qualifier
+Bundle-ClassPath: .
+Bundle-Localization: plugin
+Bundle-Activator: org.eclipse.papyrus.aas.profile.ui.Activator
+Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.20.0,4.0.0)",
+ org.eclipse.papyrus.infra.properties;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.types.core;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.papyrus.uml.diagram.common;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.architecture;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.uml.diagram.clazz;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.uml.properties;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.uml.tools;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.papyrus.aas.profile;bundle-version="[0.7.0,1.0.0)",
+ org.eclipse.papyrus.infra.properties.ui;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.emf.edit;bundle-version="[2.16.0,3.0.0)",
+ org.eclipse.emf.databinding;bundle-version="[1.5.0,2.0.0)",
+ org.eclipse.jface;bundle-version="[3.22.0,4.0.0)",
+ org.eclipse.gmf.runtime.emf.type.core;bundle-version="[1.9.0,2.0.0)",
+ org.eclipse.papyrus.uml.tools;bundle-version="[5.0.0,6.0.0)",
+ org.eclipse.papyrus.uml.tools.utils;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.core;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.widgets;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.emf;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.constraints;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.equinox.registry;bundle-version="[3.10.0,4.0.0)",
+ org.eclipse.gmf.runtime.emf.commands.core;bundle-version="[1.7.0,2.0.0)",
+ org.eclipse.gmf.runtime.common.core;bundle-version="[1.7.0,2.0.0)",
+ org.eclipse.core.commands;bundle-version="[3.9.0,4.0.0)",
+ org.eclipse.papyrus.infra.emf.gmf;bundle-version="[2.0.0,3.0.0)",
+ org.eclipse.papyrus.infra.emf.diagram.common;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.papyrus.infra.gmfdiag.canonical;bundle-version="[3.0.0,4.0.0)",
+ org.eclipse.gmf.runtime.notation;bundle-version="[1.10.0,2.0.0)",
+ org.eclipse.papyrus.infra.tools;bundle-version="[4.0.0,5.0.0)",
+ org.eclipse.papyrus.infra.gmfdiag.common;bundle-version="[4.0.0,5.0.0)"
+Bundle-RequiredExecutionEnvironment: JavaSE-11
+Automatic-Module-Name: org.eclipse.papyrus.aas.profile.ui
+Bundle-ActivationPolicy: lazy
+Export-Package: org.eclipse.papyrus.aas.profile.ui,
+ org.eclipse.papyrus.aas.profile.ui.commands,
+ org.eclipse.papyrus.aas.profile.ui.modelelement
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/build.properties b/plugins/modeling/org.eclipse.papyrus.aas.ui/build.properties
new file mode 100644
index 0000000..6fbc65c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/build.properties
@@ -0,0 +1,9 @@
+#
+
+bin.includes = .,\
+               resources/,\
+               META-INF/,\
+               plugin.xml,\
+               plugin.properties
+source.. = src/
+output.. = bin/
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/plugin.properties b/plugins/modeling/org.eclipse.papyrus.aas.ui/plugin.properties
new file mode 100755
index 0000000..f9941dd
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/plugin.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2020 CEA LIST, and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#
+###############################################################################
+
+pluginName = CanvAAS UI
+providerName = CanvAAS project
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/plugin.xml b/plugins/modeling/org.eclipse.papyrus.aas.ui/plugin.xml
new file mode 100644
index 0000000..de6a937
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/plugin.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.4"?>
+<plugin>
+   <extension
+         point="org.eclipse.papyrus.infra.properties.contexts">
+      <context
+            contextModel="resources/properties/aas.ctx"
+            isCustomizable="true">
+      </context>
+   </extension>
+   <extension
+         point="org.eclipse.papyrus.infra.types.core.elementTypeSetConfiguration">
+      <elementTypeSet
+            clientContextID="org.eclipse.papyrus.infra.services.edit.TypeContext"
+            path="resources/model/aas.elementtypesconfigurations">
+      </elementTypeSet>
+   </extension>
+   <extension
+         point="org.eclipse.papyrus.infra.architecture.models">
+      <model
+            path="resources/af/aas.architecture">
+      </model>
+   </extension>
+    <extension point="org.eclipse.papyrus.uml.diagram.wizards.templates">
+        <template
+            di_file="resources/template/FESTO-Demonstrator.di"
+            notation_file="resources/template/FESTO-Demonstrator.notation"
+            file="resources/template/FESTO-Demonstrator.uml"
+id="org.eclipse.papyrus.aas.wizards.template.robotino"
+language="org.eclipse.papyrus.aas.ml"
+            name="An AAS FESTO Robotino model">
+        </template>
+    </extension>
+    <extension
+          point="org.eclipse.papyrus.infra.properties.environments">
+       <environment
+             environmentModel="resources/properties/AAS.environment">
+       </environment>
+    </extension>
+
+</plugin>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/pom.xml b/plugins/modeling/org.eclipse.papyrus.aas.ui/pom.xml
new file mode 100755
index 0000000..ade295f
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-modeling</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.ui</artifactId>
+	<version>0.7.0-SNAPSHOT</version>
+	<packaging>eclipse-plugin</packaging>
+
+</project>
\ No newline at end of file
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/af/aas.architecture b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/af/aas.architecture
new file mode 100644
index 0000000..afdb8f3
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/af/aas.architecture
@@ -0,0 +1,48 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDomain xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:elementtypesconfigurations="http://www.eclipse.org/papyrus/infra/elementtypesconfigurations/1.2" xmlns:gmfdiagrepresentation="http://www.eclipse.org/papyrus/infra/gmfdiag/representation" xmlns:paletteconfiguration="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.8" xmlns:representation="http://www.eclipse.org/papyrus/infra/core/architecture/representation" xmi:id="_sXYRAKigEeq1bsefRJY1gA" id="org.eclipse.papyrus.industry4.0" name="Industry 4.0" description="Industry 4.0">
+  <stakeholders xmi:type="architecture:Stakeholder" xmi:id="_Cp-wYKihEeq1bsefRJY1gA" id="org.eclipse.papyrus.industry4.0.aasdesigner" name="AAS Designer" description="AAS Designer" concerns="_G6zsYKihEeq1bsefRJY1gA"/>
+  <concerns xmi:type="architecture:Concern" xmi:id="_G6zsYKihEeq1bsefRJY1gA" id="org.eclipse.papyrus.aas" name="Asset Administration Shell" description="Asset Administration Shell"/>
+  <contexts xmi:type="architecture:ArchitectureDescriptionLanguage" xmi:id="_QxHqMKihEeq1bsefRJY1gA" id="org.eclipse.papyrus.aas.ml" name="AAS Modeling Language" description="AAS Modeling Language" defaultViewpoints="_JBgkEKiqEeq1bsefRJY1gA" creationCommandClass="org.eclipse.papyrus.aas.profile.ui.commands.CreateAASModelCommand">
+    <viewpoints xmi:type="architecture:ArchitectureViewpoint" xmi:id="_JBgkEKiqEeq1bsefRJY1gA" id="org.eclipse.papyrus.aas.viewpoint" name="AAS" description="Asset Administration Shell" concerns="_G6zsYKihEeq1bsefRJY1gA" representationKinds="_uiKFgKirEeqyNcHv1ND3uw"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.emf/model/infra-emf.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.gmfdiag.common/model/notation.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.gmfdiag.common/model/gmfdiag-common.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.services.controlmode/model/controlmode.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.services.edit/model/marker.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.types.rulebased/model/rulebased.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.diagram.clazz/model/classdiagram.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.diagram.stereotype.edition/model/stereotype-edit.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml-containments.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/StandardProfile.elementtypesconfigurations#_jfoLkGT_EeSEqNuV3JpFCA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types.ui/model/uml-advice.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.elementTypes"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.elementTypes"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml-containments.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.services.controlmode/model/controlmode.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.infra.services.edit/model/marker.elementtypesconfigurations#_rWI4YHPzEeSnGJwaJWHCSg"/>
+    <elementTypes xmi:type="elementtypesconfigurations:ElementTypeSetConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#_ScP1oFYCEeS0WsAAtVmToA"/>
+    <representationKinds xmi:type="gmfdiagrepresentation:PapyrusDiagram" xmi:id="_uiKFgKirEeqyNcHv1ND3uw" id="org.eclipse.papyrus.aas.design.diagram" name="AAS Design Diagram" description="AAS Design Diagram" icon="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/icons/AAS_16x16.png" concerns="_G6zsYKihEeq1bsefRJY1gA" implementationID="PapyrusUMLClassDiagram" customStyle="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/style/style.css" creationCommandClass="org.eclipse.papyrus.uml.diagram.clazz.CreateClassDiagramCommand">
+      <modelRules xmi:type="representation:ModelRule" xmi:id="_2JDOAKoiEeqyNcHv1ND3uw" permit="true" elementMultiplicity="1" multiplicity="-1">
+        <element xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+      </modelRules>
+      <modelRules xmi:type="representation:ModelRule" xmi:id="_Mx7fYKojEeqyNcHv1ND3uw" permit="true" elementMultiplicity="1" multiplicity="-1">
+        <element xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+        <stereotypes xmi:type="ecore:EClass" href="http://www.eclipse.org/papyrus/AAS#//AssetAdministrationShell"/>
+      </modelRules>
+      <owningRules xmi:type="representation:OwningRule" xmi:id="_WpCHYKojEeqyNcHv1ND3uw" permit="true" multiplicity="-1">
+        <element xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Package"/>
+      </owningRules>
+      <owningRules xmi:type="representation:OwningRule" xmi:id="_eb6N0KojEeqyNcHv1ND3uw" permit="true" multiplicity="-1">
+        <element xmi:type="ecore:EClass" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class"/>
+        <stereotypes xmi:type="ecore:EClass" href="http://www.eclipse.org/papyrus/AAS#//AssetAdministrationShell"/>
+      </owningRules>
+      <paletteRules xmi:type="gmfdiagrepresentation:PaletteRule" xmi:id="_kKC1UKojEeqyNcHv1ND3uw" permit="false" element="clazz.group.*"/>
+      <palettes xmi:type="paletteconfiguration:PaletteConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/palette/AAS.paletteconfiguration#/"/>
+    </representationKinds>
+    <metamodel xmi:type="ecore:EPackage" href="http://www.eclipse.org/uml2/5.0.0/UML#/"/>
+    <profiles xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AAS#/"/>
+  </contexts>
+</architecture:ArchitectureDomain>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/icons/AAS_16x16.png b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/icons/AAS_16x16.png
new file mode 100644
index 0000000..ff6bd0e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/icons/AAS_16x16.png
Binary files differ
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations
new file mode 100644
index 0000000..425e8d1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations
@@ -0,0 +1,417 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<elementtypesconfigurations:ElementTypeSetConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:applystereotypeadvice="http://www.eclipse.org/papyrus/uml/types/applystereotypeadvice/1.1" xmlns:elementtypesconfigurations="http://www.eclipse.org/papyrus/infra/elementtypesconfigurations/1.2" xmlns:stereotypematcher="http://www.eclipse.org/papyrus/uml/types/stereotypematcher/1.1" xmi:id="org.eclipse.papyrus.aAS.elementTypes" identifier="org.eclipse.papyrus.aAS.elementTypes" name="AAS" metamodelNsURI="http://www.eclipse.org/uml2/5.0.0/UML">
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Asset" identifier="org.eclipse.papyrus.aAS.Asset" name="Asset" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_NDzCoiXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0QwCXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Asset</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.AssetAdministrationShell" identifier="org.eclipse.papyrus.aAS.AssetAdministrationShell" name="AssetAdministrationShell" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0QwiXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0QwyXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::AssetAdministrationShell</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.BasicEvent_Class" identifier="org.eclipse.papyrus.aAS.BasicEvent_Class" name="BasicEvent Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0QxSXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0QxiXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::BasicEvent</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.BasicEvent_Property" identifier="org.eclipse.papyrus.aAS.BasicEvent_Property" name="BasicEvent Property" hint="UML::Property" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0QyCXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0QySXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::BasicEvent</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Capability_Class" identifier="org.eclipse.papyrus.aAS.Capability_Class" name="Capability Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0QyyXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0QzCXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Capability</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Capability_Property" identifier="org.eclipse.papyrus.aAS.Capability_Property" name="Capability Property" hint="UML::Property" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0QziXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0QzyXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Capability</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.DataElement_Class" identifier="org.eclipse.papyrus.aAS.DataElement_Class" name="DataElement Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q0SXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q0iXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::DataElement</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.DataElement_Property" identifier="org.eclipse.papyrus.aAS.DataElement_Property" name="DataElement Property" hint="UML::Property" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q1CXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q1SXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::DataElement</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Entity" identifier="org.eclipse.papyrus.aAS.Entity" name="Entity" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q1yXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q2CXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Entity</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Event_Class" identifier="org.eclipse.papyrus.aAS.Event_Class" name="Event Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q2iXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q2yXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Event</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Event_Property" identifier="org.eclipse.papyrus.aAS.Event_Property" name="Event Property" hint="UML::Property" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q3SXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q3iXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Event</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.File_Class" identifier="org.eclipse.papyrus.aAS.File_Class" name="File Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q4CXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q4SXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::File</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.File_Property" identifier="org.eclipse.papyrus.aAS.File_Property" name="File Property" hint="UML::Property" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q4yXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q5CXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::File</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.HasKind" identifier="org.eclipse.papyrus.aAS.HasKind" name="HasKind" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q5iXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q5yXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::HasKind</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.HasSemantics" identifier="org.eclipse.papyrus.aAS.HasSemantics" name="HasSemantics" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q6SXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q6iXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::HasSemantics</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Identifiable" identifier="org.eclipse.papyrus.aAS.Identifiable" name="Identifiable" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q7CXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q7SXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Identifiable</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Operation_Class" identifier="org.eclipse.papyrus.aAS.Operation_Class" name="Operation Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q7yXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q8CXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Operation</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Operation_Operation" identifier="org.eclipse.papyrus.aAS.Operation_Operation" name="Operation Operation" hint="UML::Operation" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q8iXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Operation.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q8yXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Operation</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Operation"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Property_Class" identifier="org.eclipse.papyrus.aAS.Property_Class" name="Property Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q9SXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q9iXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Property</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Property_Property" identifier="org.eclipse.papyrus.aAS.Property_Property" name="Property Property" hint="UML::Property" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q-CXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q-SXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Property</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Range_Class" identifier="org.eclipse.papyrus.aAS.Range_Class" name="Range Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q-yXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q_CXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Range</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Range_Property" identifier="org.eclipse.papyrus.aAS.Range_Property" name="Range Property" hint="UML::Property" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0Q_iXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0Q_yXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Range</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Refereable" identifier="org.eclipse.papyrus.aAS.Refereable" name="Refereable" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RASXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RAiXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Refereable</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Reference" identifier="org.eclipse.papyrus.aAS.Reference" name="Reference" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RBCXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RBSXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Reference</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.ReferenceElement_Class" identifier="org.eclipse.papyrus.aAS.ReferenceElement_Class" name="ReferenceElement Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RByXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RCCXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::ReferenceElement</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.ReferenceElement_Property" identifier="org.eclipse.papyrus.aAS.ReferenceElement_Property" name="ReferenceElement Property" hint="UML::Property" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RCiXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RCyXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::ReferenceElement</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.RelationshipElement_Class" identifier="org.eclipse.papyrus.aAS.RelationshipElement_Class" name="RelationshipElement Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RDSXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RDiXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::RelationshipElement</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.RelationshipElement_Dependency" identifier="org.eclipse.papyrus.aAS.RelationshipElement_Dependency" name="RelationshipElement Dependency" hint="UML::Dependency" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RECXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Dependency.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RESXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::RelationshipElement</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Dependency"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Security" identifier="org.eclipse.papyrus.aAS.Security" name="Security" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0REyXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RFCXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Security</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.Submodel" identifier="org.eclipse.papyrus.aAS.Submodel" name="Submodel" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RFiXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RFyXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::Submodel</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.SubmodelElement" identifier="org.eclipse.papyrus.aAS.SubmodelElement" name="SubmodelElement" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RGSXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RGiXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::SubmodelElement</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.SubmodelElementCollection_Class" identifier="org.eclipse.papyrus.aAS.SubmodelElementCollection_Class" name="SubmodelElementCollection Class" hint="UML::Class" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RHCXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RHSXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::SubmodelElementCollection</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.SubmodelElementCollection_DataType" identifier="org.eclipse.papyrus.aAS.SubmodelElementCollection_DataType" name="SubmodelElementCollection DataType" hint="UML::DataType" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RHyXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/DataType.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RICXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::SubmodelElementCollection</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.DataType"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.SubmodelElementCollection_Property" identifier="org.eclipse.papyrus.aAS.SubmodelElementCollection_Property" name="SubmodelElementCollection Property" hint="UML::Property" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_ND0RIiXOEeuU0KvRql2xWQ" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <matcherConfiguration xmi:type="stereotypematcher:StereotypeApplicationMatcherConfiguration" xmi:id="_ND0RIyXOEeuU0KvRql2xWQ">
+      <stereotypesQualifiedNames>AAS::SubmodelElementCollection</stereotypesQualifiedNames>
+    </matcherConfiguration>
+    <specializedTypes xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Property"/>
+  </elementTypeConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND030CXOEeuU0KvRql2xWQ" description="Apply Stereotype Asset" identifier="org.eclipse.papyrus.aAS.asset" target="org.eclipse.papyrus.aAS.Asset">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND030SXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Asset" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e4CXOEeuU0KvRql2xWQ" description="Apply Stereotype AssetAdministrationShell" identifier="org.eclipse.papyrus.aAS.assetAdministrationShell" target="org.eclipse.papyrus.aAS.AssetAdministrationShell">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e4SXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::AssetAdministrationShell" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e4iXOEeuU0KvRql2xWQ" description="Apply Stereotype BasicEvent" identifier="org.eclipse.papyrus.aAS.basicEvent" target="org.eclipse.papyrus.aAS.BasicEvent_Property">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e4yXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::BasicEvent" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e5CXOEeuU0KvRql2xWQ" description="Apply Stereotype BasicEvent" identifier="org.eclipse.papyrus.aAS.basicEvent" target="org.eclipse.papyrus.aAS.BasicEvent_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e5SXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::BasicEvent" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e5iXOEeuU0KvRql2xWQ" description="Apply Stereotype Capability" identifier="org.eclipse.papyrus.aAS.capability" target="org.eclipse.papyrus.aAS.Capability_Property">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e5yXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Capability" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e6CXOEeuU0KvRql2xWQ" description="Apply Stereotype Capability" identifier="org.eclipse.papyrus.aAS.capability" target="org.eclipse.papyrus.aAS.Capability_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e6SXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Capability" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e6iXOEeuU0KvRql2xWQ" description="Apply Stereotype DataElement" identifier="org.eclipse.papyrus.aAS.dataElement" target="org.eclipse.papyrus.aAS.DataElement_Property">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e6yXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::DataElement" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e7CXOEeuU0KvRql2xWQ" description="Apply Stereotype DataElement" identifier="org.eclipse.papyrus.aAS.dataElement" target="org.eclipse.papyrus.aAS.DataElement_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e7SXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::DataElement" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e7iXOEeuU0KvRql2xWQ" description="Apply Stereotype Entity" identifier="org.eclipse.papyrus.aAS.entity" target="org.eclipse.papyrus.aAS.Entity">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e7yXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Entity" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e8CXOEeuU0KvRql2xWQ" description="Apply Stereotype Event" identifier="org.eclipse.papyrus.aAS.event" target="org.eclipse.papyrus.aAS.Event_Property">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e8SXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Event" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e8iXOEeuU0KvRql2xWQ" description="Apply Stereotype Event" identifier="org.eclipse.papyrus.aAS.event" target="org.eclipse.papyrus.aAS.Event_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e8yXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Event" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e9CXOEeuU0KvRql2xWQ" description="Apply Stereotype File" identifier="org.eclipse.papyrus.aAS.file" target="org.eclipse.papyrus.aAS.File_Property">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e9SXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::File" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e9iXOEeuU0KvRql2xWQ" description="Apply Stereotype File" identifier="org.eclipse.papyrus.aAS.file" target="org.eclipse.papyrus.aAS.File_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e9yXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::File" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e-CXOEeuU0KvRql2xWQ" description="Apply Stereotype HasKind" identifier="org.eclipse.papyrus.aAS.hasKind" target="org.eclipse.papyrus.aAS.HasKind">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e-SXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::HasKind" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e-iXOEeuU0KvRql2xWQ" description="Apply Stereotype HasSemantics" identifier="org.eclipse.papyrus.aAS.hasSemantics" target="org.eclipse.papyrus.aAS.HasSemantics">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e-yXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::HasSemantics" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e_CXOEeuU0KvRql2xWQ" description="Apply Stereotype Identifiable" identifier="org.eclipse.papyrus.aAS.identifiable" target="org.eclipse.papyrus.aAS.Identifiable">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e_SXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Identifiable" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1e_iXOEeuU0KvRql2xWQ" description="Apply Stereotype Operation" identifier="org.eclipse.papyrus.aAS.operation" target="org.eclipse.papyrus.aAS.Operation_Operation">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1e_yXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Operation" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fACXOEeuU0KvRql2xWQ" description="Apply Stereotype Operation" identifier="org.eclipse.papyrus.aAS.operation" target="org.eclipse.papyrus.aAS.Operation_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fASXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Operation" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fAiXOEeuU0KvRql2xWQ" description="Apply Stereotype Property" identifier="org.eclipse.papyrus.aAS.property" target="org.eclipse.papyrus.aAS.Property_Property">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fAyXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Property" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fBCXOEeuU0KvRql2xWQ" description="Apply Stereotype Property" identifier="org.eclipse.papyrus.aAS.property" target="org.eclipse.papyrus.aAS.Property_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fBSXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Property" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fBiXOEeuU0KvRql2xWQ" description="Apply Stereotype Range" identifier="org.eclipse.papyrus.aAS.range" target="org.eclipse.papyrus.aAS.Range_Property">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fByXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Range" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fCCXOEeuU0KvRql2xWQ" description="Apply Stereotype Range" identifier="org.eclipse.papyrus.aAS.range" target="org.eclipse.papyrus.aAS.Range_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fCSXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Range" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fCiXOEeuU0KvRql2xWQ" description="Apply Stereotype Refereable" identifier="org.eclipse.papyrus.aAS.refereable" target="org.eclipse.papyrus.aAS.Refereable">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fCyXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Refereable" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fDCXOEeuU0KvRql2xWQ" description="Apply Stereotype Reference" identifier="org.eclipse.papyrus.aAS.reference" target="org.eclipse.papyrus.aAS.Reference">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fDSXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Reference" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fDiXOEeuU0KvRql2xWQ" description="Apply Stereotype ReferenceElement" identifier="org.eclipse.papyrus.aAS.referenceElement" target="org.eclipse.papyrus.aAS.ReferenceElement_Property">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fDyXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::ReferenceElement" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fECXOEeuU0KvRql2xWQ" description="Apply Stereotype ReferenceElement" identifier="org.eclipse.papyrus.aAS.referenceElement" target="org.eclipse.papyrus.aAS.ReferenceElement_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fESXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::ReferenceElement" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fEiXOEeuU0KvRql2xWQ" description="Apply Stereotype RelationshipElement" identifier="org.eclipse.papyrus.aAS.relationshipElement" target="org.eclipse.papyrus.aAS.RelationshipElement_Dependency">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fEyXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::RelationshipElement" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fFCXOEeuU0KvRql2xWQ" description="Apply Stereotype RelationshipElement" identifier="org.eclipse.papyrus.aAS.relationshipElement" target="org.eclipse.papyrus.aAS.RelationshipElement_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fFSXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::RelationshipElement" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fFiXOEeuU0KvRql2xWQ" description="Apply Stereotype Security" identifier="org.eclipse.papyrus.aAS.security" target="org.eclipse.papyrus.aAS.Security">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fFyXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Security" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fGCXOEeuU0KvRql2xWQ" description="Apply Stereotype Submodel" identifier="org.eclipse.papyrus.aAS.submodel" target="org.eclipse.papyrus.aAS.Submodel">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fGSXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::Submodel" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fGiXOEeuU0KvRql2xWQ" description="Apply Stereotype SubmodelElement" identifier="org.eclipse.papyrus.aAS.submodelElement" target="org.eclipse.papyrus.aAS.SubmodelElement">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fGyXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::SubmodelElement" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fHCXOEeuU0KvRql2xWQ" description="Apply Stereotype SubmodelElementCollection" identifier="org.eclipse.papyrus.aAS.submodelElementCollection" target="org.eclipse.papyrus.aAS.SubmodelElementCollection_Property">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fHSXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::SubmodelElementCollection" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fHiXOEeuU0KvRql2xWQ" description="Apply Stereotype SubmodelElementCollection" identifier="org.eclipse.papyrus.aAS.submodelElementCollection" target="org.eclipse.papyrus.aAS.SubmodelElementCollection_DataType">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fHyXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::SubmodelElementCollection" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="applystereotypeadvice:ApplyStereotypeAdviceConfiguration" xmi:id="_ND1fICXOEeuU0KvRql2xWQ" description="Apply Stereotype SubmodelElementCollection" identifier="org.eclipse.papyrus.aAS.submodelElementCollection" target="org.eclipse.papyrus.aAS.SubmodelElementCollection_Class">
+    <stereotypesToApply xmi:type="applystereotypeadvice:StereotypeToApply" xmi:id="_ND1fISXOEeuU0KvRql2xWQ" stereotypeQualifiedName="AAS::SubmodelElementCollection" updateName="true">
+      <requiredProfiles>AAS</requiredProfiles>
+    </stereotypesToApply>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="elementtypesconfigurations:AdviceBindingConfiguration" xmi:id="_e5N1IAPZEeupqqXxKnf8wA" identifier="org.eclipse.papyrus.aas.profile.ui.advices.ReferableSetNameAdvice" inheritance="all" editHelperAdviceClassName="org.eclipse.papyrus.aas.profile.ui.advices.ReferableSetNameAdvice">
+    <target xmi:type="elementtypesconfigurations:MetamodelTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Class"/>
+  </adviceBindingsConfigurations>
+  <adviceBindingsConfigurations xmi:type="elementtypesconfigurations:AdviceBindingConfiguration" xmi:id="_F1pPgCXyEeuU0KvRql2xWQ" identifier="org.eclipse.papyrus.aas.profile.ui.advices.SubModelAdvice" editHelperAdviceClassName="org.eclipse.papyrus.aas.profile.ui.advices.SubModelElementCollectionAdvice">
+    <target xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/uml.elementtypesconfigurations#org.eclipse.papyrus.uml.Association"/>
+  </adviceBindingsConfigurations>
+</elementtypesconfigurations:ElementTypeSetConfiguration>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations
new file mode 100644
index 0000000..a1fe33f
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<elementtypesconfigurations:ElementTypeSetConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:elementtypesconfigurations="http://www.eclipse.org/papyrus/infra/elementtypesconfigurations/1.2" xmi:id="org.eclipse.papyrus.aAS.di.elementTypes" identifier="org.eclipse.papyrus.aAS.di.elementTypes" name="AAS DI" metamodelNsURI="http://www.eclipse.org/uml2/5.0.0/UML">
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.AssetAdministrationShell_Class_Shape" identifier="org.eclipse.papyrus.aAS.di.AssetAdministrationShell_Class_Shape" name="AssetAdministrationShell (Class_Shape)" hint="Class_Shape" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJP3KiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.AssetAdministrationShell"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Class_Shape"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.Asset_Class_Shape" identifier="org.eclipse.papyrus.aAS.di.Asset_Class_Shape" name="Asset (Class_Shape)" hint="Class_Shape" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJP5qiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.Asset"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Class_Shape"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.Submodel_Class_Shape" identifier="org.eclipse.papyrus.aAS.di.Submodel_Class_Shape" name="Submodel (Class_Shape)" hint="Class_Shape" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.Submodel"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Class_Shape"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.Entity_Class_Shape" identifier="org.eclipse.papyrus.aAS.di.Entity_Class_Shape" name="Entity (Class_Shape)" hint="Class_Shape" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.Entity"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Class_Shape"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.Operation_Operation_Shape" identifier="org.eclipse.papyrus.aAS.di.Operation_Operation_Shape" name="Operation (Operation_Shape)" hint="Operation_ClassOperationLabel" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Operation.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.Operation_Operation"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Operation_ClassOperationLabel"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.Property_Property_Shape" identifier="org.eclipse.papyrus.aAS.di.Property_Property_Shape" name="Property (Property_Shape)" hint="Property_ClassAttributeLabel" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.Property_Property"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Property_ClassAttributeLabel"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.File_Property_Shape" identifier="org.eclipse.papyrus.aAS.di.File_Property_Shape" name="File (File_Shape)" hint="Property_ClassAttributeLabel" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.File_Property"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Property_ClassAttributeLabel"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.SubmodelElementCollection_Property_Shape" identifier="org.eclipse.papyrus.aAS.di.SubmodelElementCollection_Property_Shape" name="SubmodelElementCollection (SubmodelElementCollection_Property_Shape)" hint="Property_ClassAttributeLabel" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.SubmodelElementCollection_Property"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Property_ClassAttributeLabel"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.SubmodelElementCollection_DataType_Shape" identifier="org.eclipse.papyrus.aAS.di.SubmodelElementCollection_DataType_Shape" name="SubmodelElementCollection (SubmodelElementCollection_DataType_Shape)" hint="DataType_Shape" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/DataType.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.SubmodelElementCollection_DataType"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.DataType_Shape"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.SubmodelElementCollection_Class_Shape" identifier="org.eclipse.papyrus.aAS.di.SubmodelElementCollection_Class_Shape" name="SubmodelElementCollection (SubmodelElementCollection_Class_Shape)" hint="Class_Shape" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Class.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.SubmodelElementCollection_Class"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Class_Shape"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.ReferenceElement_Property_Shape" identifier="org.eclipse.papyrus.aAS.di.ReferenceElement_Property_Shape" name="ReferenceElement (ReferenceElement_Shape)" hint="Property_ClassAttributeLabel" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.ReferenceElement_Property"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Property_ClassAttributeLabel"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.Capability_Property_Shape" identifier="org.eclipse.papyrus.aAS.di.Capability_Property_Shape" name="Capability (Capability_Shape)" hint="Property_ClassAttributeLabel" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_0XJ3CKiTEeqolcCq88ywEg" iconPath="/icons/full/obj16/Property.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.Capability_Property"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Property_ClassAttributeLabel"/>
+  </elementTypeConfigurations>
+  <elementTypeConfigurations xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" xmi:id="org.eclipse.papyrus.aAS.di.RelationshipElement_Dependency_Shape" identifier="org.eclipse.papyrus.aAS.di.RelationshipElement_Dependency_Shape" name="RelationshipElement (Dependency_Shape)" hint="Dependency_Shape" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType">
+    <iconEntry xmi:type="elementtypesconfigurations:IconEntry" xmi:id="_r2zBYNx2EeWVxMf7SXAfhg" iconPath="/icons/full/obj16/Dependency.gif" bundleId="org.eclipse.uml2.uml.edit"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aas.elementtypesconfigurations#org.eclipse.papyrus.aAS.RelationshipElement_Dependency"/>
+    <specializedTypes xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Dependency_Shape"/>
+  </elementTypeConfigurations>
+</elementtypesconfigurations:ElementTypeSetConfiguration>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/palette/AAS.paletteconfiguration b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/palette/AAS.paletteconfiguration
new file mode 100644
index 0000000..36ccaf0
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/palette/AAS.paletteconfiguration
@@ -0,0 +1,96 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<paletteconfiguration:PaletteConfiguration xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:elementtypesconfigurations="http://www.eclipse.org/papyrus/infra/elementtypesconfigurations/1.2" xmlns:paletteconfiguration="http://www.eclipse.org/papyrus/diagram/paletteconfiguration/0.8" id="org.eclipse.papyrus.aas.palette" label="AAS Definition Diagram">
+  <drawerConfigurations xmi:type="paletteconfiguration:DrawerConfiguration" id="org.eclipse.papyrus.aas.palette.nodes" label="AAS Definition" description="Structure elements listed in AAS specification">
+    <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.gmf.runtime.diagram.ui" iconPath="/icons/group.gif"/>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.nodes" label="AAS" description="Asset Administration Shell" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Class.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.AssetAdministrationShell_Class_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.Asset" label="Asset" description="Asset" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Class.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.Asset_Class_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.Submodel" label="Submodel" description="Submodel" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Class.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.Submodel_Class_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.Entity" label="Entity" description="Entity" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Class.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.Entity_Class_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.property" label="Property" description="Create a new Property" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Property.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.Property_Property_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.operation" label="Operation" description="Create an operation" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Operation.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.Operation_Operation_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.SubmodelElementCollection" label="SubmodelElementCollection" description="Create a new SubmodelElementCollection" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Class.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.SubmodelElementCollection_Class_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.File" label="File" description="Create a new File" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Property.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.File_Property_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+     <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.Capability" label="Capability" description="Create a new Capability" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Property.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.Capability_Property_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="org.eclipse.papyrus.aas.palette.ReferenceElement" label="ReferenceElement" description="Create a new ReferenceElement" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Property.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.aas.ui/resources/model/aasdi.elementtypesconfigurations#org.eclipse.papyrus.aAS.di.ReferenceElement_Property_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="clazz.tool.comment" label="Comment" description="Create a comment" kind="CreationTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Comment.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Comment_Shape_CN"/>
+      </elementDescriptors>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Comment_Shape"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+  </drawerConfigurations>
+  <drawerConfigurations xmi:type="paletteconfiguration:DrawerConfiguration" id="org.eclipse.papyrus.aas.palette.edges" label="Edges" description="Edges">
+    <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.gmf.runtime.diagram.ui" iconPath="/icons/group.gif"/>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="clazz.tool.dependency" label="Relationship" description="Creation of a Relationship" kind="ConnectionTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.uml2.uml.edit" iconPath="/icons/full/obj16/Dependency.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Dependency_Edge"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="SubmodelElementCollection Relationship" label="SubmodelElementCollection Relationship" description="Create a SubmodelElementCollection Relationship" kind="ConnectionTool">
+        <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.papyrus.uml.service.types" iconPath="/icons/Association_none_directed.gif"/>
+        <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+          <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.AssociationDirected_Edge"/>
+        </elementDescriptors>
+      </ownedConfigurations>
+    <ownedConfigurations xmi:type="paletteconfiguration:ToolConfiguration" id="clazz.tool.link" label="Comment Link" description="Creation of a link for comment" kind="ConnectionTool">
+      <icon xmi:type="paletteconfiguration:IconDescriptor" pluginID="org.eclipse.papyrus.uml.diagram.clazz" iconPath="icons/obj16/Link.gif"/>
+      <elementDescriptors xmi:type="paletteconfiguration:ElementDescriptor">
+        <elementType xmi:type="elementtypesconfigurations:SpecializationTypeConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.service.types/model/umldi.elementtypesconfigurations#org.eclipse.papyrus.umldi.Comment_AnnotatedElementEdge"/>
+      </elementDescriptors>
+    </ownedConfigurations>
+  </drawerConfigurations>
+</paletteconfiguration:PaletteConfiguration>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/AAS.environment b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/AAS.environment
new file mode 100644
index 0000000..d622208
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/AAS.environment
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<environment:Environment xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:environment="http://www.eclipse.org/papyrus/properties/environment/0.9" xmi:id="_vaCPQP5LEeqhBJDr2sjPzQ">

+  <modelElementFactories xmi:id="_0B39EP5LEeqhBJDr2sjPzQ" name="AssStereotypeModelElementFactory" factoryClass="org.eclipse.papyrus.aas.profile.ui.modelelement.AssStereotypeModelElementFactory"/>

+  <namespaces xmi:id="_yte9AP5LEeqhBJDr2sjPzQ" name="aas" value="org.eclipse.papyrus.aas.profile.ui.modelelement"/>

+</environment:Environment>

diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/aas.ctx b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/aas.ctx
new file mode 100644
index 0000000..acbc65d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/aas.ctx
@@ -0,0 +1,655 @@
+<?xml version="1.0" encoding="ASCII"?>
+<contexts:Context xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:constraints="http://www.eclipse.org/papyrus/constraints/0.9" xmlns:contexts="http://www.eclipse.org/papyrus/properties/contexts/0.9" xmi:id="_2_-QUC43EeuNTeIjXX3C8Q" name="AAS">
+  <dependencies href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_69QJkKDJEeSZxfCXzZz3-w"/>
+  <tabs xmi:id="_D6pXAC44EeuNTeIjXX3C8Q" label="AAS" id="aas" priority="100">
+    <sections xmi:id="_D6rMMC44EeuNTeIjXX3C8Q" name="Single Property" sectionFile="ui/SingleProperty.xwt">
+      <widget href="ui/SingleProperty.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6rMMS44EeuNTeIjXX3C8Q" name="Multiple Property" sectionFile="ui/MultipleProperty.xwt">
+      <widget href="ui/MultipleProperty.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6rzQC44EeuNTeIjXX3C8Q" name="Single DataElement" sectionFile="ui/SingleDataElement.xwt">
+      <widget href="ui/SingleDataElement.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6saUC44EeuNTeIjXX3C8Q" name="Multiple DataElement" sectionFile="ui/MultipleDataElement.xwt">
+      <widget href="ui/MultipleDataElement.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6tBYC44EeuNTeIjXX3C8Q" name="Single SubmodelElement" sectionFile="ui/SingleSubmodelElement.xwt">
+      <widget href="ui/SingleSubmodelElement.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6tBYS44EeuNTeIjXX3C8Q" name="Multiple SubmodelElement" sectionFile="ui/MultipleSubmodelElement.xwt">
+      <widget href="ui/MultipleSubmodelElement.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6tocC44EeuNTeIjXX3C8Q" name="Single HasSemantics" sectionFile="ui/SingleHasSemantics.xwt">
+      <widget href="ui/SingleHasSemantics.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6tocS44EeuNTeIjXX3C8Q" name="Multiple HasSemantics" sectionFile="ui/MultipleHasSemantics.xwt">
+      <widget href="ui/MultipleHasSemantics.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6uPgC44EeuNTeIjXX3C8Q" name="Single Refereable" sectionFile="ui/SingleRefereable.xwt">
+      <widget href="ui/SingleRefereable.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6uPgS44EeuNTeIjXX3C8Q" name="Multiple Refereable" sectionFile="ui/MultipleRefereable.xwt">
+      <widget href="ui/MultipleRefereable.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6u2kC44EeuNTeIjXX3C8Q" name="Single Security" sectionFile="ui/SingleSecurity.xwt">
+      <widget href="ui/SingleSecurity.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6u2kS44EeuNTeIjXX3C8Q" name="Multiple Security" sectionFile="ui/MultipleSecurity.xwt">
+      <widget href="ui/MultipleSecurity.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6vdoC44EeuNTeIjXX3C8Q" name="Single Submodel" sectionFile="ui/SingleSubmodel.xwt">
+      <widget href="ui/SingleSubmodel.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6wEsC44EeuNTeIjXX3C8Q" name="Multiple Submodel" sectionFile="ui/MultipleSubmodel.xwt">
+      <widget href="ui/MultipleSubmodel.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6wrwC44EeuNTeIjXX3C8Q" name="Single HasKind" sectionFile="ui/SingleHasKind.xwt">
+      <widget href="ui/SingleHasKind.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6wrwS44EeuNTeIjXX3C8Q" name="Multiple HasKind" sectionFile="ui/MultipleHasKind.xwt">
+      <widget href="ui/MultipleHasKind.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6xS0C44EeuNTeIjXX3C8Q" name="Single Identifiable" sectionFile="ui/SingleIdentifiable.xwt">
+      <widget href="ui/SingleIdentifiable.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6xS0S44EeuNTeIjXX3C8Q" name="Multiple Identifiable" sectionFile="ui/MultipleIdentifiable.xwt">
+      <widget href="ui/MultipleIdentifiable.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6x54C44EeuNTeIjXX3C8Q" name="Single RelationshipElement" sectionFile="ui/SingleRelationshipElement.xwt">
+      <widget href="ui/SingleRelationshipElement.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6yg8C44EeuNTeIjXX3C8Q" name="Multiple RelationshipElement" sectionFile="ui/MultipleRelationshipElement.xwt">
+      <widget href="ui/MultipleRelationshipElement.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6yg8S44EeuNTeIjXX3C8Q" name="Single BasicEvent" sectionFile="ui/SingleBasicEvent.xwt">
+      <widget href="ui/SingleBasicEvent.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6zIAC44EeuNTeIjXX3C8Q" name="Multiple BasicEvent" sectionFile="ui/MultipleBasicEvent.xwt">
+      <widget href="ui/MultipleBasicEvent.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6zvEC44EeuNTeIjXX3C8Q" name="Single Event" sectionFile="ui/SingleEvent.xwt">
+      <widget href="ui/SingleEvent.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D60WIC44EeuNTeIjXX3C8Q" name="Multiple Event" sectionFile="ui/MultipleEvent.xwt">
+      <widget href="ui/MultipleEvent.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D60WIS44EeuNTeIjXX3C8Q" name="Single Range" sectionFile="ui/SingleRange.xwt">
+      <widget href="ui/SingleRange.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D609MC44EeuNTeIjXX3C8Q" name="Multiple Range" sectionFile="ui/MultipleRange.xwt">
+      <widget href="ui/MultipleRange.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D61kQC44EeuNTeIjXX3C8Q" name="Single AdministrativeInformation" sectionFile="ui/SingleAdministrativeInformation.xwt">
+      <widget href="ui/SingleAdministrativeInformation.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D61kQS44EeuNTeIjXX3C8Q" name="Multiple AdministrativeInformation" sectionFile="ui/MultipleAdministrativeInformation.xwt">
+      <widget href="ui/MultipleAdministrativeInformation.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D62LUC44EeuNTeIjXX3C8Q" name="Single File" sectionFile="ui/SingleFile.xwt">
+      <widget href="ui/SingleFile.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D62LUS44EeuNTeIjXX3C8Q" name="Multiple File" sectionFile="ui/MultipleFile.xwt">
+      <widget href="ui/MultipleFile.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D62yYC44EeuNTeIjXX3C8Q" name="Single Certificate" sectionFile="ui/SingleCertificate.xwt">
+      <widget href="ui/SingleCertificate.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D62yYS44EeuNTeIjXX3C8Q" name="Multiple Certificate" sectionFile="ui/MultipleCertificate.xwt">
+      <widget href="ui/MultipleCertificate.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D62yYi44EeuNTeIjXX3C8Q" name="Single AccessControlPolicyPoints" sectionFile="ui/SingleAccessControlPolicyPoints.xwt">
+      <widget href="ui/SingleAccessControlPolicyPoints.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D63ZcC44EeuNTeIjXX3C8Q" name="Multiple AccessControlPolicyPoints" sectionFile="ui/MultipleAccessControlPolicyPoints.xwt">
+      <widget href="ui/MultipleAccessControlPolicyPoints.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D64AgC44EeuNTeIjXX3C8Q" name="Single Operation" sectionFile="ui/SingleOperation.xwt">
+      <widget href="ui/SingleOperation.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D64AgS44EeuNTeIjXX3C8Q" name="Multiple Operation" sectionFile="ui/MultipleOperation.xwt">
+      <widget href="ui/MultipleOperation.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D64nkC44EeuNTeIjXX3C8Q" name="Single Entity" sectionFile="ui/SingleEntity.xwt">
+      <widget href="ui/SingleEntity.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D64nkS44EeuNTeIjXX3C8Q" name="Multiple Entity" sectionFile="ui/MultipleEntity.xwt">
+      <widget href="ui/MultipleEntity.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D65OoC44EeuNTeIjXX3C8Q" name="Single Capability" sectionFile="ui/SingleCapability.xwt">
+      <widget href="ui/SingleCapability.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D651sC44EeuNTeIjXX3C8Q" name="Multiple Capability" sectionFile="ui/MultipleCapability.xwt">
+      <widget href="ui/MultipleCapability.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D651sS44EeuNTeIjXX3C8Q" name="Single Identifier" sectionFile="ui/SingleIdentifier.xwt">
+      <widget href="ui/SingleIdentifier.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D651si44EeuNTeIjXX3C8Q" name="Multiple Identifier" sectionFile="ui/MultipleIdentifier.xwt">
+      <widget href="ui/MultipleIdentifier.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D66cwC44EeuNTeIjXX3C8Q" name="Single SubmodelElementCollection" sectionFile="ui/SingleSubmodelElementCollection.xwt">
+      <widget href="ui/SingleSubmodelElementCollection.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D66cwS44EeuNTeIjXX3C8Q" name="Multiple SubmodelElementCollection" sectionFile="ui/MultipleSubmodelElementCollection.xwt">
+      <widget href="ui/MultipleSubmodelElementCollection.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D66cwi44EeuNTeIjXX3C8Q" name="Single Reference" sectionFile="ui/SingleReference.xwt">
+      <widget href="ui/SingleReference.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D67D0C44EeuNTeIjXX3C8Q" name="Multiple Reference" sectionFile="ui/MultipleReference.xwt">
+      <widget href="ui/MultipleReference.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D67D0S44EeuNTeIjXX3C8Q" name="Single Endpoint" sectionFile="ui/SingleEndpoint.xwt">
+      <widget href="ui/SingleEndpoint.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D67D0i44EeuNTeIjXX3C8Q" name="Multiple Endpoint" sectionFile="ui/MultipleEndpoint.xwt">
+      <widget href="ui/MultipleEndpoint.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D67q4C44EeuNTeIjXX3C8Q" name="Single AccessControl" sectionFile="ui/SingleAccessControl.xwt">
+      <widget href="ui/SingleAccessControl.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D67q4S44EeuNTeIjXX3C8Q" name="Multiple AccessControl" sectionFile="ui/MultipleAccessControl.xwt">
+      <widget href="ui/MultipleAccessControl.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D67q4i44EeuNTeIjXX3C8Q" name="Single AssetAdministrationShell" sectionFile="ui/SingleAssetAdministrationShell.xwt">
+      <widget href="ui/SingleAssetAdministrationShell.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D68R8C44EeuNTeIjXX3C8Q" name="Multiple AssetAdministrationShell" sectionFile="ui/MultipleAssetAdministrationShell.xwt">
+      <widget href="ui/MultipleAssetAdministrationShell.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D68R8S44EeuNTeIjXX3C8Q" name="Single ReferenceElement" sectionFile="ui/SingleReferenceElement.xwt">
+      <widget href="ui/SingleReferenceElement.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D685AC44EeuNTeIjXX3C8Q" name="Multiple ReferenceElement" sectionFile="ui/MultipleReferenceElement.xwt">
+      <widget href="ui/MultipleReferenceElement.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D69gEC44EeuNTeIjXX3C8Q" name="Single Asset" sectionFile="ui/SingleAsset.xwt">
+      <widget href="ui/SingleAsset.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D69gES44EeuNTeIjXX3C8Q" name="Multiple Asset" sectionFile="ui/MultipleAsset.xwt">
+      <widget href="ui/MultipleAsset.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D69gEi44EeuNTeIjXX3C8Q" name="Single Key" sectionFile="ui/SingleKey.xwt">
+      <widget href="ui/SingleKey.xwt#/"/>
+    </sections>
+    <sections xmi:id="_D6-HIC44EeuNTeIjXX3C8Q" name="Multiple Key" sectionFile="ui/MultipleKey.xwt">
+      <widget href="ui/MultipleKey.xwt#/"/>
+    </sections>
+  </tabs>
+  <views xmi:id="_2_-QUS43EeuNTeIjXX3C8Q" name="Single Property" sections="_D6rMMC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RPC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QUi43EeuNTeIjXX3C8Q" name="isSingleProperty">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QUy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Property"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QVC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Property" sections="_D6rMMS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RPC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QVS43EeuNTeIjXX3C8Q" name="isMultipleProperty">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QVi43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Property"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QVy43EeuNTeIjXX3C8Q" name="Single DataElement" sections="_D6rzQC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RLS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QWC43EeuNTeIjXX3C8Q" name="isSingleDataElement">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QWS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::DataElement"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QWi43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple DataElement" sections="_D6saUC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RLS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QWy43EeuNTeIjXX3C8Q" name="isMultipleDataElement">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QXC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::DataElement"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QXS43EeuNTeIjXX3C8Q" name="Single SubmodelElement" sections="_D6tBYC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RFS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QXi43EeuNTeIjXX3C8Q" name="isSingleSubmodelElement">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QXy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::SubmodelElement"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QYC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple SubmodelElement" sections="_D6tBYS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RFS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QYS43EeuNTeIjXX3C8Q" name="isMultipleSubmodelElement">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QYi43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::SubmodelElement"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QYy43EeuNTeIjXX3C8Q" name="Single HasSemantics" sections="_D6tocC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RPS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QZC43EeuNTeIjXX3C8Q" name="isSingleHasSemantics">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QZS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::HasSemantics"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QZi43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple HasSemantics" sections="_D6tocS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RPS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QZy43EeuNTeIjXX3C8Q" name="isMultipleHasSemantics">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QaC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::HasSemantics"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QaS43EeuNTeIjXX3C8Q" name="Single Refereable" sections="_D6uPgC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RLy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qai43EeuNTeIjXX3C8Q" name="isSingleRefereable">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qay43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Refereable"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QbC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Refereable" sections="_D6uPgS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RLy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QbS43EeuNTeIjXX3C8Q" name="isMultipleRefereable">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qbi43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Refereable"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qby43EeuNTeIjXX3C8Q" name="Single Security" sections="_D6u2kC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RGi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QcC43EeuNTeIjXX3C8Q" name="isSingleSecurity">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QcS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Security"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qci43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Security" sections="_D6u2kS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RGi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qcy43EeuNTeIjXX3C8Q" name="isMultipleSecurity">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QdC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Security"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QdS43EeuNTeIjXX3C8Q" name="Single Submodel" sections="_D6vdoC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RFi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qdi43EeuNTeIjXX3C8Q" name="isSingleSubmodel">
+     <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qdy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Submodel"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QeC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Submodel" sections="_D6wEsC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RFi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QeS43EeuNTeIjXX3C8Q" name="isMultipleSubmodel">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qei43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Submodel"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qey43EeuNTeIjXX3C8Q" name="Single HasKind" sections="_D6wrwC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RKS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QfC43EeuNTeIjXX3C8Q" name="isSingleHasKind">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QfS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::HasKind"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qfi43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple HasKind" sections="_D6wrwS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RKS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qfy43EeuNTeIjXX3C8Q" name="isMultipleHasKind">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QgC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::HasKind"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QgS43EeuNTeIjXX3C8Q" name="Single Identifiable" sections="_D6xS0C44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-ROC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qgi43EeuNTeIjXX3C8Q" name="isSingleIdentifiable">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qgy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Identifiable"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QhC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Identifiable" sections="_D6xS0S44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-ROC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QhS43EeuNTeIjXX3C8Q" name="isMultipleIdentifiable">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qhi43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Identifiable"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qhy43EeuNTeIjXX3C8Q" name="Single RelationshipElement" sections="_D6x54C44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RNy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QiC43EeuNTeIjXX3C8Q" name="isSingleRelationshipElement">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QiS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::RelationshipElement"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qii43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple RelationshipElement" sections="_D6yg8C44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RNy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qiy43EeuNTeIjXX3C8Q" name="isMultipleRelationshipElement">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QjC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::RelationshipElement"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QjS43EeuNTeIjXX3C8Q" name="Single BasicEvent" sections="_D6yg8S44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RSS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qji43EeuNTeIjXX3C8Q" name="isSingleBasicEvent">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qjy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::BasicEvent"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QkC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple BasicEvent" sections="_D6zIAC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RSS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QkS43EeuNTeIjXX3C8Q" name="isMultipleBasicEvent">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qki43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::BasicEvent"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qky43EeuNTeIjXX3C8Q" name="Single Event" sections="_D6zvEC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RIS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QlC43EeuNTeIjXX3C8Q" name="isSingleEvent">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QlS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Event"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qli43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Event" sections="_D60WIC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RIS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qly43EeuNTeIjXX3C8Q" name="isMultipleEvent">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QmC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Event"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QmS43EeuNTeIjXX3C8Q" name="Single Range" sections="_D60WIS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RNC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qmi43EeuNTeIjXX3C8Q" name="isSingleRange">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qmy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Range"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QnC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Range" sections="_D609MC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RNC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QnS43EeuNTeIjXX3C8Q" name="isMultipleRange">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qni43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Range"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qny43EeuNTeIjXX3C8Q" name="Single AdministrativeInformation" sections="_D61kQC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RDC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QoC43EeuNTeIjXX3C8Q" name="isSingleAdministrativeInformation">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QoS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::AdministrativeInformation"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qoi43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple AdministrativeInformation" sections="_D61kQS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RDC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qoy43EeuNTeIjXX3C8Q" name="isMultipleAdministrativeInformation">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QpC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::AdministrativeInformation"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QpS43EeuNTeIjXX3C8Q" name="Single File" sections="_D62LUC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RDy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qpi43EeuNTeIjXX3C8Q" name="isSingleFile">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qpy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::File"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QqC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple File" sections="_D62LUS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RDy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QqS43EeuNTeIjXX3C8Q" name="isMultipleFile">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qqi43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::File"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qqy43EeuNTeIjXX3C8Q" name="Single Certificate" sections="_D62yYC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RJS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QrC43EeuNTeIjXX3C8Q" name="isSingleCertificate">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QrS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Certificate"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qri43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Certificate" sections="_D62yYS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RJS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qry43EeuNTeIjXX3C8Q" name="isMultipleCertificate">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QsC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Certificate"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QsS43EeuNTeIjXX3C8Q" name="Single AccessControlPolicyPoints" sections="_D62yYi44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RPy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qsi43EeuNTeIjXX3C8Q" name="isSingleAccessControlPolicyPoints">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qsy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::AccessControlPolicyPoints"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QtC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple AccessControlPolicyPoints" sections="_D63ZcC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RPy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QtS43EeuNTeIjXX3C8Q" name="isMultipleAccessControlPolicyPoints">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qti43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::AccessControlPolicyPoints"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qty43EeuNTeIjXX3C8Q" name="Single Operation" sections="_D64AgC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RIy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QuC43EeuNTeIjXX3C8Q" name="isSingleOperation">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QuS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Operation"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qui43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Operation" sections="_D64AgS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RIy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Quy43EeuNTeIjXX3C8Q" name="isMultipleOperation">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QvC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Operation"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QvS43EeuNTeIjXX3C8Q" name="Single Entity" sections="_D64nkC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-REi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qvi43EeuNTeIjXX3C8Q" name="isSingleEntity">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qvy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Entity"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QwC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Entity" sections="_D64nkS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-REi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QwS43EeuNTeIjXX3C8Q" name="isMultipleEntity">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qwi43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Entity"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qwy43EeuNTeIjXX3C8Q" name="Single Capability" sections="_D65OoC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RSy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QxC43EeuNTeIjXX3C8Q" name="isSingleCapability">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QxS43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Capability"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qxi43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Capability" sections="_D651sC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RSy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qxy43EeuNTeIjXX3C8Q" name="isMultipleCapability">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-QyC43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Capability"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QyS43EeuNTeIjXX3C8Q" name="Single Identifier" sections="_D651sS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RJi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Qyi43EeuNTeIjXX3C8Q" name="isSingleIdentifier">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qyy43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Identifier"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-QzC43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Identifier" sections="_D651si44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RJi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-QzS43EeuNTeIjXX3C8Q" name="isMultipleIdentifier">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Qzi43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Identifier"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Qzy43EeuNTeIjXX3C8Q" name="Single SubmodelElementCollection" sections="_D66cwC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RHi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q0C43EeuNTeIjXX3C8Q" name="isSingleSubmodelElementCollection">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q0S43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::SubmodelElementCollection"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q0i43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple SubmodelElementCollection" sections="_D66cwS44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RHi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q0y43EeuNTeIjXX3C8Q" name="isMultipleSubmodelElementCollection">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q1C43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::SubmodelElementCollection"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q1S43EeuNTeIjXX3C8Q" name="Single Reference" sections="_D66cwi44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RKy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q1i43EeuNTeIjXX3C8Q" name="isSingleReference">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q1y43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Reference"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q2C43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Reference" sections="_D67D0C44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RKy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q2S43EeuNTeIjXX3C8Q" name="isMultipleReference">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q2i43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Reference"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q2y43EeuNTeIjXX3C8Q" name="Single Endpoint" sections="_D67D0S44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RTS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q3C43EeuNTeIjXX3C8Q" name="isSingleEndpoint">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q3S43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Endpoint"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q3i43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Endpoint" sections="_D67D0i44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RTS43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q3y43EeuNTeIjXX3C8Q" name="isMultipleEndpoint">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q4C43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Endpoint"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q4S43EeuNTeIjXX3C8Q" name="Single AccessControl" sections="_D67q4C44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-ROy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q4i43EeuNTeIjXX3C8Q" name="isSingleAccessControl">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q4y43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::AccessControl"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q5C43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple AccessControl" sections="_D67q4S44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-ROy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q5S43EeuNTeIjXX3C8Q" name="isMultipleAccessControl">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q5i43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::AccessControl"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q5y43EeuNTeIjXX3C8Q" name="Single AssetAdministrationShell" sections="_D67q4i44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RAC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q6C43EeuNTeIjXX3C8Q" name="isSingleAssetAdministrationShell">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q6S43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::AssetAdministrationShell"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q6i43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple AssetAdministrationShell" sections="_D68R8C44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RAC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q6y43EeuNTeIjXX3C8Q" name="isMultipleAssetAdministrationShell">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q7C43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::AssetAdministrationShell"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q7S43EeuNTeIjXX3C8Q" name="Single ReferenceElement" sections="_D68R8S44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RGC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q7i43EeuNTeIjXX3C8Q" name="isSingleReferenceElement">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q7y43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::ReferenceElement"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q8C43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple ReferenceElement" sections="_D685AC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RGC43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q8S43EeuNTeIjXX3C8Q" name="isMultipleReferenceElement">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q8i43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::ReferenceElement"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q8y43EeuNTeIjXX3C8Q" name="Single Asset" sections="_D69gEC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RRi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q9C43EeuNTeIjXX3C8Q" name="isSingleAsset">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q9S43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Asset"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q9i43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Asset" sections="_D69gES44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RRi43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q9y43EeuNTeIjXX3C8Q" name="isMultipleAsset">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q-C43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Asset"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q-S43EeuNTeIjXX3C8Q" name="Single Key" sections="_D69gEi44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RBy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q-i43EeuNTeIjXX3C8Q" name="isSingleKey">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q-y43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Key"/>
+    </constraints>
+  </views>
+  <views xmi:id="_2_-Q_C43EeuNTeIjXX3C8Q" elementMultiplicity="-1" name="Multiple Key" sections="_D6-HIC44EeuNTeIjXX3C8Q" automaticContext="true" datacontexts="_2_-RBy43EeuNTeIjXX3C8Q">
+    <constraints xsi:type="constraints:SimpleConstraint" xmi:id="_2_-Q_S43EeuNTeIjXX3C8Q" name="isMultipleKey">
+      <constraintType href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@constraintTypes.1"/>
+      <properties xsi:type="constraints:ValueProperty" xmi:id="_2_-Q_i43EeuNTeIjXX3C8Q" name="stereotypeName" value="AAS::Key"/>
+    </constraints>
+  </views>
+  <dataContexts xmi:id="_2_-Q_y43EeuNTeIjXX3C8Q" name="AAS">
+    <elements xmi:id="_2_-RAC43EeuNTeIjXX3C8Q" name="AssetAdministrationShell" supertypes="_2_-ROC43EeuNTeIjXX3C8Q">
+      <properties xmi:id="_2_-RAS43EeuNTeIjXX3C8Q" name="derivedFrom" type="Reference"/>
+      <properties xmi:id="_2_-RAi43EeuNTeIjXX3C8Q" name="security" type="Reference"/>
+      <properties xmi:id="_2_-RAy43EeuNTeIjXX3C8Q" name="asset" type="Reference"/>
+      <properties xmi:id="_2_-RBC43EeuNTeIjXX3C8Q" name="submodel" type="Reference" multiplicity="-1"/>
+      <properties xmi:id="_2_-RBS43EeuNTeIjXX3C8Q" name="url"/>
+      <properties xmi:id="_2_-RBi43EeuNTeIjXX3C8Q" name="port" type="Integer"/>
+    </elements>
+    <elements xmi:id="_2_-RBy43EeuNTeIjXX3C8Q" name="Key">
+      <properties xmi:id="_2_-RCC43EeuNTeIjXX3C8Q" name="type" type="Enumeration"/>
+      <properties xmi:id="_2_-RCS43EeuNTeIjXX3C8Q" name="local" type="Boolean"/>
+      <properties xmi:id="_2_-RCi43EeuNTeIjXX3C8Q" name="value"/>
+      <properties xmi:id="_2_-RCy43EeuNTeIjXX3C8Q" name="idType" type="Enumeration"/>
+    </elements>
+    <elements xmi:id="_2_-RDC43EeuNTeIjXX3C8Q" name="AdministrativeInformation">
+      <properties xmi:id="_2_-RDS43EeuNTeIjXX3C8Q" name="version"/>
+      <properties xmi:id="_2_-RDi43EeuNTeIjXX3C8Q" name="revision"/>
+    </elements>
+    <elements xmi:id="_2_-RDy43EeuNTeIjXX3C8Q" name="File" supertypes="_2_-RLS43EeuNTeIjXX3C8Q">
+      <properties xmi:id="_2_-REC43EeuNTeIjXX3C8Q" name="path"/>
+      <properties xmi:id="_2_-RES43EeuNTeIjXX3C8Q" name="mimeType" type="Enumeration"/>
+    </elements>
+    <elements xmi:id="_2_-REi43EeuNTeIjXX3C8Q" name="Entity" supertypes="_2_-RFS43EeuNTeIjXX3C8Q">
+      <properties xmi:id="_2_-REy43EeuNTeIjXX3C8Q" name="entityType" type="Enumeration"/>
+      <properties xmi:id="_2_-RFC43EeuNTeIjXX3C8Q" name="asset" type="Reference"/>
+    </elements>
+    <elements xmi:id="_2_-RFS43EeuNTeIjXX3C8Q" name="SubmodelElement" supertypes="_2_-RLy43EeuNTeIjXX3C8Q _2_-RPS43EeuNTeIjXX3C8Q"/>
+    <elements xmi:id="_2_-RFi43EeuNTeIjXX3C8Q" name="Submodel" supertypes="_2_-ROC43EeuNTeIjXX3C8Q _2_-RKS43EeuNTeIjXX3C8Q _2_-RPS43EeuNTeIjXX3C8Q">
+      <properties xmi:id="_2_-RFy43EeuNTeIjXX3C8Q" name="submodelelement" type="Reference" multiplicity="-1"/>
+    </elements>
+    <elements xmi:id="_2_-RGC43EeuNTeIjXX3C8Q" name="ReferenceElement" supertypes="_2_-RLS43EeuNTeIjXX3C8Q">
+      <properties xmi:id="_2_-RGS43EeuNTeIjXX3C8Q" name="value" type="Reference"/>
+    </elements>
+    <elements xmi:id="_2_-RGi43EeuNTeIjXX3C8Q" name="Security">
+      <properties xmi:id="_2_-RGy43EeuNTeIjXX3C8Q" name="accessControlPolicyPoints" type="Reference"/>
+      <properties xmi:id="_2_-RHC43EeuNTeIjXX3C8Q" name="certificate" type="Reference" multiplicity="-1"/>
+      <properties xmi:id="_2_-RHS43EeuNTeIjXX3C8Q" name="requiredCertificateExtension" type="Reference" multiplicity="-1"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yXqDJEeSZxfCXzZz3-w"/>
+    </elements>
+    <elements xmi:id="_2_-RHi43EeuNTeIjXX3C8Q" name="SubmodelElementCollection">
+      <properties xmi:id="_2_-RHy43EeuNTeIjXX3C8Q" name="value" type="Reference" multiplicity="-1"/>
+      <properties xmi:id="_2_-RIC43EeuNTeIjXX3C8Q" name="idShort" redefinedProperties="_2_-RMC43EeuNTeIjXX3C8Q"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yG6DJEeSZxfCXzZz3-w"/>
+      <supertypes href="#_2_-RFS43EeuNTeIjXX3C8Q"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690y1qDJEeSZxfCXzZz3-w"/>
+    </elements>
+    <elements xmi:id="_2_-RIS43EeuNTeIjXX3C8Q" name="Event">
+      <properties xmi:id="_2_-RIi43EeuNTeIjXX3C8Q" name="idShort" redefinedProperties="_2_-RMC43EeuNTeIjXX3C8Q"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yG6DJEeSZxfCXzZz3-w"/>
+      <supertypes href="#_2_-RFS43EeuNTeIjXX3C8Q"/>
+    </elements>
+    <elements xmi:id="_2_-RIy43EeuNTeIjXX3C8Q" name="Operation">
+      <properties xmi:id="_2_-RJC43EeuNTeIjXX3C8Q" name="idShort" redefinedProperties="_2_-RMC43EeuNTeIjXX3C8Q"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yQKDJEeSZxfCXzZz3-w"/>
+      <supertypes href="#_2_-RFS43EeuNTeIjXX3C8Q"/>
+    </elements>
+    <elements xmi:id="_2_-RJS43EeuNTeIjXX3C8Q" name="Certificate"/>
+    <elements xmi:id="_2_-RJi43EeuNTeIjXX3C8Q" name="Identifier">
+      <properties xmi:id="_2_-RJy43EeuNTeIjXX3C8Q" name="idType" type="Enumeration"/>
+      <properties xmi:id="_2_-RKC43EeuNTeIjXX3C8Q" name="id"/>
+    </elements>
+    <elements xmi:id="_2_-RKS43EeuNTeIjXX3C8Q" name="HasKind">
+      <properties xmi:id="_2_-RKi43EeuNTeIjXX3C8Q" name="kind" type="Enumeration"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yXqDJEeSZxfCXzZz3-w"/>
+    </elements>
+    <elements xmi:id="_2_-RKy43EeuNTeIjXX3C8Q" name="Reference">
+      <properties xmi:id="_2_-RLC43EeuNTeIjXX3C8Q" name="key" type="Reference" multiplicity="-1"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yXqDJEeSZxfCXzZz3-w"/>
+    </elements>
+    <elements xmi:id="_2_-RLS43EeuNTeIjXX3C8Q" name="DataElement">
+      <properties xmi:id="_2_-RLi43EeuNTeIjXX3C8Q" name="idShort" redefinedProperties="_2_-RMC43EeuNTeIjXX3C8Q"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yG6DJEeSZxfCXzZz3-w"/>
+      <supertypes href="#_2_-RFS43EeuNTeIjXX3C8Q"/>
+    </elements>
+    <elements xmi:id="_2_-RLy43EeuNTeIjXX3C8Q" name="Refereable">
+      <properties xmi:id="_2_-RMC43EeuNTeIjXX3C8Q" name="idShort" redefinedByProperties="_2_-RLi43EeuNTeIjXX3C8Q _2_-RIi43EeuNTeIjXX3C8Q _2_-RJC43EeuNTeIjXX3C8Q _2_-RTC43EeuNTeIjXX3C8Q _2_-RIC43EeuNTeIjXX3C8Q"/>
+      <properties xmi:id="_2_-RMS43EeuNTeIjXX3C8Q" name="category"/>
+      <properties xmi:id="_2_-RMi43EeuNTeIjXX3C8Q" name="description"/>
+      <properties xmi:id="_2_-RMy43EeuNTeIjXX3C8Q" name="parent" type="Reference"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yXqDJEeSZxfCXzZz3-w"/>
+    </elements>
+    <elements xmi:id="_2_-RNC43EeuNTeIjXX3C8Q" name="Range" supertypes="_2_-RLS43EeuNTeIjXX3C8Q">
+      <properties xmi:id="_2_-RNS43EeuNTeIjXX3C8Q" name="min" type="Integer"/>
+      <properties xmi:id="_2_-RNi43EeuNTeIjXX3C8Q" name="max" type="Integer"/>
+    </elements>
+    <elements xmi:id="_2_-RNy43EeuNTeIjXX3C8Q" name="RelationshipElement">
+      <supertypes href="#_2_-RFS43EeuNTeIjXX3C8Q"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690xmqDJEeSZxfCXzZz3-w"/>
+    </elements>
+    <elements xmi:id="_2_-ROC43EeuNTeIjXX3C8Q" name="Identifiable" supertypes="_2_-RLy43EeuNTeIjXX3C8Q">
+      <properties xmi:id="_2_-ROS43EeuNTeIjXX3C8Q" name="administration" type="Reference"/>
+      <properties xmi:id="_2_-ROi43EeuNTeIjXX3C8Q" name="identification" type="Reference"/>
+    </elements>
+    <elements xmi:id="_2_-ROy43EeuNTeIjXX3C8Q" name="AccessControl"/>
+    <elements xmi:id="_2_-RPC43EeuNTeIjXX3C8Q" name="Property" supertypes="_2_-RLS43EeuNTeIjXX3C8Q"/>
+    <elements xmi:id="_2_-RPS43EeuNTeIjXX3C8Q" name="HasSemantics">
+      <properties xmi:id="_2_-RPi43EeuNTeIjXX3C8Q" name="semanticId" type="Reference"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yXqDJEeSZxfCXzZz3-w"/>
+    </elements>
+    <elements xmi:id="_2_-RPy43EeuNTeIjXX3C8Q" name="AccessControlPolicyPoints">
+      <properties xmi:id="_2_-RQC43EeuNTeIjXX3C8Q" name="localAccessControl" type="Reference"/>
+      <properties xmi:id="_2_-RQS43EeuNTeIjXX3C8Q" name="externalAccessControl"/>
+      <properties xmi:id="_2_-RQi43EeuNTeIjXX3C8Q" name="externalInformationPoints"/>
+      <properties xmi:id="_2_-RQy43EeuNTeIjXX3C8Q" name="internalInformationPoint" type="Reference"/>
+      <properties xmi:id="_2_-RRC43EeuNTeIjXX3C8Q" name="externalPolicyDecisionPoints"/>
+      <properties xmi:id="_2_-RRS43EeuNTeIjXX3C8Q" name="externalPolicyEnforcementPoint"/>
+    </elements>
+    <elements xmi:id="_2_-RRi43EeuNTeIjXX3C8Q" name="Asset" supertypes="_2_-ROC43EeuNTeIjXX3C8Q">
+      <properties xmi:id="_2_-RRy43EeuNTeIjXX3C8Q" name="kind" type="Enumeration"/>
+      <properties xmi:id="_2_-RSC43EeuNTeIjXX3C8Q" name="endpoint" type="Reference" multiplicity="-1"/>
+    </elements>
+    <elements xmi:id="_2_-RSS43EeuNTeIjXX3C8Q" name="BasicEvent" supertypes="_2_-RIS43EeuNTeIjXX3C8Q">
+      <properties xmi:id="_2_-RSi43EeuNTeIjXX3C8Q" name="observed" type="Reference"/>
+    </elements>
+    <elements xmi:id="_2_-RSy43EeuNTeIjXX3C8Q" name="Capability">
+      <properties xmi:id="_2_-RTC43EeuNTeIjXX3C8Q" name="idShort" redefinedProperties="_2_-RMC43EeuNTeIjXX3C8Q"/>
+      <supertypes href="ppe:/context/org.eclipse.papyrus.uml.properties/Model/UML/UML.ctx#_690yG6DJEeSZxfCXzZz3-w"/>
+      <supertypes href="#_2_-RFS43EeuNTeIjXX3C8Q"/>
+    </elements>
+    <elements xmi:id="_2_-RTS43EeuNTeIjXX3C8Q" name="Endpoint">
+      <properties xmi:id="_2_-RTi43EeuNTeIjXX3C8Q" name="address"/>
+      <properties xmi:id="_2_-RTy43EeuNTeIjXX3C8Q" name="protocol" type="Enumeration"/>
+    </elements>
+    <modelElementFactory href="ppe:/environment/org.eclipse.papyrus.uml.properties/Model/Environment.xmi#//@modelElementFactories.2"/>
+ 	<modelElementFactory href="ppe:/environment/org.eclipse.papyrus.aas.ui/resources/properties/AAS.environment#_0B39EP5LEeqhBJDr2sjPzQ"/>
+  </dataContexts>
+</contexts:Context>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAccessControl.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAccessControl.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAccessControl.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAccessControlPolicyPoints.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAccessControlPolicyPoints.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAccessControlPolicyPoints.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAdministrativeInformation.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAdministrativeInformation.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAdministrativeInformation.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAsset.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAsset.xwt
new file mode 100644
index 0000000..d2e51bc
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAsset.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Asset:kind"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAssetAdministrationShell.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAssetAdministrationShell.xwt
new file mode 100644
index 0000000..dd1af58
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleAssetAdministrationShell.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="2"/>
+                        </Composite.layout>
+                        <ppe:IntegerEditor input="{Binding}" property="AAS:AssetAdministrationShell:port"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleBasicEvent.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleBasicEvent.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleBasicEvent.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleCapability.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleCapability.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleCapability.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleCertificate.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleCertificate.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleCertificate.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleDataElement.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleDataElement.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleDataElement.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleEndpoint.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleEndpoint.xwt
new file mode 100644
index 0000000..18e2f75
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleEndpoint.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Endpoint:protocol"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleEntity.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleEntity.xwt
new file mode 100644
index 0000000..c330761
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleEntity.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Entity:entityType"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleEvent.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleEvent.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleEvent.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleFile.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleFile.xwt
new file mode 100644
index 0000000..e5c1294
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleFile.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:File:mimeType"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleHasKind.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleHasKind.xwt
new file mode 100644
index 0000000..cdd9a8e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleHasKind.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:HasKind:kind"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleHasSemantics.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleHasSemantics.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleHasSemantics.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleIdentifiable.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleIdentifiable.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleIdentifiable.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleIdentifier.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleIdentifier.xwt
new file mode 100644
index 0000000..ca25295
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleIdentifier.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Identifier:idType"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleKey.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleKey.xwt
new file mode 100644
index 0000000..da09144
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleKey.xwt
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="2"/>
+                        </Composite.layout>
+                        <ppe:BooleanRadio input="{Binding}" property="AAS:Key:local"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Key:type"/>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Key:idType"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleOperation.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleOperation.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleOperation.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleProperty.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleProperty.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleProperty.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleRange.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleRange.xwt
new file mode 100644
index 0000000..4cf8231
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleRange.xwt
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="2"/>
+                        </Composite.layout>
+                        <ppe:IntegerEditor input="{Binding}" property="AAS:Range:min"/>
+                        <ppe:IntegerEditor input="{Binding}" property="AAS:Range:max"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleRefereable.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleRefereable.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleRefereable.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleReference.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleReference.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleReference.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleReferenceElement.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleReferenceElement.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleReferenceElement.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleRelationshipElement.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleRelationshipElement.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleRelationshipElement.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSecurity.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSecurity.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSecurity.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSubmodel.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSubmodel.xwt
new file mode 100644
index 0000000..cdd9a8e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSubmodel.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:HasKind:kind"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSubmodelElement.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSubmodelElement.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSubmodelElement.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSubmodelElementCollection.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSubmodelElementCollection.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/MultipleSubmodelElementCollection.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAccessControl.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAccessControl.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAccessControl.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAccessControlPolicyPoints.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAccessControlPolicyPoints.xwt
new file mode 100644
index 0000000..9d3da5b
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAccessControlPolicyPoints.xwt
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:AccessControlPolicyPoints:externalAccessControl"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:AccessControlPolicyPoints:externalInformationPoints"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:AccessControlPolicyPoints:externalPolicyDecisionPoints"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:AccessControlPolicyPoints:externalPolicyEnforcementPoint"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:AccessControlPolicyPoints:localAccessControl"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:AccessControlPolicyPoints:internalInformationPoint"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAdministrativeInformation.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAdministrativeInformation.xwt
new file mode 100644
index 0000000..620a084
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAdministrativeInformation.xwt
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:AdministrativeInformation:version"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:AdministrativeInformation:revision"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAsset.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAsset.xwt
new file mode 100644
index 0000000..57b73c5
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAsset.xwt
@@ -0,0 +1,33 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Asset:kind"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Identifiable:administration"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Identifiable:identification"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:MultiReference input="{Binding}" property="AAS:Asset:endpoint"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAssetAdministrationShell.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAssetAdministrationShell.xwt
new file mode 100644
index 0000000..c3e3202
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleAssetAdministrationShell.xwt
@@ -0,0 +1,37 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:AssetAdministrationShell:url"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="2"/>
+                        </Composite.layout>
+                        <ppe:IntegerEditor input="{Binding}" property="AAS:AssetAdministrationShell:port"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:AssetAdministrationShell:derivedFrom"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:AssetAdministrationShell:security"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:AssetAdministrationShell:asset"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Identifiable:administration"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Identifiable:identification"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:MultiReference input="{Binding}" property="AAS:AssetAdministrationShell:submodel"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleBasicEvent.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleBasicEvent.xwt
new file mode 100644
index 0000000..294feb2
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleBasicEvent.xwt
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Event:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:BasicEvent:observed"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleCapability.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleCapability.xwt
new file mode 100644
index 0000000..876275d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleCapability.xwt
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Capability:idShort"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleCertificate.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleCertificate.xwt
new file mode 100644
index 0000000..28b5fd1
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleCertificate.xwt
@@ -0,0 +1,5 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleDataElement.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleDataElement.xwt
new file mode 100644
index 0000000..162cbe8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleDataElement.xwt
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:DataElement:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleEndpoint.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleEndpoint.xwt
new file mode 100644
index 0000000..064d3bd
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleEndpoint.xwt
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Endpoint:address"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Endpoint:protocol"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleEntity.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleEntity.xwt
new file mode 100644
index 0000000..27c8310
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleEntity.xwt
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Entity:entityType"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Entity:asset"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleEvent.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleEvent.xwt
new file mode 100644
index 0000000..5ea7c4d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleEvent.xwt
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Event:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleFile.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleFile.xwt
new file mode 100644
index 0000000..e37522f
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleFile.xwt
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:File:path"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:DataElement:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:File:mimeType"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleHasKind.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleHasKind.xwt
new file mode 100644
index 0000000..cdd9a8e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleHasKind.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:HasKind:kind"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleHasSemantics.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleHasSemantics.xwt
new file mode 100644
index 0000000..8a0b185
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleHasSemantics.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleIdentifiable.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleIdentifiable.xwt
new file mode 100644
index 0000000..022a3ec
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleIdentifiable.xwt
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Identifiable:administration"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Identifiable:identification"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleIdentifier.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleIdentifier.xwt
new file mode 100644
index 0000000..deedfaf
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleIdentifier.xwt
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Identifier:id"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Identifier:idType"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleKey.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleKey.xwt
new file mode 100644
index 0000000..0a653e3
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleKey.xwt
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Key:value"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="2"/>
+                        </Composite.layout>
+                        <ppe:BooleanRadio input="{Binding}" property="AAS:Key:local"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Key:type"/>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:Key:idType"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleOperation.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleOperation.xwt
new file mode 100644
index 0000000..241a26d
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleOperation.xwt
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Operation:idShort"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleProperty.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleProperty.xwt
new file mode 100644
index 0000000..162cbe8
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleProperty.xwt
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:DataElement:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleRange.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleRange.xwt
new file mode 100644
index 0000000..11114e7
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleRange.xwt
@@ -0,0 +1,27 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:DataElement:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="2"/>
+                        </Composite.layout>
+                        <ppe:IntegerEditor input="{Binding}" property="AAS:Range:min"/>
+                        <ppe:IntegerEditor input="{Binding}" property="AAS:Range:max"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleRefereable.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleRefereable.xwt
new file mode 100644
index 0000000..c0e55ec
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleRefereable.xwt
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleReference.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleReference.xwt
new file mode 100644
index 0000000..6b2a113
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleReference.xwt
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:MultiReference input="{Binding}" property="AAS:Reference:key"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleReferenceElement.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleReferenceElement.xwt
new file mode 100644
index 0000000..1572246
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleReferenceElement.xwt
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:DataElement:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:ReferenceElement:value"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleRelationshipElement.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleRelationshipElement.xwt
new file mode 100644
index 0000000..b4bcef3
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleRelationshipElement.xwt
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSecurity.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSecurity.xwt
new file mode 100644
index 0000000..6fa8a32
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSecurity.xwt
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Security:accessControlPolicyPoints"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:MultiReference input="{Binding}" property="AAS:Security:certificate"/>
+                        <ppe:MultiReference input="{Binding}" property="AAS:Security:requiredCertificateExtension"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSubmodel.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSubmodel.xwt
new file mode 100644
index 0000000..ec2831e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSubmodel.xwt
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:EnumCombo input="{Binding}" property="AAS:HasKind:kind"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Identifiable:administration"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Identifiable:identification"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:MultiReference input="{Binding}" property="AAS:Submodel:submodelelement"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSubmodelElement.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSubmodelElement.xwt
new file mode 100644
index 0000000..b4bcef3
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSubmodelElement.xwt
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSubmodelElementCollection.xwt b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSubmodelElementCollection.xwt
new file mode 100644
index 0000000..bbe78ee
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/properties/ui/SingleSubmodelElementCollection.xwt
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="UTF-8"?><Composite xmlns="http://www.eclipse.org/xwt/presentation" xmlns:j="clr-namespace:java.lang" xmlns:ppe="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets" xmlns:ppel="clr-namespace:org.eclipse.papyrus.infra.properties.ui.widgets.layout" xmlns:x="http://www.eclipse.org/xwt">
+            <Composite.layout>
+                        <ppel:PropertiesLayout/>
+            </Composite.layout>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:StringEditor input="{Binding}" property="AAS:SubmodelElementCollection:idShort"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:category"/>
+                        <ppe:StringEditor input="{Binding}" property="AAS:Refereable:description"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:Refereable:parent"/>
+                        <ppe:ReferenceDialog input="{Binding}" property="AAS:HasSemantics:semanticId"/>
+            </Composite>
+            <Composite>
+                        <Composite.layout>
+                                    <ppel:PropertiesLayout numColumns="1"/>
+                        </Composite.layout>
+                        <ppe:MultiReference input="{Binding}" property="AAS:SubmodelElementCollection:value"/>
+            </Composite>
+</Composite>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/style/style.css b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/style/style.css
new file mode 100644
index 0000000..577bd18
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/style/style.css
@@ -0,0 +1,134 @@
+/*Class> Compartment[kind="attributes"]{
+	visible:true;
+	showTitle:true;
+}
+
+Class> Compartment[kind="operations"]{
+	visible:true;
+	showTitle:true;
+}
+Class> Compartment[kind="nestedclassifiers"]{
+	visible:false;
+	
+}*/
+Class>Compartment[type=StereotypeCompartment]{
+	visible:true;
+}
+[appliedStereotypes~="AAS::AssetAdministrationShell"] >Compartment[kind="attributes"]{
+	visible:false;
+	showTitle:false;
+	
+}
+[appliedStereotypes~="AAS::AssetAdministrationShell"] >Compartment[kind="operations"]{
+	visible:false;
+	showTitle:false;
+	
+}
+[appliedStereotypes~="AAS::AssetAdministrationShell"] >Compartment[kind="nestedclassifiers"]{
+	visible:false;
+	showTitle:false;
+}
+[appliedStereotypes~="AAS::Entity"] >Compartment[kind="attributes"]{
+	visible:false;
+	showTitle:false;
+}
+[appliedStereotypes~="AAS::Entity"] >Compartment[kind="operations"]{
+	visible:false;
+	showTitle:false;
+}
+[appliedStereotypes~="AAS::Entity"] >Compartment[kind="nestedclassifiers"]{
+	visible:false;
+	showTitle:false;
+}
+[appliedStereotypes~="AAS::Asset"] >Compartment[kind="attributes"]{
+	visible:false;
+	showTitle:false;
+}
+[appliedStereotypes~="AAS::Asset"] >Compartment[kind="operations"]{
+	visible:false;
+	showTitle:false;
+}
+[appliedStereotypes~="AAS::Asset"] >Compartment[kind="nestedclassifiers"]{
+	visible:false;
+	showTitle:false;
+}
+[appliedStereotypes~="AAS::Submodel"] >Compartment[kind="attributes"]{
+	visible:true;
+	showTitle:true;
+	
+}
+[appliedStereotypes~="AAS::Submodel"] >Compartment[kind="operations"]{
+	visible:true;
+	showTitle:true;
+	
+}
+[appliedStereotypes~="AAS::Submodel"] >Compartment[kind="nestedclassifiers"]{
+	visible:false;
+	showTitle:false;
+}
+[appliedStereotypes~="AAS::Submodel"] {
+	canonical:true;
+}
+[appliedStereotypes~="AAS::SubmodelElementCollection"] >Compartment[kind="attributes"]{
+	visible:true;
+	showTitle:true;
+	
+}
+[appliedStereotypes~="AAS::SubmodelElementCollection"] >Compartment[kind="operations"]{
+	visible:true;
+	showTitle:true;
+	
+}
+[appliedStereotypes~="AAS::SubmodelElementCollection"] >Compartment[kind="nestedclassifiers"]{
+	visible:false;
+	showTitle:false;
+}
+[appliedStereotypes~="AAS::SubmodelElementCollection"] >Compartment[type=StereotypeCompartment]{
+	visible:false;
+}
+[appliedStereotypes~="AAS::SubmodelElementCollection"] {
+	canonical:true;
+}
+
+[appliedStereotypes~="AAS::SubmodelElementCollection"] {
+	maskLabel: name ;
+}
+[appliedStereotypes~="AAS::File"] {
+	maskLabel: name ;
+}
+[appliedStereotypes~="AAS::Capability"] {
+	maskLabel: name ;
+}
+[appliedStereotypes~="AAS::ReferenceElement"] {
+	maskLabel: name ;
+}
+[appliedStereotypes~="AAS::Property"] {
+	maskLabel: name type;
+}
+Property {
+	maskLabel: name type;
+}
+
+Operation > Label[type=StereotypeLabel]{
+      visible: false
+}
+Association > Label:sourceMultiplicity {
+	visible:false;
+}
+
+Association > Label:targetMultiplicity {
+	visible:false;
+}
+
+Association > Label:sourceRole {
+	visible:false;
+}
+
+Association > Label:targetRole {
+	visible:false;
+}
+
+Association > Label:name {
+	visible:true;
+}
+
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/template/FESTO-Demonstrator.di b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/template/FESTO-Demonstrator.di
new file mode 100644
index 0000000..8fbacc4
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/template/FESTO-Demonstrator.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.aas.ml"/>
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/template/FESTO-Demonstrator.notation b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/template/FESTO-Demonstrator.notation
new file mode 100644
index 0000000..f3d4d53
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/template/FESTO-Demonstrator.notation
@@ -0,0 +1,1443 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">

+  <notation:Diagram xmi:id="_AD5DULs2EeqdpOpFTAVDtA" type="PapyrusUMLClassDiagram" name="FESTO demonstrator AAS" measurementUnit="Pixel">

+    <children xmi:type="notation:Shape" xmi:id="_QIOpoLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_QIP3wLs2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_QIP3wbs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_QIP3wrs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_QIP3w7s2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_QIP3xLs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_QIP3xbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QIP3xrs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIP3x7s2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_QIQe0Ls2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_QIQe0bs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_QIQe0rs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QIQe07s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIQe1Ls2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_QIRF4Ls2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_QIRF4bs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_QIRF4rs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QIRF47s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIRF5Ls2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QHzL0Ls2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIOpobs2EeqdpOpFTAVDtA" x="80" y="80" width="281"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_QIkA0Ls2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_QIkA0bs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_QIkA07s2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QHzL0Ls2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QIkA0rs2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_QraPMLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Qra2QLs2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Qra2Qbs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Qra2Qrs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Qra2Q7s2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Qra2RLs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Qra2Rbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Qra2Rrs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qra2R7s2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Qra2SLs2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Qra2Sbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Qra2Srs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Qra2S7s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qra2TLs2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Qra2Tbs2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Qra2Trs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Qra2T7s2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Qra2ULs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qra2Ubs2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QrUvoLs2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QraPMbs2EeqdpOpFTAVDtA" x="400" y="80" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Qrl1YLs2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Qrl1Ybs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Qrl1Y7s2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QrUvoLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Qrl1Yrs2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Q-82QLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Q--EYLs2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Q--rcLs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Q--rcbs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Q-_SgLs2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Q-_Sgbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Q-_Sgrs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Q-_Sg7s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-_ShLs2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Q-_Shbs2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Q-_Shrs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Q-_Sh7s2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Q-_SiLs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-_Sibs2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Q-_5kLs2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Q-_5kbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Q-_5krs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Q-_5k7s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-_5lLs2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Q-sXkLs2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q-82Qbs2EeqdpOpFTAVDtA" x="720" y="80" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Q_b-cLs2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Q_b-cbs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Q_b-c7s2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Q-sXkLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Q_b-crs2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_RenNwLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Ren00Ls2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Ren00bs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Ren00rs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Ren007s2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Reob4Ls2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Reob4bs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Reob4rs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Reob47s2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Reob5Ls2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Reob5bs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Reob5rs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Reob57s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Reob6Ls2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Reob6bs2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Reob6rs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Reob67s2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Reob7Ls2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Reob7bs2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ReZyYLs2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RenNwbs2EeqdpOpFTAVDtA" x="80" y="1300" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Re6vw7s2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Re6vxLs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Re7W0Ls2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ReZyYLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Re6vxbs2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_SG-OQLs2EeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_SG-1ULs2EeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_SG-1Ubs2EeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_SG-1Urs2EeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_SG-1U7s2EeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_SG-1VLs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_SG-1Vbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_SG-1Vrs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SG-1V7s2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_SG-1WLs2EeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_SG-1Wbs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_SG-1Wrs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_SG-1W7s2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SG-1XLs2EeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_SG-1Xbs2EeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_SG-1Xrs2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_SG-1X7s2EeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_SG-1YLs2EeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SG-1Ybs2EeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_SG580Ls2EeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SG-OQbs2EeqdpOpFTAVDtA" x="80" y="500" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_SHHYNbs2EeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_SHHYNrs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_SHH_QLs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_SG580Ls2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_SHHYN7s2EeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Wb2QELtzEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Wb2QErtzEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Wb2QE7tzEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Wb2QFLtzEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Wb2QFbtzEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Wb2QFrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Wb2QF7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Wb2QGLtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb23ILtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Wb23IbtzEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Wb23IrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Wb23I7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Wb23JLtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb23JbtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Wb23JrtzEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Wb23J7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Wb23KLtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Wb23KbtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb23KrtzEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_WbzMwLtzEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb2QEbtzEeqdpOpFTAVDtA" x="80" y="880" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Wb7vo7tzEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Wb7vpLtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Wb7vprtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_WbzMwLtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wb7vpbtzEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_XV42cLtzEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_XV5dgLtzEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_XV5dgbtzEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_XV5dgrtzEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_XV5dg7tzEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_XV5dhLtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_XV5dhbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_XV5dhrtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV5dh7tzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_XV5diLtzEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_XV5dibtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_XV5dirtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_XV5di7tzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV5djLtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_XV5djbtzEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_XV5djrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_XV5dj7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_XV5dkLtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV5dkbtzEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_XV2aMLtzEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV42cbtzEeqdpOpFTAVDtA" x="400" y="880" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_XV-WCbtzEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_XV-WCrtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_XV-WDLtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_XV2aMLtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_XV-WC7tzEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_X5mngLtzEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_X5nOkLtzEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_X5nOkbtzEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_X5nOkrtzEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_X5nOk7tzEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_X5nOlLtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_X5nOlbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_X5nOlrtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5nOl7tzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_X5nOmLtzEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_X5nOmbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_X5nOmrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_X5nOm7tzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5nOnLtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_X5nOnbtzEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_X5nOnrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_X5nOn7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_X5nOoLtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5nOobtzEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_X5hH8LtzEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5mngbtzEeqdpOpFTAVDtA" x="720" y="880" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_X5t8Q7tzEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_X5t8RLtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_X5t8RrtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_X5hH8LtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_X5t8RbtzEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_lD10MLtzEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_lD2bQLtzEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_lD2bQbtzEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_lD2bQrtzEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_lD2bQ7tzEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_lD2bRLtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_lD2bRbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_lD2bRrtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD2bR7tzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_lD2bSLtzEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_lD2bSbtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_lD2bSrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_lD2bS7tzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD2bTLtzEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_lD2bTbtzEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_lD2bTrtzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_lD2bT7tzEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_lD2bULtzEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD2bUbtzEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_lDz_ALtzEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD10MbtzEeqdpOpFTAVDtA" x="400" y="1300" width="261"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_lD6FoLtzEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_lD6FobtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_lD6Fo7tzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_lDz_ALtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_lD6FortzEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <styles xmi:type="notation:StringValueStyle" xmi:id="_AD5DUbs2EeqdpOpFTAVDtA" name="diagram_compatibility_version" stringValue="1.4.0"/>

+    <styles xmi:type="notation:DiagramStyle" xmi:id="_AD5DUrs2EeqdpOpFTAVDtA"/>

+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_AD5DU7s2EeqdpOpFTAVDtA" diagramKindId="org.eclipse.papyrus.aas.design.diagram">

+      <owner xmi:type="uml:Package" href="FESTO-Demonstrator.uml#_mO1PYLttEeqdpOpFTAVDtA"/>

+    </styles>

+    <element xmi:type="uml:Model" href="FESTO-Demonstrator.uml#_3KYE8Ls1EeqdpOpFTAVDtA"/>

+    <edges xmi:type="notation:Connector" xmi:id="_QIkA1Ls2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_QIOpoLs2EeqdpOpFTAVDtA" target="_QIkA0Ls2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_QIkA1bs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_QIkA2bs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QHzL0Ls2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QIkA1rs2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QIkA17s2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_QIkA2Ls2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Qrl1ZLs2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_QraPMLs2EeqdpOpFTAVDtA" target="_Qrl1YLs2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Qrl1Zbs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Qrl1abs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_QrUvoLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Qrl1Zrs2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qrl1Z7s2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qrl1aLs2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Q_clgLs2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Q-82QLs2EeqdpOpFTAVDtA" target="_Q_b-cLs2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Q_clgbs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Q_dMkLs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Q-sXkLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Q_clgrs2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Q_clg7s2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Q_clhLs2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Re7W0bs2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_RenNwLs2EeqdpOpFTAVDtA" target="_Re6vw7s2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Re7W0rs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Re7W1rs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ReZyYLs2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Re7W07s2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Re7W1Ls2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Re7W1bs2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_SHH_Qbs2EeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_SG-OQLs2EeqdpOpFTAVDtA" target="_SHHYNbs2EeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_SHH_Qrs2EeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_SHH_Rrs2EeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_SG580Ls2EeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SHH_Q7s2EeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SHH_RLs2EeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SHH_Rbs2EeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Wb7vp7tzEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Wb2QELtzEeqdpOpFTAVDtA" target="_Wb7vo7tzEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Wb7vqLtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Wb7vrLtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_WbzMwLtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Wb7vqbtzEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Wb7vqrtzEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Wb7vq7tzEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_XV-9ELtzEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_XV42cLtzEeqdpOpFTAVDtA" target="_XV-WCbtzEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_XV-9EbtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_XV-9FbtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_XV2aMLtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_XV-9ErtzEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XV-9E7tzEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_XV-9FLtzEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_X5t8R7tzEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_X5mngLtzEeqdpOpFTAVDtA" target="_X5t8Q7tzEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_X5t8SLtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_X5t8TLtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_X5hH8LtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_X5t8SbtzEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_X5t8SrtzEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_X5t8S7tzEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_lD6FpLtzEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_lD10MLtzEeqdpOpFTAVDtA" target="_lD6FoLtzEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_lD6FpbtzEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_lD6FqbtzEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_lDz_ALtzEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lD6FprtzEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lD6Fp7tzEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_lD6FqLtzEeqdpOpFTAVDtA"/>

+    </edges>

+  </notation:Diagram>

+  <notation:Diagram xmi:id="_HfJ7ALs2EeqdpOpFTAVDtA" type="PapyrusUMLClassDiagram" name="FESTO demonstrator Assets" measurementUnit="Pixel">

+    <children xmi:type="notation:Shape" xmi:id="_gcak0LttEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_gcjuwLttEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_gcjuwbttEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_gcjuwrttEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_gck84LttEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_gck84bttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_gck84rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gck847ttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gck85LttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_gclj8LttEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_gclj8bttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_gclj8rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gclj87ttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gclj9LttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_gcmLALttEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_gcmLAbttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_gcmLArttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_gcmLA7ttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gcmLBLttEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ga0pYLttEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gcak0bttEeqdpOpFTAVDtA" x="80" y="40" width="241"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_gdj0ULttEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_gdj0UbttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_gdkbYLttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ga0pYLttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_gdj0UrttEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_yuIBoLttEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_yuIBorttEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_yuIBo7ttEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_yuIosLttEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_yuIosbttEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_yuIosrttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_yuIos7ttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_yuIotLttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuIotbttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_yuIotrttEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_yuIot7ttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_yuIouLttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_yuIoubttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuIourttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_yuIou7ttEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_yuIovLttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_yuIovbttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_yuIovrttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuIov7ttEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_yuB7ALttEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuIBobttEeqdpOpFTAVDtA" x="360" y="40" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_yuRyo7ttEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_yuRypLttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_yuRyprttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_yuB7ALttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_yuRypbttEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_-ZsQ4LttEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_-ZsQ4rttEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_-ZsQ47ttEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_-ZsQ5LttEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_-ZsQ5bttEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_-ZsQ5rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_-ZsQ57ttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_-ZsQ6LttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-ZsQ6bttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_-Zs38LttEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_-Zs38bttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_-Zs38rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_-Zs387ttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-Zs39LttEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_-Zs39bttEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_-Zs39rttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_-Zs397ttEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_-Zs3-LttEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-Zs3-bttEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_-ZbLILttEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-ZsQ4bttEeqdpOpFTAVDtA" x="580" y="40" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_-Z1a07ttEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_-Z1a1LttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-Z1a1rttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_-ZbLILttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_-Z1a1bttEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Cj-gALtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Cj-gArtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Cj-gA7tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Cj-gBLtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Cj-gBbtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Cj-gBrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Cj-gB7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Cj-gCLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cj-gCbtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Cj-gCrtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Cj-gC7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Cj-gDLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Cj-gDbtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cj-gDrtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Cj_HELtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Cj_HEbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Cj_HErtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Cj_HE7tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cj_HFLtuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Cj5AcLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Cj-gAbtuEeqdpOpFTAVDtA" x="80" y="400" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_CkEmoLtuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_CkEmobtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_CkEmo7tuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Cj5AcLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CkEmortuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_JtNzkLtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_JtNzkrtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_JtNzk7tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_JtNzlLtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_JtNzlbtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_JtNzlrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_JtNzl7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JtNzmLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtNzmbtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_JtNzmrtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_JtNzm7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_JtNznLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JtNznbtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtNznrtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_JtNzn7tuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_JtNzoLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_JtNzobtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JtNzortuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtNzo7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_JtI7ELtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtNzkbtuEeqdpOpFTAVDtA" x="320" y="400" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_JtVvY7tuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_JtVvZLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_JtVvZrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_JtI7ELtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtVvZbtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_J8ha4LtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_J8ha4rtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_J8iB8LtuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_J8iB8btuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_J8iB8rtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_J8iB87tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_J8iB9LtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_J8iB9btuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8iB9rtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_J8iB97tuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_J8iB-LtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_J8iB-btuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_J8iB-rtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8iB-7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_J8iB_LtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_J8iB_btuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_J8iB_rtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_J8iB_7tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8iCALtuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_J8eXkLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8ha4btuEeqdpOpFTAVDtA" x="560" y="400" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_J8mTY7tuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_J8mTZLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_J8mTZrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_J8eXkLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_J8mTZbtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Ks35wLtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Ks35wrtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Ks35w7tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Ks35xLtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Ks35xbtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Ks35xrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Ks35x7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Ks35yLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks35ybtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Ks35yrtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Ks35y7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Ks35zLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Ks35zbtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks35zrtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Ks35z7tuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Ks350LtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Ks350btuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Ks350rtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks3507tuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Ks1dgLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks35wbtuEeqdpOpFTAVDtA" x="800" y="400" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Ks8yQLtuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Ks8yQbtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Ks8yQ7tuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Ks1dgLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ks8yQrtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_K54bALtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_K54bArtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_K54bA7tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_K54bBLtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_K54bBbtuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_K54bBrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_K54bB7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_K54bCLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K54bCbtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_K54bCrtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_K54bC7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_K54bDLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_K54bDbtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K54bDrtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_K54bD7tuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_K54bELtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_K54bEbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_K54bErtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K54bE7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_K51-wLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K54bAbtuEeqdpOpFTAVDtA" x="320" y="760" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_K58sdbtuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_K58sdrtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_K58seLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_K51-wLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_K58sd7tuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_LFJ24LtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_LFJ24rtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_LFJ247tuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_LFJ25LtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_LFJ25btuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_LFJ25rtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_LFJ257tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_LFJ26LtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFJ26btuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_LFJ26rtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_LFJ267tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_LFJ27LtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_LFJ27btuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFJ27rtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_LFKd8LtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_LFKd8btuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_LFKd8rtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_LFKd87tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFKd9LtuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_LFHaoLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFJ24btuEeqdpOpFTAVDtA" x="80" y="760" width="181"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_LFOvY7tuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_LFOvZLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_LFOvZrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_LFHaoLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LFOvZbtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <styles xmi:type="notation:StringValueStyle" xmi:id="_HfJ7Abs2EeqdpOpFTAVDtA" name="diagram_compatibility_version" stringValue="1.4.0"/>

+    <styles xmi:type="notation:DiagramStyle" xmi:id="_HfJ7Ars2EeqdpOpFTAVDtA"/>

+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_HfJ7A7s2EeqdpOpFTAVDtA" diagramKindId="org.eclipse.papyrus.aas.design.diagram">

+      <owner xmi:type="uml:Package" href="FESTO-Demonstrator.uml#_oby2MLttEeqdpOpFTAVDtA"/>

+    </styles>

+    <element xmi:type="uml:Model" href="FESTO-Demonstrator.uml#_3KYE8Ls1EeqdpOpFTAVDtA"/>

+    <edges xmi:type="notation:Connector" xmi:id="_gdlCcLttEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_gcak0LttEeqdpOpFTAVDtA" target="_gdj0ULttEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_gdlCcbttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_gdmQkrttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_ga0pYLttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gdlCcrttEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gdmQkLttEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gdmQkbttEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_yuRyp7ttEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_yuIBoLttEeqdpOpFTAVDtA" target="_yuRyo7ttEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_yuRyqLttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_yuSZsLttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_yuB7ALttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_yuRyqbttEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yuRyqrttEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_yuRyq7ttEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_-Z2B4LttEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_-ZsQ4LttEeqdpOpFTAVDtA" target="_-Z1a07ttEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_-Z2B4bttEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_-Z2B5bttEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_-ZbLILttEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_-Z2B4rttEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-Z2B47ttEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_-Z2B5LttEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_CkEmpLtuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Cj-gALtuEeqdpOpFTAVDtA" target="_CkEmoLtuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_CkEmpbtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_CkEmqbtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Cj5AcLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CkEmprtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CkEmp7tuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CkEmqLtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_JtVvZ7tuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_JtNzkLtuEeqdpOpFTAVDtA" target="_JtVvY7tuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_JtVvaLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_JtVvbLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_JtI7ELtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JtVvabtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JtVvartuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JtVva7tuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_J8mTZ7tuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_J8ha4LtuEeqdpOpFTAVDtA" target="_J8mTY7tuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_J8mTaLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_J8mTbLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_J8eXkLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_J8mTabtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J8mTartuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J8mTa7tuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Ks8yRLtuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Ks35wLtuEeqdpOpFTAVDtA" target="_Ks8yQLtuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Ks8yRbtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Ks8ySbtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Ks1dgLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ks8yRrtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ks8yR7tuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ks8ySLtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_K58sebtuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_K54bALtuEeqdpOpFTAVDtA" target="_K58sdbtuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_K58sertuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_K58sfrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_K51-wLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_K58se7tuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_K58sfLtuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_K58sfbtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_LFOvZ7tuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_LFJ24LtuEeqdpOpFTAVDtA" target="_LFOvY7tuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_LFOvaLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_LFOvbLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_LFHaoLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LFOvabtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LFOvartuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LFOva7tuEeqdpOpFTAVDtA"/>

+    </edges>

+  </notation:Diagram>

+  <notation:Diagram xmi:id="_L4ersLs2EeqdpOpFTAVDtA" type="PapyrusUMLClassDiagram" name="FESTO demonstrator Submodels" measurementUnit="Pixel">

+    <children xmi:type="notation:Shape" xmi:id="_wcybsLtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_wczCwLtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_wczCwbtuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_wczCwrtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wczCw7tuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_T8c80LtwEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_T8QvkLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_T8c80btwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wczCxLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wczCxbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wczCxrtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wczCx7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wczCyLtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_bwGfULtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_bv9VYLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_bwGfUbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wczCybtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wczCyrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wczCy7tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wczCzLtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wczCzbtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wczCzrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wczCz7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wczC0LtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wczC0btuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wcwmgLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wcybsbtuEeqdpOpFTAVDtA" x="420" y="40" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_wc7lqbtuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_wc7lqrtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wc8MsLtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wcwmgLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wc7lq7tuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_6gpGQLtuEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_6gptULtuEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_6gptUbtuEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_6gptUrtuEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_6gptU7tuEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_zx12gLtvEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_zxkwwLtvEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_zx12gbtvEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_6gptVLtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_6gptVbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_6gptVrtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gptV7tuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_6gptWLtuEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_8kafYLtvEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_8kG9YLtvEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_8kafYbtvEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_6gptWbtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_6gptWrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_6gptW7tuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gptXLtuEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_6gptXbtuEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_6gptXrtuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_6gptX7tuEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_6gptYLtuEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gptYbtuEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_6gi_oLtuEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gpGQbtuEeqdpOpFTAVDtA" x="780" y="40" width="281" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_6gxCF7tuEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_6gxCGLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_6gxCGrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_6gi_oLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_6gxCGbtuEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_hetA4LtwEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_hetn8LtwEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_hetn8btwEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_hetn8rtwEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_hetn87twEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_iP_68LtwEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_iPwDULtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_iP_68btwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_hetn9LtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_hetn9btwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_hetn9rtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hetn97twEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_hetn-LtwEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_jqUj4LtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_jqKL0LtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_jqUj4btwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_j6dRoLtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_j6XLALtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_j6dRobtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kErkoLtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kEk28LtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kErkobtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kOiEMLtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kOavcLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kOiEMbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kY1PsLtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kYq3oLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kY1PsbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_hetn-btwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_hetn-rtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_hetn-7twEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hetn_LtwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_hetn_btwEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_hetn_rtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_hetn_7twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_hetoALtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hetoAbtwEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_heqkoLtwEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hetA4btwEeqdpOpFTAVDtA" x="40" y="40" width="301" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_he0VrbtwEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_he0VrrtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_he08sLtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_heqkoLtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_he0Vr7twEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_wV2bULtwEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_wV2bUrtwEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_wV2bU7twEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_wV2bVLtwEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wV2bVbtwEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_xnfCULtwEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_xnPKsLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xnfCUbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_xztgcLtwEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_xznZ0LtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_xztgcbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wV2bVrtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wV2bV7twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wV2bWLtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV2bWbtwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wV3CYLtwEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_y9NfILtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_y9HYgLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_y9NfIbtwEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_zkOb0LtwEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_zkCOkLtwEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_zkOb0btwEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wV3CYbtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wV3CYrtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wV3CY7twEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV3CZLtwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_wV3CZbtwEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_wV3CZrtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_wV3CZ7twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_wV3CaLtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV3CabtwEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wVzYALtwEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV2bUbtwEeqdpOpFTAVDtA" x="40" y="600" width="301" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_wV-XK7twEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_wV-XLLtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wV-XLrtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wVzYALtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wV-XLbtwEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_92CC0LtwEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_92CC0rtwEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_92CC07twEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_92CC1LtwEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_92CC1btwEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_Abm98LtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_AbebELtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Abm98btxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_Cse0YLtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_CsXfoLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Cse0YbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_92CC1rtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_92CC17twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_92CC2LtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92CC2btwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_92CC2rtwEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_KiV9YLtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_KiP2wLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_KiV9YbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_KxsA8LtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_Kxl6ULtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_KxsA8btxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_LXYvALtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_LXTPcLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_LXYvAbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_92CC27twEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_92CC3LtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_92CC3btwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92CC3rtwEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_92CC37twEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_92CC4LtwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_92CC4btwEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_92CC4rtwEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92CC47twEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_91_mkLtwEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92CC0btwEeqdpOpFTAVDtA" x="420" y="600" width="281" height="500"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_92HiYLtwEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_92HiYbtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_92HiY7twEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_91_mkLtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_92HiYrtwEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Y8ddkLtxEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Y8ddkrtxEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Y8ddk7txEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Y8ddlLtxEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Y8ddlbtxEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_eY7tULtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_eYwuMLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_eY7tUbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_fSImMLtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_fSB4gLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_fSImMbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Y8ddlrtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Y8ddl7txEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Y8ddmLtxEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8ddmbtxEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Y8eEoLtxEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_jfTKMLtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_jfMcgLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_jfTKMbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kLp54LtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kLjMMLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kLp54btxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kXU-YLtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kXO3wLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kXU-YbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_kiz1oLtxEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_kitH8LtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_kiz1obtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Y8eEobtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Y8eEortxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Y8eEo7txEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8eEpLtxEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Y8eEpbtxEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Y8eEprtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Y8eEp7txEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Y8eEqLtxEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8eEqbtxEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Y8ZzMLtxEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8ddkbtxEeqdpOpFTAVDtA" x="780" y="600" width="281" height="501"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Y8kyU7txEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Y8kyVLtxEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y8kyVrtxEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Y8ZzMLtxEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Y8kyVbtxEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_41nAcLtxEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_41nAcrtxEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_41nAc7txEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_41nAdLtxEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_41nAdbtxEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_6RJKULtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_6RAAYLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_6RJKUbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_6ezy4LtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_6euTULtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_6ezy4btxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_7OjNwLtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_7ObR8LtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_7OjNwbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_7cZcgLtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_7cPrgLtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_7cZcgbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_8EKAELtxEeqdpOpFTAVDtA" type="Property_ClassAttributeLabel">

+          <element xmi:type="uml:Property" href="FESTO-Demonstrator.uml#_8EA2ILtxEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_8EKAEbtxEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_41nAdrtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_41nAd7txEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_41nAeLtxEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41nAebtxEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_41nngLtxEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <children xmi:type="notation:Shape" xmi:id="_Cl6c4LtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_Clu2sLtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_Cl6c4btyEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_CytiwLtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_CyncILtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_CytiwbtyEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_C9Zv0LtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_C9TpMLtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_C9Zv0btyEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_DIQU8LtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_DIJnQLtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_DIQU8btyEeqdpOpFTAVDtA"/>

+        </children>

+        <children xmi:type="notation:Shape" xmi:id="_DT154LtyEeqdpOpFTAVDtA" type="Operation_ClassOperationLabel">

+          <element xmi:type="uml:Operation" href="FESTO-Demonstrator.uml#_DTvzQLtyEeqdpOpFTAVDtA"/>

+          <layoutConstraint xmi:type="notation:Location" xmi:id="_DT154btyEeqdpOpFTAVDtA"/>

+        </children>

+        <styles xmi:type="notation:TitleStyle" xmi:id="_41nngbtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_41nngrtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_41nng7txEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41nnhLtxEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_41nnhbtxEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_41nnhrtxEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_41nnh7txEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_41nniLtxEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41nnibtxEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_41kkMLtxEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41nAcbtxEeqdpOpFTAVDtA" x="1140" y="300"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_41sgA7txEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_41sgBLtxEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_41sgBrtxEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_41kkMLtxEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_41sgBbtxEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Pu0M0LtyEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Pu0M0rtyEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Pu0z4LtyEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Pu0z4btyEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Pu0z4rtyEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Pu0z47tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Pu0z5LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Pu0z5btyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu0z5rtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Pu0z57tyEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Pu0z6LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Pu0z6btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Pu0z6rtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu0z67tyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Pu0z7LtyEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Pu0z7btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Pu0z7rtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Pu0z77tyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu0z8LtyEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_PuyXoLtyEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu0M0btyEeqdpOpFTAVDtA" x="40" y="1160" width="301" height="441"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Pu5sa7tyEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Pu5sbLtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Pu5sbrtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_PuyXoLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Pu5sbbtyEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Rw0g0LtyEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_Rw0g0rtyEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Rw0g07tyEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Rw0g1LtyEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Rw0g1btyEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Rw0g1rtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Rw0g17tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Rw0g2LtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw0g2btyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Rw0g2rtyEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Rw0g27tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Rw0g3LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Rw0g3btyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw0g3rtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Rw0g37tyEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Rw0g4LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Rw0g4btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Rw0g4rtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw0g47tyEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_RwxdgLtyEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw0g0btyEeqdpOpFTAVDtA" x="420" y="1160" width="281" height="440"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Rw6AYLtyEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_Rw6AYbtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Rw6AY7tyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_RwxdgLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Rw6AYrtyEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_UOMiMLtyEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_UOMiMrtyEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_UOMiM7tyEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_UOMiNLtyEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_UOMiNbtyEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_UOMiNrtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_UOMiN7tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_UOMiOLtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOMiObtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_UOMiOrtyEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_UOMiO7tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_UOMiPLtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_UOMiPbtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOMiPrtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_UOMiP7tyEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_UOMiQLtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_UOMiQbtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_UOMiQrtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOMiQ7tyEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_UOKF8LtyEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOMiMbtyEeqdpOpFTAVDtA" x="40" y="1660" width="301" height="421"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_UOSo07tyEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_UOSo1LtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_UOSo1rtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_UOKF8LtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_UOSo1btyEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_VgsE0LtyEeqdpOpFTAVDtA" type="Class_Shape">

+      <children xmi:type="notation:DecorationNode" xmi:id="_VgsE0rtyEeqdpOpFTAVDtA" type="Class_NameLabel"/>

+      <children xmi:type="notation:DecorationNode" xmi:id="_Vgsr4LtyEeqdpOpFTAVDtA" type="Class_FloatingNameLabel">

+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Vgsr4btyEeqdpOpFTAVDtA" y="15"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Vgsr4rtyEeqdpOpFTAVDtA" type="Class_AttributeCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Vgsr47tyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Vgsr5LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Vgsr5btyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vgsr5rtyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Vgsr57tyEeqdpOpFTAVDtA" type="Class_OperationCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Vgsr6LtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Vgsr6btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Vgsr6rtyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vgsr67tyEeqdpOpFTAVDtA"/>

+      </children>

+      <children xmi:type="notation:BasicCompartment" xmi:id="_Vgsr7LtyEeqdpOpFTAVDtA" type="Class_NestedClassifierCompartment">

+        <styles xmi:type="notation:TitleStyle" xmi:id="_Vgsr7btyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:SortingStyle" xmi:id="_Vgsr7rtyEeqdpOpFTAVDtA"/>

+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Vgsr77tyEeqdpOpFTAVDtA"/>

+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Vgsr8LtyEeqdpOpFTAVDtA"/>

+      </children>

+      <element xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_VgqPoLtyEeqdpOpFTAVDtA"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VgsE0btyEeqdpOpFTAVDtA" x="420" y="1660" width="281" height="421"/>

+    </children>

+    <children xmi:type="notation:Shape" xmi:id="_Vgyyg7tyEeqdpOpFTAVDtA" type="StereotypeComment">

+      <styles xmi:type="notation:TitleStyle" xmi:id="_VgyyhLtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VgyyhrtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_VgqPoLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VgyyhbtyEeqdpOpFTAVDtA" x="200"/>

+    </children>

+    <styles xmi:type="notation:StringValueStyle" xmi:id="_L4ersbs2EeqdpOpFTAVDtA" name="diagram_compatibility_version" stringValue="1.4.0"/>

+    <styles xmi:type="notation:DiagramStyle" xmi:id="_L4ersrs2EeqdpOpFTAVDtA"/>

+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_L4ers7s2EeqdpOpFTAVDtA" diagramKindId="org.eclipse.papyrus.aas.design.diagram">

+      <owner xmi:type="uml:Package" href="FESTO-Demonstrator.uml#_otlw0LttEeqdpOpFTAVDtA"/>

+    </styles>

+    <element xmi:type="uml:Model" href="FESTO-Demonstrator.uml#_3KYE8Ls1EeqdpOpFTAVDtA"/>

+    <edges xmi:type="notation:Connector" xmi:id="_wc8MsbtuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_wcybsLtuEeqdpOpFTAVDtA" target="_wc7lqbtuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_wc8MsrtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wc8MtrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wcwmgLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wc8Ms7tuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wc8MtLtuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wc8MtbtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_6gxCG7tuEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_6gpGQLtuEeqdpOpFTAVDtA" target="_6gxCF7tuEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_6gxCHLtuEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_6gxpIrtuEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_6gi_oLtuEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_6gxCHbtuEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6gxpILtuEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_6gxpIbtuEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_he08sbtwEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_hetA4LtwEeqdpOpFTAVDtA" target="_he0VrbtwEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_he08srtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_he08trtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_heqkoLtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_he08s7twEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_he08tLtwEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_he08tbtwEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_wV--MLtwEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_wV2bULtwEeqdpOpFTAVDtA" target="_wV-XK7twEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_wV--MbtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wV--NbtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_wVzYALtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wV--MrtwEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wV--M7twEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wV--NLtwEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_92HiZLtwEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_92CC0LtwEeqdpOpFTAVDtA" target="_92HiYLtwEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_92HiZbtwEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_92HiabtwEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_91_mkLtwEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_92HiZrtwEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_92HiZ7twEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_92HiaLtwEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Y8lZYLtxEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Y8ddkLtxEeqdpOpFTAVDtA" target="_Y8kyU7txEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Y8lZYbtxEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Y8lZZbtxEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_Y8ZzMLtxEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Y8lZYrtxEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y8lZY7txEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Y8lZZLtxEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_41tHELtxEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_41nAcLtxEeqdpOpFTAVDtA" target="_41sgA7txEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_41tHEbtxEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_41tHFbtxEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_41kkMLtxEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_41tHErtxEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_41tHE7txEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_41tHFLtxEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Pu5sb7tyEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Pu0M0LtyEeqdpOpFTAVDtA" target="_Pu5sa7tyEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Pu5scLtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Pu6TcLtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_PuyXoLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Pu5scbtyEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Pu5scrtyEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Pu5sc7tyEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Rw6AZLtyEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_Rw0g0LtyEeqdpOpFTAVDtA" target="_Rw6AYLtyEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_Rw6AZbtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Rw6AabtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_RwxdgLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Rw6AZrtyEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Rw6AZ7tyEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Rw6AaLtyEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_UOTP4LtyEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_UOMiMLtyEeqdpOpFTAVDtA" target="_UOSo07tyEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_UOTP4btyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_UOTP5btyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_UOKF8LtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_UOTP4rtyEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UOTP47tyEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UOTP5LtyEeqdpOpFTAVDtA"/>

+    </edges>

+    <edges xmi:type="notation:Connector" xmi:id="_Vgyyh7tyEeqdpOpFTAVDtA" type="StereotypeCommentLink" source="_VgsE0LtyEeqdpOpFTAVDtA" target="_Vgyyg7tyEeqdpOpFTAVDtA">

+      <styles xmi:type="notation:FontStyle" xmi:id="_VgyyiLtyEeqdpOpFTAVDtA"/>

+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VgyyjLtyEeqdpOpFTAVDtA" name="BASE_ELEMENT">

+        <eObjectValue xmi:type="uml:Class" href="FESTO-Demonstrator.uml#_VgqPoLtyEeqdpOpFTAVDtA"/>

+      </styles>

+      <element xsi:nil="true"/>

+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VgyyibtyEeqdpOpFTAVDtA" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>

+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VgyyirtyEeqdpOpFTAVDtA"/>

+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Vgyyi7tyEeqdpOpFTAVDtA"/>

+    </edges>

+  </notation:Diagram>

+</xmi:XMI>

diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/template/FESTO-Demonstrator.uml b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/template/FESTO-Demonstrator.uml
new file mode 100644
index 0000000..b84bc1e
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/resources/template/FESTO-Demonstrator.uml
@@ -0,0 +1,120 @@
+<?xml version="1.0" encoding="UTF-8"?>

+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:AAS="http://www.eclipse.org/papyrus/AAS" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML">

+  <uml:Model xmi:id="_3KYE8Ls1EeqdpOpFTAVDtA" name="FESTO-Demonstrator">

+    <packageImport xmi:type="uml:PackageImport" xmi:id="_3dHawLs1EeqdpOpFTAVDtA">

+      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>

+    </packageImport>

+    <packagedElement xmi:type="uml:Package" xmi:id="_mO1PYLttEeqdpOpFTAVDtA" name="AAS">

+      <packagedElement xmi:type="uml:Class" xmi:id="_QHzL0Ls2EeqdpOpFTAVDtA" name="AASProductionSystem"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_QrUvoLs2EeqdpOpFTAVDtA" name="AASWorkStation"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_Q-sXkLs2EeqdpOpFTAVDtA" name="AASMaterialStorage"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_ReZyYLs2EeqdpOpFTAVDtA" name="AASLidar"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_SG580Ls2EeqdpOpFTAVDtA" name="AASAGV"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_WbzMwLtzEeqdpOpFTAVDtA" name="AASCobot"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_XV2aMLtzEeqdpOpFTAVDtA" name="AASGripper"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_X5hH8LtzEeqdpOpFTAVDtA" name="AASBelt"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_lDz_ALtzEeqdpOpFTAVDtA" name="AASStereoCamera"/>

+    </packagedElement>

+    <packagedElement xmi:type="uml:Package" xmi:id="_oby2MLttEeqdpOpFTAVDtA" name="Assets">

+      <packagedElement xmi:type="uml:Class" xmi:id="_ga0pYLttEeqdpOpFTAVDtA" name="ProductionControlSystem"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_yuB7ALttEeqdpOpFTAVDtA" name="WorkStation"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_-ZbLILttEeqdpOpFTAVDtA" name="MaterialStoage"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_Cj5AcLtuEeqdpOpFTAVDtA" name="AGV"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_JtI7ELtuEeqdpOpFTAVDtA" name="Cobot"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_J8eXkLtuEeqdpOpFTAVDtA" name="Gripper"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_Ks1dgLtuEeqdpOpFTAVDtA" name="Belt"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_K51-wLtuEeqdpOpFTAVDtA" name="Lidar"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_LFHaoLtuEeqdpOpFTAVDtA" name="StereoCamera"/>

+    </packagedElement>

+    <packagedElement xmi:type="uml:Package" xmi:id="_otlw0LttEeqdpOpFTAVDtA" name="Submodels">

+      <packagedElement xmi:type="uml:Class" xmi:id="_wcwmgLtuEeqdpOpFTAVDtA" name="SM_WorkStation">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_T8QvkLtwEeqdpOpFTAVDtA" name="activeOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_bv9VYLtwEeqdpOpFTAVDtA" name="assignOrder"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_6gi_oLtuEeqdpOpFTAVDtA" name="SM_MaterialStorage">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_zxkwwLtvEeqdpOpFTAVDtA" name="ProvidedMaterials"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_8kG9YLtvEeqdpOpFTAVDtA" name="ProvidePart"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_heqkoLtwEeqdpOpFTAVDtA" name="SM_ProductionSystem">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_iPwDULtwEeqdpOpFTAVDtA" name="orders"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_jqKL0LtwEeqdpOpFTAVDtA" name="placeOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_j6XLALtwEeqdpOpFTAVDtA" name="abortOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kEk28LtwEeqdpOpFTAVDtA" name="startOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kOavcLtwEeqdpOpFTAVDtA" name="finishOrder"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kYq3oLtwEeqdpOpFTAVDtA" name="requestMaterial"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_wVzYALtwEeqdpOpFTAVDtA" name="SM_Gripper">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_xnPKsLtwEeqdpOpFTAVDtA" name="state"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_xznZ0LtwEeqdpOpFTAVDtA" name="outputAddress"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_y9HYgLtwEeqdpOpFTAVDtA" name="open"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_zkCOkLtwEeqdpOpFTAVDtA" name="close"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_91_mkLtwEeqdpOpFTAVDtA" name="SM_ConveyorBelt">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_AbebELtxEeqdpOpFTAVDtA" name="state"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_CsXfoLtxEeqdpOpFTAVDtA" name="outputAddress"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_KiP2wLtxEeqdpOpFTAVDtA" name="runForwoard"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_Kxl6ULtxEeqdpOpFTAVDtA" name="runReverse"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_LXTPcLtxEeqdpOpFTAVDtA" name="stop"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_Y8ZzMLtxEeqdpOpFTAVDtA" name="SM_Cobot">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_eYwuMLtxEeqdpOpFTAVDtA" name="position"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_fSB4gLtxEeqdpOpFTAVDtA" name="gripperState"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_jfMcgLtxEeqdpOpFTAVDtA" name="moveToPosition"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kLjMMLtxEeqdpOpFTAVDtA" name="openGripper"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kXO3wLtxEeqdpOpFTAVDtA" name="closeGripper"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_kitH8LtxEeqdpOpFTAVDtA" name="pickPart"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_41kkMLtxEeqdpOpFTAVDtA" name="SM_AGV">

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_6RAAYLtxEeqdpOpFTAVDtA" name="operationMode"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_6euTULtxEeqdpOpFTAVDtA" name="batteryLevel"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_7ObR8LtxEeqdpOpFTAVDtA" name="position"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_7cPrgLtxEeqdpOpFTAVDtA" name="navigation"/>

+        <ownedAttribute xmi:type="uml:Property" xmi:id="_8EA2ILtxEeqdpOpFTAVDtA" name="manipulation"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_Clu2sLtyEeqdpOpFTAVDtA" name="assignIOToPerophery"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_CyncILtyEeqdpOpFTAVDtA" name="assignManipulationTechnology"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_C9TpMLtyEeqdpOpFTAVDtA" name="assignNavigationTechnology"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_DIJnQLtyEeqdpOpFTAVDtA" name="moveToPosition"/>

+        <ownedOperation xmi:type="uml:Operation" xmi:id="_DTvzQLtyEeqdpOpFTAVDtA" name="moveToStation"/>

+      </packagedElement>

+      <packagedElement xmi:type="uml:Class" xmi:id="_PuyXoLtyEeqdpOpFTAVDtA" name="SM_Lidar"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_RwxdgLtyEeqdpOpFTAVDtA" name="SM_StereoCam"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_UOKF8LtyEeqdpOpFTAVDtA" name="SM_PartSource"/>

+      <packagedElement xmi:type="uml:Class" xmi:id="_VgqPoLtyEeqdpOpFTAVDtA" name="SM_Documentation"/>

+    </packagedElement>

+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_3SVuILs1EeqdpOpFTAVDtA">

+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_3SYKYLs1EeqdpOpFTAVDtA" source="http://www.eclipse.org/uml2/2.0.0/UML">

+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/AAS#/"/>

+      </eAnnotations>

+      <appliedProfile xmi:type="uml:Profile" href="pathmap://AAS_PROFILE/aas.profile.uml#_NbERgI7QEeqdQ5EKLtW6Vg"/>

+    </profileApplication>

+  </uml:Model>

+  <AAS:AssetAdministrationShell xmi:id="_QIE4oLs2EeqdpOpFTAVDtA"  base_Class="_QHzL0Ls2EeqdpOpFTAVDtA" asset="_gb5ncLttEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_QrXL4Ls2EeqdpOpFTAVDtA"  base_Class="_QrUvoLs2EeqdpOpFTAVDtA" asset="_yuE-ULttEeqdpOpFTAVDtA" submodel="_herywLtwEeqdpOpFTAVDtA _UOLUELtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_Q-2IkLs2EeqdpOpFTAVDtA"  base_Class="_Q-sXkLs2EeqdpOpFTAVDtA" asset="_-ZdnYLttEeqdpOpFTAVDtA" submodel="_UOLUELtyEeqdpOpFTAVDtA _6gmqALtuEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_ReggELs2EeqdpOpFTAVDtA"  base_Class="_ReZyYLs2EeqdpOpFTAVDtA" asset="_K53M4LtuEeqdpOpFTAVDtA" submodel="_VgrdwLtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_SG8ZELs2EeqdpOpFTAVDtA"  base_Class="_SG580Ls2EeqdpOpFTAVDtA" asset="_Cj7csLtuEeqdpOpFTAVDtA" submodel="_41lyULtxEeqdpOpFTAVDtA _herywLtwEeqdpOpFTAVDtA _VgrdwLtyEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_gb5ncLttEeqdpOpFTAVDtA"  base_Class="_ga0pYLttEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_yuE-ULttEeqdpOpFTAVDtA" base_Class="_yuB7ALttEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_-ZdnYLttEeqdpOpFTAVDtA" base_Class="_-ZbLILttEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_Cj7csLtuEeqdpOpFTAVDtA"  base_Class="_Cj5AcLtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_JtLXULtuEeqdpOpFTAVDtA" base_Class="_JtI7ELtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_J8gMwLtuEeqdpOpFTAVDtA" base_Class="_J8eXkLtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_Ks2roLtuEeqdpOpFTAVDtA" base_Class="_Ks1dgLtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_K53M4LtuEeqdpOpFTAVDtA" base_Class="_K51-wLtuEeqdpOpFTAVDtA"/>

+  <AAS:Asset xmi:id="_LFIowLtuEeqdpOpFTAVDtA" base_Class="_LFHaoLtuEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_wcxNkLtuEeqdpOpFTAVDtA" base_Class="_wcwmgLtuEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_6gmqALtuEeqdpOpFTAVDtA" base_Class="_6gi_oLtuEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_herywLtwEeqdpOpFTAVDtA" base_Class="_heqkoLtwEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_wV0mILtwEeqdpOpFTAVDtA" base_Class="_wVzYALtwEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_92A0sLtwEeqdpOpFTAVDtA" base_Class="_91_mkLtwEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_Y8boYLtxEeqdpOpFTAVDtA" base_Class="_Y8ZzMLtxEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_41lyULtxEeqdpOpFTAVDtA" base_Class="_41kkMLtxEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_PuzlwLtyEeqdpOpFTAVDtA" base_Class="_PuyXoLtyEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_RwyroLtyEeqdpOpFTAVDtA" base_Class="_RwxdgLtyEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_UOLUELtyEeqdpOpFTAVDtA" base_Class="_UOKF8LtyEeqdpOpFTAVDtA"/>

+  <AAS:Submodel xmi:id="_VgrdwLtyEeqdpOpFTAVDtA" base_Class="_VgqPoLtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_Wb1B8LtzEeqdpOpFTAVDtA"  base_Class="_WbzMwLtzEeqdpOpFTAVDtA" asset="_JtLXULtuEeqdpOpFTAVDtA" submodel="_41lyULtxEeqdpOpFTAVDtA _VgrdwLtyEeqdpOpFTAVDtA _wV0mILtwEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_XV3oULtzEeqdpOpFTAVDtA"  base_Class="_XV2aMLtzEeqdpOpFTAVDtA" asset="_J8gMwLtuEeqdpOpFTAVDtA" submodel="_wV0mILtwEeqdpOpFTAVDtA _VgrdwLtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_X5kLQLtzEeqdpOpFTAVDtA"  base_Class="_X5hH8LtzEeqdpOpFTAVDtA" submodel="_92A0sLtwEeqdpOpFTAVDtA _VgrdwLtyEeqdpOpFTAVDtA"/>

+  <AAS:AssetAdministrationShell xmi:id="_lD1NILtzEeqdpOpFTAVDtA"  base_Class="_lDz_ALtzEeqdpOpFTAVDtA" asset="_LFIowLtuEeqdpOpFTAVDtA" submodel="_VgrdwLtyEeqdpOpFTAVDtA"/>

+</xmi:XMI>

diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/Activator.java b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/Activator.java
new file mode 100644
index 0000000..aecddc0
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/Activator.java
@@ -0,0 +1,39 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.aas.profile.ui;
+
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+
+public class Activator implements BundleActivator {
+
+	private static BundleContext context;
+
+	static BundleContext getContext() {
+		return context;
+	}
+
+	@Override
+	public void start(BundleContext bundleContext) throws Exception {
+		Activator.context = bundleContext;
+	}
+
+	@Override
+	public void stop(BundleContext bundleContext) throws Exception {
+		Activator.context = null;
+	}
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/advices/ReferableSetNameAdvice.java b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/advices/ReferableSetNameAdvice.java
new file mode 100644
index 0000000..3269eab
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/advices/ReferableSetNameAdvice.java
@@ -0,0 +1,58 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.aas.profile.ui.advices;
+
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.gmf.runtime.emf.type.core.edithelper.AbstractEditHelperAdvice;
+import org.eclipse.gmf.runtime.emf.type.core.requests.IEditCommandRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.SetRequest;
+import org.eclipse.uml2.uml.UMLPackage;
+
+/**
+ * @author AS247872
+ *
+ */
+public class ReferableSetNameAdvice extends AbstractEditHelperAdvice {
+
+	public ReferableSetNameAdvice() {
+		super();
+	}
+
+	@Override
+	public boolean approveRequest(IEditCommandRequest request) {
+
+		if (request instanceof SetRequest) {
+			SetRequest setRequest = (SetRequest) request;
+			EStructuralFeature feature = setRequest.getFeature();
+			if (UMLPackage.eINSTANCE.getNamedElement_Name().equals(feature)) {
+				// new value should be a protocol or null
+				Object newValue = ((SetRequest) request).getValue();
+				if (((String) newValue).matches("[a-zA-Z]+\\w*")) {
+					return true;
+				} else {
+					return false;
+				}
+			}
+
+			return super.approveRequest(setRequest);
+
+		}
+		return super.approveRequest(request);
+	}
+
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/advices/SubModelElementCollectionAdvice.java b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/advices/SubModelElementCollectionAdvice.java
new file mode 100644
index 0000000..e8f5726
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/advices/SubModelElementCollectionAdvice.java
@@ -0,0 +1,176 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.aas.profile.ui.advices;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.transaction.RecordingCommand;
+import org.eclipse.emf.transaction.TransactionalEditingDomain;
+import org.eclipse.gmf.runtime.common.core.command.CompositeCommand;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.emf.type.core.edithelper.AbstractEditHelperAdvice;
+import org.eclipse.gmf.runtime.emf.type.core.requests.ConfigureRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.CreateRelationshipRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.GetEditContextRequest;
+import org.eclipse.gmf.runtime.emf.type.core.requests.IEditCommandRequest;
+import org.eclipse.papyrus.aas.Submodel;
+import org.eclipse.papyrus.aas.SubmodelElementCollection;
+import org.eclipse.papyrus.infra.emf.gmf.command.EMFtoGMFCommandWrapper;
+import org.eclipse.papyrus.uml.tools.commands.ApplyStereotypeCommand;
+import org.eclipse.uml2.uml.Association;
+import org.eclipse.uml2.uml.Class;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Property;
+import org.eclipse.uml2.uml.Stereotype;
+import org.eclipse.uml2.uml.util.UMLUtil;
+
+/**
+ * @author Saadia Dhouib
+ *
+ */
+public class SubModelElementCollectionAdvice extends AbstractEditHelperAdvice {
+
+	protected EObject source;
+	protected EObject target;
+
+	@Override
+	public boolean approveRequest(IEditCommandRequest request) {
+		if (request instanceof GetEditContextRequest) {
+			GetEditContextRequest context = (GetEditContextRequest) request;
+			if (context.getEditCommandRequest() instanceof CreateRelationshipRequest) {
+				return approveCreateRelationshipRequest((CreateRelationshipRequest) context.getEditCommandRequest());
+			}
+		}
+		return super.approveRequest(request);
+	}
+
+	/**
+	 * Check that the source of the assignment is a technical policy
+	 *
+	 * @param request
+	 * @return
+	 */
+	protected boolean approveCreateRelationshipRequest(CreateRelationshipRequest request) {
+
+		source = request.getSource();
+		target = request.getTarget();
+		if ((source instanceof Element) && (target instanceof Element)) {
+			// to be refined. Source and target must be blocks
+			if (UMLUtil.getStereotypeApplication((Element) source, Submodel.class) != null &&
+					UMLUtil.getStereotypeApplication((Element) target, SubmodelElementCollection.class) != null) {
+				return true;
+			}
+			if (UMLUtil.getStereotypeApplication((Element) source, SubmodelElementCollection.class) != null &&
+					UMLUtil.getStereotypeApplication((Element) target, SubmodelElementCollection.class) != null) {
+				return true;
+			}
+		}
+		return false;
+	}
+
+
+
+	/**
+	 * @see org.eclipse.gmf.runtime.emf.type.core.edithelper.AbstractEditHelperAdvice#getAfterEditCommand(org.eclipse.gmf.runtime.emf.type.core.requests.IEditCommandRequest)
+	 *
+	 * @param request
+	 * @return
+	 */
+	@Override
+	public ICommand getAfterConfigureCommand(ConfigureRequest request) {
+		// TODO Auto-generated method stub
+		EObject newElement = request.getElementToConfigure();
+		if (!(newElement instanceof Association)) {
+			return super.getAfterConfigureCommand(request);
+		}
+		final Association association = (Association) request.getElementToConfigure();
+
+		// use wrapper which adds a new empty composite. It will then add new commands for updating
+		// association ends. This technique is used, since the newly created association has no ends yet.
+		CompositeCommand wrapper = new CompositeCommand("wrapper") { //$NON-NLS-1$
+			boolean first = true;
+
+			@Override
+			public boolean canExecute() {
+				if (first) {
+					return true;
+				}
+				return super.canExecute();
+			}
+
+			/**
+			 * @see org.eclipse.gmf.runtime.common.core.command.AbstractCommand#execute(org.eclipse.core.runtime.IProgressMonitor, org.eclipse.core.runtime.IAdaptable)
+			 *
+			 * @param progressMonitor
+			 * @param info
+			 * @return
+			 * @throws ExecutionException
+			 */
+			@Override
+			public IStatus execute(IProgressMonitor progressMonitor, IAdaptable info) throws ExecutionException {
+
+				if (first) {
+					RecordingCommand command = applyStereotypeCommand(association, request.getEditingDomain());
+					if (command != null) {
+						add(EMFtoGMFCommandWrapper.wrap(command));
+						association.setName("parentOf");
+					}
+					first = false;
+				}
+
+
+				return super.execute(progressMonitor, info);
+			}
+
+		};
+
+
+		return wrapper;
+
+
+
+	}
+
+	public static RecordingCommand applyStereotypeCommand(Association association, TransactionalEditingDomain editingDomain) {
+		if (association.getMemberEnds() != null) {
+			for (int i = 0; i < association.getMemberEnds().size(); i++) {
+				Property memberEnd = association.getMemberEnds().get(i);
+				if (memberEnd.getType() != null) {
+					if (memberEnd.getType() instanceof Class) {
+						Class typeofmemberend = (Class) memberEnd.getType();
+
+						for (Stereotype st : typeofmemberend.getAppliedStereotypes()) {
+							if (st != null && st.getName().equals("SubmodelElementCollection")) {
+								ApplyStereotypeCommand applyCommand = new ApplyStereotypeCommand(memberEnd, st, editingDomain);
+								return applyCommand;
+							}
+						}
+
+					}
+				}
+
+			}
+		}
+
+
+		return null;
+	}
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/commands/CreateAASModelCommand.java b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/commands/CreateAASModelCommand.java
new file mode 100644
index 0000000..dcb1a3c
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/commands/CreateAASModelCommand.java
@@ -0,0 +1,74 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.aas.profile.ui.commands;
+
+import org.eclipse.emf.common.util.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.uml.diagram.common.commands.ModelCreationCommandBase;
+import org.eclipse.papyrus.uml.tools.utils.PackageUtil;
+import org.eclipse.uml2.uml.Profile;
+import org.eclipse.uml2.uml.UMLFactory;
+
+public class CreateAASModelCommand extends ModelCreationCommandBase {
+	public static final String COMMAND_ID = "ICML";
+
+
+
+	public static final String PROFILES_PATHMAP = "pathmap://AAS_PROFILE/"; //$NON-NLS-1$
+
+
+	public static final String AAS_PROFILE_URI = PROFILES_PATHMAP + "aas.profile.uml"; //$NON-NLS-1$
+
+
+
+
+
+	@Override
+	protected EObject createRootElement() {
+		return UMLFactory.eINSTANCE.createModel();
+	}
+
+
+	/**
+	 * @see org.eclipse.papyrus.core.extension.commands.ModelCreationCommandBase#initializeModel(org.eclipse.emf.ecore.EObject)
+	 *
+	 * @param owner
+	 */
+
+	@Override
+	protected void initializeModel(EObject owner) {
+		super.initializeModel(owner);
+		((org.eclipse.uml2.uml.Package) owner).setName(getModelName());
+
+		org.eclipse.uml2.uml.Package aasProfile = PackageUtil.loadPackage(URI.createURI(AAS_PROFILE_URI), owner.eResource().getResourceSet());
+		if ((aasProfile != null) && (aasProfile instanceof Profile)) {
+			PackageUtil.applyProfile(((org.eclipse.uml2.uml.Package) owner), (org.eclipse.uml2.uml.Profile) aasProfile, true);
+		}
+
+
+	}
+
+	/**
+	 * Gets the model name.
+	 *
+	 * @return the model name
+	 */
+	protected String getModelName() {
+		return "AASModel";
+	}
+
+}
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/modelelement/AssStereotypeModelElement.java b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/modelelement/AssStereotypeModelElement.java
new file mode 100644
index 0000000..25a0326
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/modelelement/AssStereotypeModelElement.java
@@ -0,0 +1,85 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.aas.profile.ui.modelelement;
+
+import java.util.List;
+
+import org.eclipse.core.databinding.observable.IObservable;
+import org.eclipse.emf.databinding.FeaturePath;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EStructuralFeature;
+import org.eclipse.emf.edit.domain.EditingDomain;
+import org.eclipse.papyrus.uml.properties.databinding.StereotypePropertyObservableList;
+import org.eclipse.papyrus.uml.properties.modelelement.StereotypeModelElement;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Stereotype;
+
+/**
+ * @author AS247872
+ *
+ */
+public class AssStereotypeModelElement extends StereotypeModelElement {
+
+	/**
+	 * Constructor.
+	 *
+	 * @param stereotypeApplication
+	 * @param stereotype
+	 * @param domain
+	 */
+	public AssStereotypeModelElement(EObject stereotypeApplication, Stereotype stereotype, EditingDomain domain) {
+		super(stereotypeApplication, stereotype, domain);
+
+
+		// TODO Auto-generated constructor stub
+	}
+
+	/**
+	 * @see org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement#isFeatureEditable(java.lang.String)
+	 *
+	 * @param propertyPath
+	 * @return
+	 */
+	@Override
+	protected boolean isFeatureEditable(String propertyPath) {
+		if (propertyPath.equals("idShort")) {
+			return false;
+		} else {
+			return true;
+		}
+	}
+
+	@Override
+	public IObservable doGetObservable(String propertyPath) {
+
+		if (propertyPath.equals("endpoint")) {
+			FeaturePath featurePath = getFeaturePath(propertyPath);
+			EStructuralFeature feature = getFeature(featurePath);
+			Element baseElement = org.eclipse.uml2.uml.util.UMLUtil.getBaseElement(source);
+			List<?> wrappedList = (List<?>) source.eGet(feature);
+			// this observable uses the SetStereotypeValueRequest
+			return (IObservable) new StereotypePropertyObservableList(wrappedList, domain, baseElement, feature, stereotype);
+
+		} else {
+			return super.doGetObservable(propertyPath);
+		}
+	}
+}
+
+
+
+
diff --git a/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/modelelement/AssStereotypeModelElementFactory.java b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/modelelement/AssStereotypeModelElementFactory.java
new file mode 100644
index 0000000..da936dd
--- /dev/null
+++ b/plugins/modeling/org.eclipse.papyrus.aas.ui/src/org/eclipse/papyrus/aas/profile/ui/modelelement/AssStereotypeModelElementFactory.java
@@ -0,0 +1,67 @@
+/*****************************************************************************
+ * Copyright (c) 2020 CEA LIST.
+ *
+ *
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/legal/epl-2.0/
+ *
+ * SPDX-License-Identifier: EPL-2.0
+ *
+ * Contributors:
+ *  Saadia Dhouib (CEA LIST) saadia.dhouib@cea.fr - Initial API and implementation
+ *
+ *****************************************************************************/
+
+package org.eclipse.papyrus.aas.profile.ui.modelelement;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.infra.emf.utils.EMFHelper;
+import org.eclipse.papyrus.infra.properties.contexts.DataContextElement;
+import org.eclipse.papyrus.infra.properties.ui.modelelement.EMFModelElement;
+import org.eclipse.papyrus.uml.properties.modelelement.StereotypeModelElementFactory;
+import org.eclipse.papyrus.uml.tools.utils.UMLUtil;
+import org.eclipse.uml2.uml.Element;
+import org.eclipse.uml2.uml.Stereotype;
+
+/**
+ * @author AS247872
+ *
+ */
+public class AssStereotypeModelElementFactory extends StereotypeModelElementFactory {
+
+
+
+	private static final String AAS = "AAS"; // $NON-NLS-0$
+
+	@Override
+	protected EMFModelElement doCreateFromSource(Object sourceElement, DataContextElement context) {
+
+		Element umlElement = UMLUtil.resolveUMLElement(sourceElement);
+		EMFModelElement modelElement = null;
+		if (umlElement == null && sourceElement instanceof EObject) {
+			umlElement = org.eclipse.uml2.uml.util.UMLUtil.getBaseElement((EObject) sourceElement);
+		}
+
+		if (umlElement != null) {
+			Stereotype stereotype = UMLUtil.getAppliedSuperstereotype(umlElement, getQualifiedName(context));
+			Stereotype actual = (stereotype == null) ? null : UMLUtil.getAppliedSubstereotype(umlElement, stereotype);
+			EObject stereotypeApplication = (actual == null) ? null : umlElement.getStereotypeApplication(actual);
+
+			if (null != stereotypeApplication) {
+
+				// check if we are in the AAS case
+				if (umlElement instanceof Element && null != stereotype && AAS.equals(stereotype.getProfile().getName())) {
+					modelElement = new AssStereotypeModelElement(stereotypeApplication, stereotype, EMFHelper.resolveEditingDomain(sourceElement));
+				} else {
+					modelElement = super.doCreateFromSource(umlElement, context);
+				}
+
+			}
+		}
+		return modelElement;
+
+	}
+
+}
diff --git a/plugins/modeling/pom.xml b/plugins/modeling/pom.xml
new file mode 100644
index 0000000..2c9676f
--- /dev/null
+++ b/plugins/modeling/pom.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-plugins</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas-modeling</artifactId>
+	<packaging>pom</packaging>
+
+	<modules>
+		<module>org.eclipse.papyrus.aas.codegen.ui</module>
+		<module>org.eclipse.papyrus.aas.profile</module>
+		<module>org.eclipse.papyrus.aas.ui</module>
+		<module>org.eclipse.papyrus.aas.aasx.import</module>
+	</modules>
+</project>
\ No newline at end of file
diff --git a/plugins/pom.xml b/plugins/pom.xml
new file mode 100755
index 0000000..9a2669b
--- /dev/null
+++ b/plugins/pom.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas.root</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas-plugins</artifactId>
+	<packaging>pom</packaging>
+
+	<modules>
+		<module>codegen</module>
+		<module>modeling</module>
+		<module>specification</module>
+	</modules>
+
+</project>
\ No newline at end of file
diff --git a/plugins/specification/CanvAAS Requirements/.project b/plugins/specification/CanvAAS Requirements/.project
new file mode 100644
index 0000000..a13339e
--- /dev/null
+++ b/plugins/specification/CanvAAS Requirements/.project
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>CanvAAS Requirements</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+	</buildSpec>
+	<natures>
+	</natures>
+</projectDescription>
diff --git a/plugins/specification/CanvAAS Requirements/CanvAAS Requirements.di b/plugins/specification/CanvAAS Requirements/CanvAAS Requirements.di
new file mode 100644
index 0000000..785b011
--- /dev/null
+++ b/plugins/specification/CanvAAS Requirements/CanvAAS Requirements.di
@@ -0,0 +1,2 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<architecture:ArchitectureDescription xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:architecture="http://www.eclipse.org/papyrus/infra/core/architecture" contextId="org.eclipse.papyrus.sysml.architecture.SysML16"/>
diff --git a/plugins/specification/CanvAAS Requirements/CanvAAS Requirements.notation b/plugins/specification/CanvAAS Requirements/CanvAAS Requirements.notation
new file mode 100644
index 0000000..70bfb5d
--- /dev/null
+++ b/plugins/specification/CanvAAS Requirements/CanvAAS Requirements.notation
@@ -0,0 +1,3103 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:nattable="http://www.eclipse.org/papyrus/nattable/model" xmlns:nattableaxis="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis" xmlns:nattableaxisconfiguration="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration" xmlns:nattableaxisprovider="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider" xmlns:nattablecelleditor="http://www.eclipse.org/papyrus/nattable/model/table/nattablecelleditor" xmlns:nattableconfiguration="http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration" xmlns:nattablestyle="http://www.eclipse.org/papyrus/nattable/model/table/nattablestyle" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.3/notation" xmlns:style="http://www.eclipse.org/papyrus/infra/gmfdiag/style" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/nattable/model/table/nattableaxis http://www.eclipse.org/papyrus/nattable/model#//nattableaxis http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableaxisconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model#//nattableaxisprovider http://www.eclipse.org/papyrus/nattable/model/table/nattablecelleditor http://www.eclipse.org/papyrus/nattable/model#//nattablecelleditor http://www.eclipse.org/papyrus/nattable/model/nattableconfiguration http://www.eclipse.org/papyrus/nattable/model#//nattableconfiguration http://www.eclipse.org/papyrus/nattable/model/table/nattablestyle http://www.eclipse.org/papyrus/nattable/model#//nattablestyle">
+  <notation:Diagram xmi:id="_oK8QUFgQEeqn8_FCtymnGA" type="PapyrusUMLClassDiagram" name="SysML 1.6 Requirement Diagram" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_sHHK8FgQEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_sHIZEFgQEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_sHIZEVgQEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_sHIZElgQEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_sHIZE1gQEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_sHIZFFgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_sHIZFVgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_sHIZFlgQEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sHIZF1gQEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_sHIZGFgQEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_sHIZGVgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_sHIZGlgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_sHIZG1gQEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sHIZHFgQEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_sHIZHVgQEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_sHIZHlgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_sHIZH1gQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_sHIZIFgQEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sHIZIVgQEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_sFOUkFgQEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_sHHK8VgQEeqn8_FCtymnGA" x="60" y="80" width="261" height="101"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_uktOwFgQEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_uktOwlgQEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_uktOw1gQEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_uktOxFgQEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_uktOxVgQEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_uktOxlgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_uktOx1gQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_uktOyFgQEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uktOyVgQEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ukt10FgQEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ukt10VgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ukt10lgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ukt101gQEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukt11FgQEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ukt11VgQEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ukt11lgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ukt111gQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ukt12FgQEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ukt12VgQEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ukhokFgQEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uktOwVgQEeqn8_FCtymnGA" x="440" y="80" width="141"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_v6G7cFgQEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_v6G7clgQEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_v6G7c1gQEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_v6G7dFgQEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_v6HigFgQEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_v6HigVgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_v6HiglgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_v6Hig1gQEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v6HihFgQEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_v6HihVgQEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_v6HihlgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_v6Hih1gQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_v6HiiFgQEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v6HiiVgQEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_v6HiilgQEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_v6Hii1gQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_v6HijFgQEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_v6HijVgQEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v6HijlgQEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_v6A00FgQEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_v6G7cVgQEeqn8_FCtymnGA" x="660" y="80" width="141"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_ZFFPAFgREeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_ZFFPAlgREeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_ZFFPA1gREeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_ZFFPBFgREeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ZFF2EFgREeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ZFF2EVgREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ZFF2ElgREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ZFF2E1gREeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZFF2FFgREeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ZFF2FVgREeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ZFF2FlgREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ZFF2F1gREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ZFF2GFgREeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZFF2GVgREeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ZFF2GlgREeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ZFF2G1gREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ZFF2HFgREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ZFF2HVgREeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZFF2HlgREeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZE_IYFgREeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZFFPAVgREeqn8_FCtymnGA" x="980" y="80"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_9kOFkFgREeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_9kOFklgREeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_9kOFk1gREeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_9kOsoFgREeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_9kOsoVgREeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_9kOsolgREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_9kOso1gREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_9kOspFgREeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9kOspVgREeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_9kOsplgREeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_9kOsp1gREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_9kOsqFgREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_9kOsqVgREeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9kOsqlgREeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_9kOsq1gREeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_9kOsrFgREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_9kOsrVgREeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_9kOsrlgREeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9kOsr1gREeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_9kHX4FgREeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_9kOFkVgREeqn8_FCtymnGA" x="-260" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_dFUU0FgSEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_dFUU0lgSEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_dFUU01gSEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_dFUU1FgSEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_dFU74FgSEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_dFU74VgSEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_dFU74lgSEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_dFU741gSEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dFU75FgSEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_dFU75VgSEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_dFU75lgSEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_dFU751gSEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_dFU76FgSEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dFU76VgSEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_dFU76lgSEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_dFU761gSEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_dFU77FgSEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_dFU77VgSEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dFU77lgSEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_dFO1QFgSEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dFUU0VgSEeqn8_FCtymnGA" x="-140" y="280" width="141"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_79pB8FgUEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_79ppAFgUEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_79ppAVgUEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_79ppAlgUEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_79ppA1gUEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_79ppBFgUEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_79ppBVgUEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_79ppBlgUEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79ppB1gUEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_79ppCFgUEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_79ppCVgUEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_79ppClgUEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_79ppC1gUEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79ppDFgUEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_79ppDVgUEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_79ppDlgUEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_79ppD1gUEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_79ppEFgUEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79ppEVgUEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_79i7UFgUEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_79pB8VgUEeqn8_FCtymnGA" x="20" y="280" width="161"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_WaLLIFgVEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_WaLyMFgVEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_WaLyMVgVEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_WaLyMlgVEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_WaLyM1gVEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_WaLyNFgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_WaLyNVgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_WaLyNlgVEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WaLyN1gVEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_WaLyOFgVEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_WaLyOVgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_WaLyOlgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_WaLyO1gVEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WaLyPFgVEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_WaLyPVgVEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_WaLyPlgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_WaLyP1gVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_WaLyQFgVEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WaLyQVgVEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WaG5sFgVEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_WaLLIVgVEeqn8_FCtymnGA" x="1280" y="80"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_ZlR1MFgVEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_ZlScQFgVEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_ZlScQVgVEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_ZlScQlgVEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ZlScQ1gVEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ZlScRFgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ZlScRVgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ZlScRlgVEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZlScR1gVEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ZlScSFgVEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ZlScSVgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ZlScSlgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ZlScS1gVEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZlScTFgVEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_ZlScTVgVEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_ZlScTlgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_ZlScT1gVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_ZlScUFgVEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZlScUVgVEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZlOK0FgVEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_ZlR1MVgVEeqn8_FCtymnGA" x="360" y="760" width="161" height="101"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_mi130FgVEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_mi130lgVEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_mi1301gVEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_mi131FgVEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_mi131VgVEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_mi131lgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_mi1311gVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_mi132FgVEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mi132VgVEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_mi132lgVEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_mi1321gVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_mi133FgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_mi133VgVEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mi133lgVEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_mi1331gVEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_mi134FgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_mi134VgVEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_mi134lgVEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mi1341gVEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_mixmYFgVEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mi130VgVEeqn8_FCtymnGA" x="360" y="960" width="160" height="121"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_HO1M4FgWEeqn8_FCtymnGA" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_HO1z8FgWEeqn8_FCtymnGA" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="CanvAAS%20Requirements.uml#_HOz-wFgWEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HO1M4VgWEeqn8_FCtymnGA" y="440" height="41"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_i1nisFgWEeqn8_FCtymnGA" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_i1oJwFgWEeqn8_FCtymnGA" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="CanvAAS%20Requirements.uml#_i1m7oFgWEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_i1nisVgWEeqn8_FCtymnGA" x="380" y="1100" height="41"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_3MuwUFgXEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_3MuwUlgXEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_3MuwU1gXEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_3MuwVFgXEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_3MuwVVgXEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_3MuwVlgXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_3MuwV1gXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_3MuwWFgXEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3MuwWVgXEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_3MuwWlgXEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_3MuwW1gXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_3MuwXFgXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_3MuwXVgXEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3MuwXlgXEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_3MvXYFgXEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_3MvXYVgXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_3MvXYlgXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_3MvXY1gXEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3MvXZFgXEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_3MoCoFgXEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_3MuwUVgXEeqn8_FCtymnGA" x="880" y="280" width="141" height="121"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="__waBkFgXEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="__waBklgXEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="__waooFgXEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="__waooVgXEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__waoolgXEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="__waoo1gXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__waopFgXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__waopVgXEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__waoplgXEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__waop1gXEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="__waoqFgXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__waoqVgXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__waoqlgXEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__waoq1gXEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__waorFgXEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="__waorVgXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__waorlgXEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__waor1gXEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__waosFgXEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#__wVwIFgXEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="__waBkVgXEeqn8_FCtymnGA" x="1040" y="280" width="141" height="121"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_B4FqUFgZEeqn8_FCtymnGA" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_B4GRYFgZEeqn8_FCtymnGA" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="CanvAAS%20Requirements.uml#_B4D1IFgZEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B4FqUVgZEeqn8_FCtymnGA" x="580" y="220" height="21"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_IKLTcFgZEeqn8_FCtymnGA" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_IKL6gFgZEeqn8_FCtymnGA" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="CanvAAS%20Requirements.uml#_IKKFUFgZEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_IKLTcVgZEeqn8_FCtymnGA" x="1120" y="500" height="41"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_QSal4FgZEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_QSbM8FgZEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_QSbM8VgZEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_QSbM8lgZEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_QSbM81gZEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_QSbM9FgZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_QSbM9VgZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QSbM9lgZEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QSbM91gZEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_QSbM-FgZEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_QSbM-VgZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_QSbM-lgZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QSbM-1gZEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QSbM_FgZEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_QSbM_VgZEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_QSbM_lgZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_QSbM_1gZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_QSbNAFgZEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QSbNAVgZEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_QSUfQFgZEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_QSal4VgZEeqn8_FCtymnGA" x="540" y="400" width="201" height="121"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_4hUSwFgZEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_4hUSwlgZEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_4hUSw1gZEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_4hUSxFgZEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_4hUSxVgZEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_4hUSxlgZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_4hUSx1gZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_4hUSyFgZEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4hUSyVgZEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_4hUSylgZEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_4hUSy1gZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_4hUSzFgZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_4hUSzVgZEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4hUSzlgZEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_4hUSz1gZEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_4hUS0FgZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_4hUS0VgZEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_4hUS0lgZEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4hUS01gZEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_4hOzMFgZEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_4hUSwVgZEeqn8_FCtymnGA" x="700" y="760"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_B3yS4FgaEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_B3yS4lgaEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_B3yS41gaEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_B3yS5FgaEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_B3yS5VgaEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_B3yS5lgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_B3yS51gaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_B3yS6FgaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B3yS6VgaEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_B3yS6lgaEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_B3yS61gaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_B3yS7FgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_B3yS7VgaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B3yS7lgaEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_B3y58FgaEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_B3y58VgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_B3y58lgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_B3y581gaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B3y59FgaEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_B3uBcFgaEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_B3yS4VgaEeqn8_FCtymnGA" x="620" y="960" width="120" height="141"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_CrOiAFgaEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_CrOiAlgaEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_CrOiA1gaEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_CrOiBFgaEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_CrOiBVgaEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_CrOiBlgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_CrOiB1gaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_CrOiCFgaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CrOiCVgaEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_CrOiClgaEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_CrOiC1gaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_CrOiDFgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_CrOiDVgaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CrOiDlgaEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_CrPJEFgaEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_CrPJEVgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_CrPJElgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_CrPJE1gaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CrPJFFgaEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_CrJpgFgaEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CrOiAVgaEeqn8_FCtymnGA" x="760" y="960" width="120" height="120"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_r6xMgFgaEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_r6xMglgaEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_r6xMg1gaEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_r6xMhFgaEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_r6xMhVgaEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_r6xMhlgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_r6xMh1gaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_r6xMiFgaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r6xMiVgaEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_r6xMilgaEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_r6xMi1gaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_r6xMjFgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_r6xMjVgaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r6xMjlgaEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_r6xMj1gaEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_r6xMkFgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_r6xMkVgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_r6xMklgaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r6xMk1gaEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_r6sUAFgaEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_r6xMgVgaEeqn8_FCtymnGA" x="1220" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_7k-bkFgaEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_7k_CoFgaEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_7k_CoVgaEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_7k_ColgaEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_7k_Co1gaEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_7k_CpFgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_7k_CpVgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_7k_CplgaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7k_Cp1gaEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_7k_CqFgaEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_7k_CqVgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_7k_CqlgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_7k_Cq1gaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7k_CrFgaEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_7k_CrVgaEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_7k_CrlgaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_7k_Cr1gaEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_7k_CsFgaEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7k_CsVgaEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_7k5jEFgaEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7k-bkVgaEeqn8_FCtymnGA" x="1360" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_RRNegFgbEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_RRNeglgbEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_RRNeg1gbEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_RRNehFgbEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RRNehVgbEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RRNehlgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_RRNeh1gbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_RRNeiFgbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RRNeiVgbEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RRNeilgbEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RRNei1gbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_RRNejFgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_RRNejVgbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RRNejlgbEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RROFkFgbEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RROFkVgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_RROFklgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_RROFk1gbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RROFlFgbEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_RRImAFgbEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RRNegVgbEeqn8_FCtymnGA" x="380" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Wq3DwFgbEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Wq3DwlgbEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Wq3Dw1gbEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Wq3DxFgbEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Wq3DxVgbEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Wq3DxlgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Wq3Dx1gbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Wq3DyFgbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wq3DyVgbEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Wq3q0FgbEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Wq3q0VgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Wq3q0lgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Wq3q01gbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wq3q1FgbEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_Wq3q1VgbEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_Wq3q1lgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_Wq3q11gbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_Wq3q2FgbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wq3q2VgbEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WqyyUFgbEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Wq3DwVgbEeqn8_FCtymnGA" x="260" y="440"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_mGFboFgbEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_mGFbolgbEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_mGGCsFgbEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_mGGCsVgbEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_mGGCslgbEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_mGGCs1gbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_mGGCtFgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_mGGCtVgbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mGGCtlgbEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_mGGCt1gbEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_mGGCuFgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_mGGCuVgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_mGGCulgbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mGGCu1gbEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_mGGCvFgbEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_mGGCvVgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_mGGCvlgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_mGGCv1gbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mGGCwFgbEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_mGBKMFgbEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_mGFboVgbEeqn8_FCtymnGA" x="380" y="440"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_75_M0FgbEeqn8_FCtymnGA" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_75_M0lgbEeqn8_FCtymnGA" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_75_M01gbEeqn8_FCtymnGA" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_75_M1FgbEeqn8_FCtymnGA" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_75_M1VgbEeqn8_FCtymnGA" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_75_M1lgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_75_M11gbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_75_M2FgbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_75_M2VgbEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_75_M2lgbEeqn8_FCtymnGA" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_75_M21gbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_75_M3FgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_75_M3VgbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_75_M3lgbEeqn8_FCtymnGA"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_75_M31gbEeqn8_FCtymnGA" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_75_M4FgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_75_M4VgbEeqn8_FCtymnGA"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_75_M4lgbEeqn8_FCtymnGA"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_75_M41gbEeqn8_FCtymnGA"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_756UUFgbEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_75_M0VgbEeqn8_FCtymnGA" x="140" y="440"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Os55QFgcEeqn8_FCtymnGA" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Os6gUFgcEeqn8_FCtymnGA" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="CanvAAS%20Requirements.uml#_Os3dAFgcEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Os55QVgcEeqn8_FCtymnGA" x="240" y="660" height="40"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_qboXkFhzEeqlBrUbnho2Eg" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_qbplsFhzEeqlBrUbnho2Eg" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="CanvAAS%20Requirements.uml#_qbcKUFhzEeqlBrUbnho2Eg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_qboXkVhzEeqlBrUbnho2Eg" x="420" y="240" width="61" height="21"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_zPcWkFhzEeqlBrUbnho2Eg" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_zPc9oFhzEeqlBrUbnho2Eg" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="CanvAAS%20Requirements.uml#_zPZTQFhzEeqlBrUbnho2Eg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_zPcWkVhzEeqlBrUbnho2Eg" x="680" y="1120" height="41"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_h6zyIHsGEeq4wOIfUPyLYg" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_h6zyInsGEeq4wOIfUPyLYg" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_h6zyI3sGEeq4wOIfUPyLYg" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_h6zyJHsGEeq4wOIfUPyLYg" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_h60ZMHsGEeq4wOIfUPyLYg" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_h60ZMXsGEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_h60ZMnsGEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_h60ZM3sGEeq4wOIfUPyLYg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h60ZNHsGEeq4wOIfUPyLYg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_h60ZNXsGEeq4wOIfUPyLYg" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_h60ZNnsGEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_h60ZN3sGEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_h60ZOHsGEeq4wOIfUPyLYg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h60ZOXsGEeq4wOIfUPyLYg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_h60ZOnsGEeq4wOIfUPyLYg" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_h60ZO3sGEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_h60ZPHsGEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_h60ZPXsGEeq4wOIfUPyLYg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h60ZPnsGEeq4wOIfUPyLYg"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_h6uSkHsGEeq4wOIfUPyLYg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_h6zyIXsGEeq4wOIfUPyLYg" x="1020" y="760" height="121"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_RBk5QHsIEeq4wOIfUPyLYg" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_RBk5QnsIEeq4wOIfUPyLYg" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_RBk5Q3sIEeq4wOIfUPyLYg" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_RBk5RHsIEeq4wOIfUPyLYg" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RBk5RXsIEeq4wOIfUPyLYg" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RBk5RnsIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_RBk5R3sIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_RBk5SHsIEeq4wOIfUPyLYg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RBk5SXsIEeq4wOIfUPyLYg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RBk5SnsIEeq4wOIfUPyLYg" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RBk5S3sIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_RBk5THsIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_RBk5TXsIEeq4wOIfUPyLYg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RBk5TnsIEeq4wOIfUPyLYg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_RBk5T3sIEeq4wOIfUPyLYg" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_RBk5UHsIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_RBk5UXsIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_RBk5UnsIEeq4wOIfUPyLYg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RBk5U3sIEeq4wOIfUPyLYg"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_RBgAwHsIEeq4wOIfUPyLYg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_RBk5QXsIEeq4wOIfUPyLYg" x="960" y="940" width="140"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_d8sE0HsIEeq4wOIfUPyLYg" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_d8sE0nsIEeq4wOIfUPyLYg" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_d8sE03sIEeq4wOIfUPyLYg" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_d8sE1HsIEeq4wOIfUPyLYg" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_d8sE1XsIEeq4wOIfUPyLYg" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_d8sE1nsIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_d8sE13sIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_d8sE2HsIEeq4wOIfUPyLYg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_d8sE2XsIEeq4wOIfUPyLYg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_d8sE2nsIEeq4wOIfUPyLYg" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_d8sE23sIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_d8sE3HsIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_d8sE3XsIEeq4wOIfUPyLYg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_d8sE3nsIEeq4wOIfUPyLYg"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_d8sE33sIEeq4wOIfUPyLYg" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_d8sE4HsIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_d8sE4XsIEeq4wOIfUPyLYg"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_d8sE4nsIEeq4wOIfUPyLYg"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_d8sE43sIEeq4wOIfUPyLYg"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_d8nMUHsIEeq4wOIfUPyLYg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_d8sE0XsIEeq4wOIfUPyLYg" x="1160" y="940"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_o_UPUHsJEeq4wOIfUPyLYg" type="Comment_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_o_U2YXsJEeq4wOIfUPyLYg" type="Comment_BodyLabel"/>
+      <element xmi:type="uml:Comment" href="CanvAAS%20Requirements.uml#_o_TBMHsJEeq4wOIfUPyLYg"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_o_U2YHsJEeq4wOIfUPyLYg" x="1160" y="1100"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5pgHgD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5pgHgT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5pgukD7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_sFOUkFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5pgHgj7DEeuZdKDsy66N5g" x="260" y="80"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5qWcED7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5qWcET7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5qWcEz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ukhokFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5qWcEj7DEeuZdKDsy66N5g" x="640" y="80"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5q0WID7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5q0WIT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5q0WIz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_ZuHrUFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5q0WIj7DEeuZdKDsy66N5g" x="640" y="-20"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5rDmsD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5rDmsT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5rENwD7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_v6A00FgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5rDmsj7DEeuZdKDsy66N5g" x="860" y="80"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5sjbgD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5sjbgT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5sjbgz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_bnOiAFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5sjbgj7DEeuZdKDsy66N5g" x="860" y="-20"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5s3kkD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5s3kkT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5s3kkz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZE_IYFgREeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5s3kkj7DEeuZdKDsy66N5g" x="1180" y="80"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5tpAoD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5tpAoT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5tpAoz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_9kHX4FgREeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5tpAoj7DEeuZdKDsy66N5g" x="-60" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5uEecD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5uEecT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5uFFgD7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_dFO1QFgSEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5uEecj7DEeuZdKDsy66N5g" x="60" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5uhxcD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5uhxcT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5uhxcz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_79i7UFgUEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5uhxcj7DEeuZdKDsy66N5g" x="220" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5vHAQD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5vHAQT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5vHAQz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WaG5sFgVEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5vHAQj7DEeuZdKDsy66N5g" x="1480" y="80"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5v64kD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5v64kT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5v64kz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZlOK0FgVEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5v64kj7DEeuZdKDsy66N5g" x="560" y="760"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5whVgD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5whVgT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5whVgz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_mixmYFgVEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5whVgj7DEeuZdKDsy66N5g" x="560" y="960"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5w9aYD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5w9aYT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5w9aYz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_3MoCoFgXEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5w9aYj7DEeuZdKDsy66N5g" x="1080" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5xY4MD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5xY4MT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5xY4Mz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#__wVwIFgXEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5xY4Mj7DEeuZdKDsy66N5g" x="1240" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5x2LMD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5x2LMT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5x2LMz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_QSUfQFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5x2LMj7DEeuZdKDsy66N5g" x="740" y="400"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5yTeMD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5yTeMT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5yTeMz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_4hOzMFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5yTeMj7DEeuZdKDsy66N5g" x="900" y="760"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5y4F8D7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5y4F8T7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5y4F8z7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_B3uBcFgaEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5y4F8j7DEeuZdKDsy66N5g" x="820" y="960"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5zTjwD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5zTjwT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5zTjwz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_CrJpgFgaEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5zTjwj7DEeuZdKDsy66N5g" x="960" y="960"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5ztzcD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5ztzcT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5ztzcz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_r6sUAFgaEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5ztzcj7DEeuZdKDsy66N5g" x="1420" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_50IDID7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_50IDIT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_50IDIz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_7k5jEFgaEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_50IDIj7DEeuZdKDsy66N5g" x="1560" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_50nyYD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_50nyYT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_50nyYz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_RRImAFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_50nyYj7DEeuZdKDsy66N5g" x="580" y="280"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_51IIsD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_51IIsT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_51IIsz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WqyyUFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_51IIsj7DEeuZdKDsy66N5g" x="460" y="440"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_51iYYD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_51iYYT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_51iYYz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_mGBKMFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_51iYYj7DEeuZdKDsy66N5g" x="580" y="440"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_518BAD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_518BAT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_518BAz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_756UUFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_518BAj7DEeuZdKDsy66N5g" x="340" y="440"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_52aiID7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_52aiIT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_52bJMD7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_h6uSkHsGEeq4wOIfUPyLYg"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_52aiIj7DEeuZdKDsy66N5g" x="1220" y="760"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_5231ID7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_5231IT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5231Iz7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_RBgAwHsIEeq4wOIfUPyLYg"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_5231Ij7DEeuZdKDsy66N5g" x="1160" y="940"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_53PokD7DEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_53PokT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_53QPoD7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_d8nMUHsIEeq4wOIfUPyLYg"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_53Pokj7DEeuZdKDsy66N5g" x="1360" y="940"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_oK8QUVgQEeqn8_FCtymnGA" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_oK8QUlgQEeqn8_FCtymnGA"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_oK8QU1gQEeqn8_FCtymnGA" diagramKindId="org.eclipse.papyrus.sysml16.diagram.requirement">
+      <owner xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    </styles>
+    <element xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <edges xmi:type="notation:Connector" xmi:id="_JRb90FgWEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_HO1M4FgWEeqn8_FCtymnGA" target="_9kOFkFgREeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_JRb90VgWEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JRb90lgWEeqn8_FCtymnGA" points="[240, 420, -643984, -643984]$[120, 360, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JSK9oFgWEeqn8_FCtymnGA" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JSK9oVgWEeqn8_FCtymnGA" id="(0.8,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_QyGS4FgWEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_HO1M4FgWEeqn8_FCtymnGA" target="_dFUU0FgSEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_QyGS4VgWEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_QyGS4lgWEeqn8_FCtymnGA" points="[140, 420, -643984, -643984]$[200, 380, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qy49EFgWEeqn8_FCtymnGA" id="(0.6,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Qy49EVgWEeqn8_FCtymnGA" id="(0.14184397163120568,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_RzYJsFgWEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_HO1M4FgWEeqn8_FCtymnGA" target="_79pB8FgUEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_RzYJsVgWEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_RzYJslgWEeqn8_FCtymnGA" points="[160, 420, -643984, -643984]$[400, 380, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_R0EtQFgWEeqn8_FCtymnGA" id="(0.8,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_R0FUUFgWEeqn8_FCtymnGA" id="(0.12422360248447205,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_n5azwFgWEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_i1nisFgWEeqn8_FCtymnGA" target="_mi130FgVEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_n5azwVgWEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_n5azwlgWEeqn8_FCtymnGA" points="[480, 1120, -643984, -643984]$[440, 1080, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n6IlcFgWEeqn8_FCtymnGA" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n6IlcVgWEeqn8_FCtymnGA" id="(0.375,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_1qwcsFgWEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_sHHK8FgQEeqn8_FCtymnGA" target="_9kOFkFgREeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_1qwcsVgWEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1qwcslgWEeqn8_FCtymnGA" points="[140, 181, -643984, -643984]$[60, 280, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1rdnUFgWEeqn8_FCtymnGA" id="(0.07662835249042145,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1rdnUVgWEeqn8_FCtymnGA" id="(0.4,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_KPsgYFgXEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_sHHK8FgQEeqn8_FCtymnGA" target="_dFUU0FgSEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_KPsgYVgXEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KPsgYlgXEeqn8_FCtymnGA" points="[180, 181, -643984, -643984]$[220, 280, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KQX10FgXEeqn8_FCtymnGA" id="(0.22988505747126436,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KQX10VgXEeqn8_FCtymnGA" id="(0.28368794326241137,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_K3bOwFgXEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_sHHK8FgQEeqn8_FCtymnGA" target="_79pB8FgUEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_K3bOwVgXEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_K3bOwlgXEeqn8_FCtymnGA" points="[220, 181, -643984, -643984]$[440, 280, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_K4Dg4FgXEeqn8_FCtymnGA" id="(0.3831417624521073,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_K4Dg4VgXEeqn8_FCtymnGA" id="(0.37267080745341613,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_vTh_cFgXEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_ZlR1MFgVEeqn8_FCtymnGA" target="_mi130FgVEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_vTh_cVgXEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vTh_clgXEeqn8_FCtymnGA" points="[440, 880, -643984, -643984]$[440, 980, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vUGAIFgXEeqn8_FCtymnGA" id="(0.4968944099378882,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vUGAIVgXEeqn8_FCtymnGA" id="(0.5,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_7sLXIFgXEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_ZFFPAFgREeqn8_FCtymnGA" target="_3MuwUFgXEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_7sLXIVgXEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_7sLXIlgXEeqn8_FCtymnGA" points="[1060, 200, -643984, -643984]$[1020, 300, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7s36sFgXEeqn8_FCtymnGA" id="(0.3333333333333333,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7s36sVgXEeqn8_FCtymnGA" id="(0.425531914893617,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_J32LoFgYEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_ZFFPAFgREeqn8_FCtymnGA" target="__waBkFgXEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_J32LoVgYEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_J32LolgYEeqn8_FCtymnGA" points="[1100, 200, -643984, -643984]$[1180, 300, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J4ivMFgYEeqn8_FCtymnGA" id="(0.5,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_J4jWQFgYEeqn8_FCtymnGA" id="(0.28368794326241137,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_EExkUFgZEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_B4FqUFgZEeqn8_FCtymnGA" target="_uktOwFgQEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_EExkUVgZEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_EExkUlgZEeqn8_FCtymnGA" points="[640, 260, -643984, -643984]$[540, 180, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EFq8MFgZEeqn8_FCtymnGA" id="(0.2,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_EFq8MVgZEeqn8_FCtymnGA" id="(0.7092198581560284,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_FBymMFgZEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_B4FqUFgZEeqn8_FCtymnGA" target="_v6G7cFgQEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_FBymMVgZEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FBymMlgZEeqn8_FCtymnGA" points="[680, 260, -643984, -643984]$[700, 180, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FCi0IFgZEeqn8_FCtymnGA" id="(0.6,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FCi0IVgZEeqn8_FCtymnGA" id="(0.28368794326241137,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_KK9fcFgZEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_IKLTcFgZEeqn8_FCtymnGA" target="__waBkFgXEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_KK9fcVgZEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_KK9fclgZEeqn8_FCtymnGA" points="[1100, 420, -643984, -643984]$[1120, 400, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KL4FcFgZEeqn8_FCtymnGA" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_KL4FcVgZEeqn8_FCtymnGA" id="(0.5673758865248227,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_ZuMj0FgZEeqn8_FCtymnGA" type="Abstraction_Edge" source="_uktOwFgQEeqn8_FCtymnGA" target="_QSal4FgZEeqn8_FCtymnGA">
+      <children xmi:type="notation:DecorationNode" xmi:id="_ZuNK4FgZEeqn8_FCtymnGA" type="Abstraction_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_ZuNK4VgZEeqn8_FCtymnGA" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_ZuNK4lgZEeqn8_FCtymnGA" type="Abstraction_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_ZuNK41gZEeqn8_FCtymnGA" x="-98" y="11"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_ZuMj0VgZEeqn8_FCtymnGA"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_ZuHrUFgZEeqn8_FCtymnGA"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_ZuMj0lgZEeqn8_FCtymnGA" points="[500, 180, -643984, -643984]$[600, 400, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZveWMFgZEeqn8_FCtymnGA" id="(0.425531914893617,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ZveWMVgZEeqn8_FCtymnGA" id="(0.29850746268656714,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_bnSzcFgZEeqn8_FCtymnGA" type="Abstraction_Edge" source="_v6G7cFgQEeqn8_FCtymnGA" target="_QSal4FgZEeqn8_FCtymnGA">
+      <children xmi:type="notation:DecorationNode" xmi:id="_bnSzc1gZEeqn8_FCtymnGA" type="Abstraction_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_bnSzdFgZEeqn8_FCtymnGA" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_bnSzdVgZEeqn8_FCtymnGA" type="Abstraction_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_bnSzdlgZEeqn8_FCtymnGA" y="60"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_bnSzcVgZEeqn8_FCtymnGA"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_bnOiAFgZEeqn8_FCtymnGA"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bnSzclgZEeqn8_FCtymnGA" points="[720, 180, -643984, -643984]$[680, 400, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_boaNwFgZEeqn8_FCtymnGA" id="(0.425531914893617,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_boaNwVgZEeqn8_FCtymnGA" id="(0.6965174129353234,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_gSjBoFgZEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_IKLTcFgZEeqn8_FCtymnGA" target="_3MuwUFgXEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_gSjBoVgZEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_gSjBolgZEeqn8_FCtymnGA" points="[980, 440, -643984, -643984]$[900, 412, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gTcZgFgZEeqn8_FCtymnGA" id="(0.2,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_gTcZgVgZEeqn8_FCtymnGA" id="(0.5673758865248227,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_TIwrcFgaEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_4hUSwFgZEeqn8_FCtymnGA" target="_B3yS4FgaEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_TIwrcVgaEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TIwrclgaEeqn8_FCtymnGA" points="[720, 860, -643984, -643984]$[680, 960, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TJxYEFgaEeqn8_FCtymnGA" id="(0.2,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TJxYEVgaEeqn8_FCtymnGA" id="(0.5,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_T3bIQFgaEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_4hUSwFgZEeqn8_FCtymnGA" target="_CrOiAFgaEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_T3bIQVgaEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_T3bIQlgaEeqn8_FCtymnGA" points="[540, 860, -643984, -643984]$[600, 960, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T4b04FgaEeqn8_FCtymnGA" id="(0.4,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_T4b04VgaEeqn8_FCtymnGA" id="(0.5,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5pls8FgaEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_WaLLIFgVEeqn8_FCtymnGA" target="_r6xMgFgaEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5pls8VgaEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5pls8lgaEeqn8_FCtymnGA" points="[1320, 180, -643984, -643984]$[1340, 280, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5qu8cFgaEeqn8_FCtymnGA" id="(0.38095238095238093,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5qu8cVgaEeqn8_FCtymnGA" id="(0.4,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_CgFMgFgbEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_WaLLIFgVEeqn8_FCtymnGA" target="_7k-bkFgaEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_CgFMgVgbEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CgFMglgbEeqn8_FCtymnGA" points="[1360, 180, -643984, -643984]$[1400, 280, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ChHHQFgbEeqn8_FCtymnGA" id="(0.7619047619047619,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_ChHHQVgbEeqn8_FCtymnGA" id="(0.4,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_eEDe4FgbEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_sHHK8FgQEeqn8_FCtymnGA" target="_Wq3DwFgbEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_eEDe4VgbEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_eEDe4lgbEeqn8_FCtymnGA" points="[200, 181, -643984, -643984]$[400, 420, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_eFH14FgbEeqn8_FCtymnGA" id="(0.6896551724137931,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_eFH14VgbEeqn8_FCtymnGA" id="(0.6,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_txNUQFgbEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_sHHK8FgQEeqn8_FCtymnGA" target="_mGFboFgbEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_txNUQVgbEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_txNUQlgbEeqn8_FCtymnGA" points="[260, 181, -643984, -643984]$[400, 440, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tyZnEFgbEeqn8_FCtymnGA" id="(0.7662835249042146,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_tyZnEVgbEeqn8_FCtymnGA" id="(0.2,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_B_jc4FgcEeqn8_FCtymnGA" type="Element_ContainmentEdge" source="_sHHK8FgQEeqn8_FCtymnGA" target="_75_M0FgbEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_B_jc4VgcEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_B_jc4lgcEeqn8_FCtymnGA" points="[200, 181, -643984, -643984]$[180, 460, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CApCAFgcEeqn8_FCtymnGA" id="(0.5363984674329502,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CApCAVgcEeqn8_FCtymnGA" id="(0.6,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_HcJocFgcEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_IKLTcFgZEeqn8_FCtymnGA" target="_7k-bkFgaEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_HcJocVgcEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HcJoclgcEeqn8_FCtymnGA" points="[1060, 460, -643984, -643984]$[1400, 380, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HdXJYFgcEeqn8_FCtymnGA" id="(1.0,0.4878048780487805)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HdXJYVgcEeqn8_FCtymnGA" id="(0.4,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_JSeQ4FgcEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_IKLTcFgZEeqn8_FCtymnGA" target="_r6xMgFgaEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_JSeQ4VgcEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JSeQ4lgcEeqn8_FCtymnGA" points="[1040, 440, -643984, -643984]$[1220, 360, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JToHcFgcEeqn8_FCtymnGA" id="(0.8,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JToHcVgcEeqn8_FCtymnGA" id="(0.0,0.8)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_SH-5AFgcEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_Os55QFgcEeqn8_FCtymnGA" target="_mGFboFgbEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_SH-5AVgcEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_SH-5AlgcEeqn8_FCtymnGA" points="[300, 660, -643984, -643984]$[400, 540, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SJOPIFgcEeqn8_FCtymnGA" id="(0.6,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_SJOPIVgcEeqn8_FCtymnGA" id="(0.2,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_TD2rYFgcEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_Os55QFgcEeqn8_FCtymnGA" target="_Wq3DwFgbEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_TD2rYVgcEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_TD2rYlgcEeqn8_FCtymnGA" points="[280, 660, -643984, -643984]$[280, 591, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TFMIIFgcEeqn8_FCtymnGA" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_TFMIIVgcEeqn8_FCtymnGA" id="(0.4,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_UPf_IFgcEeqn8_FCtymnGA" type="Comment_AnnotatedElementEdge" source="_Os55QFgcEeqn8_FCtymnGA" target="_75_M0FgbEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_UPf_IVgcEeqn8_FCtymnGA"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_UPf_IlgcEeqn8_FCtymnGA" points="[240, 660, -643984, -643984]$[180, 560, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UQ_M4FgcEeqn8_FCtymnGA" id="(0.0,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_UQ_M4VgcEeqn8_FCtymnGA" id="(0.6,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_t8G0sFhzEeqlBrUbnho2Eg" type="Comment_AnnotatedElementEdge" source="_qboXkFhzEeqlBrUbnho2Eg" target="_RRNegFgbEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_t8G0sVhzEeqlBrUbnho2Eg"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t8G0slhzEeqlBrUbnho2Eg" points="[520, 340, -643984, -643984]$[480, 300, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_uLq6sFhzEeqlBrUbnho2Eg" id="(0.6557377049180327,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_uLq6sVhzEeqlBrUbnho2Eg" id="(1.0,0.16)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_2JLj0FhzEeqlBrUbnho2Eg" type="Comment_AnnotatedElementEdge" source="_zPcWkFhzEeqlBrUbnho2Eg" target="_B3yS4FgaEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_2JLj0VhzEeqlBrUbnho2Eg"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_2JLj0lhzEeqlBrUbnho2Eg" points="[720, 1120, -643984, -643984]$[680, 1060, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2Z_nAFhzEeqlBrUbnho2Eg" id="(0.4,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_2Z_nAVhzEeqlBrUbnho2Eg" id="(0.5,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_3t4QwFhzEeqlBrUbnho2Eg" type="Comment_AnnotatedElementEdge" source="_zPcWkFhzEeqlBrUbnho2Eg" target="_CrOiAFgaEeqn8_FCtymnGA">
+      <styles xmi:type="notation:FontStyle" xmi:id="_3t4QwVhzEeqlBrUbnho2Eg"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_3t4QwlhzEeqlBrUbnho2Eg" points="[740, 1120, -643984, -643984]$[800, 1080, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_39vRsFhzEeqlBrUbnho2Eg" id="(0.6,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_39v4wFhzEeqlBrUbnho2Eg" id="(0.3333333333333333,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_bMIowHsIEeq4wOIfUPyLYg" type="Element_ContainmentEdge" source="_h6zyIHsGEeq4wOIfUPyLYg" target="_RBk5QHsIEeq4wOIfUPyLYg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_bMIowXsIEeq4wOIfUPyLYg"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bMIownsIEeq4wOIfUPyLYg" points="[1100, 881, -643984, -643984]$[1040, 940, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bck4gHsIEeq4wOIfUPyLYg" id="(0.5298013245033113,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bck4gXsIEeq4wOIfUPyLYg" id="(0.5714285714285714,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_h2F_UHsIEeq4wOIfUPyLYg" type="Element_ContainmentEdge" source="_h6zyIHsGEeq4wOIfUPyLYg" target="_d8sE0HsIEeq4wOIfUPyLYg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_h2F_UXsIEeq4wOIfUPyLYg"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_h2F_UnsIEeq4wOIfUPyLYg" points="[1120, 881, -643984, -643984]$[1200, 940, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_iElHQHsIEeq4wOIfUPyLYg" id="(0.6622516556291391,1.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_iEluUHsIEeq4wOIfUPyLYg" id="(0.4,0.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_lcSNcHsJEeq4wOIfUPyLYg" type="Comment_AnnotatedElementEdge" source="_zPcWkFhzEeqlBrUbnho2Eg" target="_RBk5QHsIEeq4wOIfUPyLYg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_lcSNcXsJEeq4wOIfUPyLYg"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_lcSNcnsJEeq4wOIfUPyLYg" points="[780, 1140, -643984, -643984]$[960, 1040, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_loRbAHsJEeq4wOIfUPyLYg" id="(1.0,0.4878048780487805)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_loRbAXsJEeq4wOIfUPyLYg" id="(0.0,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_rTt64HsJEeq4wOIfUPyLYg" type="Comment_AnnotatedElementEdge" source="_o_UPUHsJEeq4wOIfUPyLYg" target="_d8sE0HsIEeq4wOIfUPyLYg">
+      <styles xmi:type="notation:FontStyle" xmi:id="_rTt64XsJEeq4wOIfUPyLYg"/>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rTt64nsJEeq4wOIfUPyLYg" points="[1220, 1100, -643984, -643984]$[1220, 1040, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rjVEMHsJEeq4wOIfUPyLYg" id="(0.6,0.0)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rjVEMXsJEeq4wOIfUPyLYg" id="(0.6,1.0)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5pgukT7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_sHHK8FgQEeqn8_FCtymnGA" target="_5pgHgD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5pgukj7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5phVoj7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_sFOUkFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5pgukz7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5phVoD7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5phVoT7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5qWcFD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_uktOwFgQEeqn8_FCtymnGA" target="_5qWcED7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5qWcFT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5qWcGT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ukhokFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5qWcFj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5qWcFz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5qWcGD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5q0WJD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_ZuMj0FgZEeqn8_FCtymnGA" target="_5q0WID7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5q0WJT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5q09Mj7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_ZuHrUFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5q0WJj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5q09MD7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5q09MT7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5rENwT7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_v6G7cFgQEeqn8_FCtymnGA" target="_5rDmsD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5rENwj7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5rENxj7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_v6A00FgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5rENwz7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5rENxD7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5rENxT7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5skCkD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_bnSzcFgZEeqn8_FCtymnGA" target="_5sjbgD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5skCkT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5skClT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_bnOiAFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5skCkj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5skCkz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5skClD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5s3klD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_ZFFPAFgREeqn8_FCtymnGA" target="_5s3kkD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5s3klT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5s3kmT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZE_IYFgREeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5s3klj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5s3klz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5s3kmD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5tpnsD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_9kOFkFgREeqn8_FCtymnGA" target="_5tpAoD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5tpnsT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5tpntT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_9kHX4FgREeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5tpnsj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5tpnsz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5tpntD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5uFFgT7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_dFUU0FgSEeqn8_FCtymnGA" target="_5uEecD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5uFFgj7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5uFFhj7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_dFO1QFgSEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5uFFgz7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5uFFhD7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5uFFhT7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5uhxdD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_79pB8FgUEeqn8_FCtymnGA" target="_5uhxcD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5uhxdT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5uhxeT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_79i7UFgUEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5uhxdj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5uhxdz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5uhxeD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5vHARD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_WaLLIFgVEeqn8_FCtymnGA" target="_5vHAQD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5vHART7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5vHAST7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WaG5sFgVEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5vHARj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5vHARz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5vHASD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5v64lD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_ZlR1MFgVEeqn8_FCtymnGA" target="_5v64kD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5v64lT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5v64mT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZlOK0FgVEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5v64lj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5v64lz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5v64mD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5whVhD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_mi130FgVEeqn8_FCtymnGA" target="_5whVgD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5whVhT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5whViT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_mixmYFgVEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5whVhj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5whVhz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5whViD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5w9aZD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_3MuwUFgXEeqn8_FCtymnGA" target="_5w9aYD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5w9aZT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5w9aaT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_3MoCoFgXEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5w9aZj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5w9aZz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5w9aaD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5xY4ND7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="__waBkFgXEeqn8_FCtymnGA" target="_5xY4MD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5xY4NT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5xZfQj7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#__wVwIFgXEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5xY4Nj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5xZfQD7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5xZfQT7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5x2LND7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_QSal4FgZEeqn8_FCtymnGA" target="_5x2LMD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5x2LNT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5x2LOT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_QSUfQFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5x2LNj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5x2LNz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5x2LOD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5yTeND7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_4hUSwFgZEeqn8_FCtymnGA" target="_5yTeMD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5yTeNT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5yTeOT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_4hOzMFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5yTeNj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5yTeNz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5yTeOD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5y4tAD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_B3yS4FgaEeqn8_FCtymnGA" target="_5y4F8D7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5y4tAT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5y4tBT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_B3uBcFgaEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5y4tAj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5y4tAz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5y4tBD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5zTjxD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_CrOiAFgaEeqn8_FCtymnGA" target="_5zTjwD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5zTjxT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5zTjyT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_CrJpgFgaEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5zTjxj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5zTjxz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5zTjyD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5ztzdD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_r6xMgFgaEeqn8_FCtymnGA" target="_5ztzcD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5ztzdT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5ztzeT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_r6sUAFgaEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5ztzdj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5ztzdz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5ztzeD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_50IDJD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_7k-bkFgaEeqn8_FCtymnGA" target="_50IDID7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_50IDJT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_50IDKT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_7k5jEFgaEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_50IDJj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_50IDJz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_50IDKD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_50nyZD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_RRNegFgbEeqn8_FCtymnGA" target="_50nyYD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_50nyZT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_50oZcT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_RRImAFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_50nyZj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_50nyZz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_50oZcD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_51IItD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_Wq3DwFgbEeqn8_FCtymnGA" target="_51IIsD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_51IItT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_51IIuT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WqyyUFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_51IItj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_51IItz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_51IIuD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_51iYZD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_mGFboFgbEeqn8_FCtymnGA" target="_51iYYD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_51iYZT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_51iYaT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_mGBKMFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_51iYZj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_51iYZz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_51iYaD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_518BBD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_75_M0FgbEeqn8_FCtymnGA" target="_518BAD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_518BBT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_518oEj7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_756UUFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_518BBj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_518oED7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_518oET7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_52bJMT7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_h6zyIHsGEeq4wOIfUPyLYg" target="_52aiID7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_52bJMj7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_52bJNj7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_h6uSkHsGEeq4wOIfUPyLYg"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_52bJMz7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_52bJND7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_52bJNT7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_5231JD7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_RBk5QHsIEeq4wOIfUPyLYg" target="_5231ID7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_5231JT7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_5231KT7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_RBgAwHsIEeq4wOIfUPyLYg"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_5231Jj7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5231Jz7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_5231KD7DEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_53QPoT7DEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_d8sE0HsIEeq4wOIfUPyLYg" target="_53PokD7DEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_53QPoj7DEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_53QPpj7DEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_d8nMUHsIEeq4wOIfUPyLYg"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_53QPoz7DEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_53QPpD7DEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_53QPpT7DEeuZdKDsy66N5g"/>
+    </edges>
+  </notation:Diagram>
+  <nattable:Table xmi:id="_rN-70FgWEeqn8_FCtymnGA" name="RequirementTreeTable0" currentRowAxisProvider="_rN-71VgWEeqn8_FCtymnGA" currentColumnAxisProvider="_rN-70lgWEeqn8_FCtymnGA" tableKindId="org.eclipse.papyrus.sysml16.table.requirementTree">
+    <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_rOAxAFgWEeqn8_FCtymnGA" source="http://www.eclipse.org/papyrus/infra/nattable/version">
+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_rOAxAVgWEeqn8_FCtymnGA" key="version" value="1.3.0"/>
+    </eAnnotations>
+    <styles xmi:type="nattablestyle:IntListValueStyle" xmi:id="_rN-70VgWEeqn8_FCtymnGA" name="hiddenCategoriesByDepth">
+      <intListValue>0</intListValue>
+      <intListValue>1</intListValue>
+      <intListValue>2</intListValue>
+      <intListValue>3</intListValue>
+      <intListValue>4</intListValue>
+    </styles>
+    <styles xmi:type="nattablestyle:IntValueStyle" xmi:id="_YLbUEFgaEeqn8_FCtymnGA" name="rowHeaderWidth" intValue="181"/>
+    <context xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <owner xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.sysml16.nattable.requirement/resources/requirementTree.nattableconfiguration#_QpaQsF9WEeibbMBxjCBt2w"/>
+    <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_rN-70lgWEeqn8_FCtymnGA" description="Provides the columns of the tables with a default configuration" name="Requirements Feature Columns Provider">
+      <axis xmi:type="nattableaxis:FeatureIdAxis" xmi:id="_rN-701gWEeqn8_FCtymnGA" element="property_of_stereotype:/SysML::Requirements::AbstractRequirement::id">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.sysml16.nattable.requirement/resources/requirementTree.nattableconfiguration#org.eclipse.papyrus.sysml16.nattable.requirementtree.stereotype.property.axis.manager"/>
+      </axis>
+      <axis xmi:type="nattableaxis:FeatureIdAxis" xmi:id="_rN-71FgWEeqn8_FCtymnGA" element="property_of_stereotype:/SysML::Requirements::AbstractRequirement::text">
+        <styles xmi:type="nattablestyle:IntValueStyle" xmi:id="_9v14AFgXEeqn8_FCtymnGA" name="axisWidth" intValue="711"/>
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.sysml16.nattable.requirement/resources/requirementTree.nattableconfiguration#org.eclipse.papyrus.sysml16.nattable.requirementtree.stereotype.property.axis.manager"/>
+      </axis>
+    </columnAxisProvidersHistory>
+    <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_rN-71VgWEeqn8_FCtymnGA" description="This axis provider manages the rows, according to the wanted hierarchy" name="HierarchicalRowAxisManager" disconnectSlave="true"/>
+    <localRowHeaderAxisConfiguration xmi:type="nattableaxisconfiguration:LocalTableHeaderAxisConfiguration" xmi:id="_WznMkFgaEeqn8_FCtymnGA" indexStyle="NUMERIC">
+      <styles xmi:type="nattablestyle:IntValueStyle" xmi:id="_WznMkVgaEeqn8_FCtymnGA" name="rowLabelWidth" intValue="193"/>
+    </localRowHeaderAxisConfiguration>
+    <localColumnHeaderAxisConfiguration xmi:type="nattableaxisconfiguration:LocalTableHeaderAxisConfiguration" xmi:id="_jeJTkFgcEeqn8_FCtymnGA" indexStyle="NUMERIC" displayIndex="false"/>
+  </nattable:Table>
+  <notation:Diagram xmi:id="_sfBMUGOPEeqSio68DkJsew" type="PapyrusUMLClassDiagram" name="Requirements Level 1" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_t6lycGOPEeqSio68DkJsew" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_t6nnoGOPEeqSio68DkJsew" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_t6oOsGOPEeqSio68DkJsew" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_t6oOsWOPEeqSio68DkJsew" y="5"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_t6oOsmOPEeqSio68DkJsew" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_t6oOs2OPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_t6oOtGOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_t6oOtWOPEeqSio68DkJsew"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t6oOtmOPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_t6oOt2OPEeqSio68DkJsew" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_t6oOuGOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_t6oOuWOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_t6oOumOPEeqSio68DkJsew"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t6oOu2OPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_t6oOvGOPEeqSio68DkJsew" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_t6oOvWOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_t6oOvmOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_t6oOv2OPEeqSio68DkJsew"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t6oOwGOPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_t6uVUGOPEeqSio68DkJsew" type="StereotypeLabel">
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_t6u8YGOPEeqSio68DkJsew" name="stereotype" stringValue="SysML::Requirements::Requirement"/>
+        <element xmi:type="uml:Stereotype" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Requirements.stereotype_packagedElement_Requirement"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t6u8YWOPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_t6u8YmOPEeqSio68DkJsew" type="StereotypeBrace">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_t6u8Y2OPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_t6u8ZGOPEeqSio68DkJsew" name="stereotype" stringValue="SysML::Requirements::Requirement"/>
+        <element xmi:type="uml:Stereotype" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Requirements.stereotype_packagedElement_Requirement"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t6u8ZWOPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:Compartment" xmi:id="_t63fQGOPEeqSio68DkJsew" type="Flow Ports"/>
+      <children xmi:type="notation:Compartment" xmi:id="_t64GUGOPEeqSio68DkJsew" type="constraints"/>
+      <children xmi:type="notation:Compartment" xmi:id="_t64GUWOPEeqSio68DkJsew" type="Parts"/>
+      <children xmi:type="notation:Compartment" xmi:id="_t64tYGOPEeqSio68DkJsew" type="Proxy Ports"/>
+      <children xmi:type="notation:Compartment" xmi:id="_t64tYWOPEeqSio68DkJsew" type="Full Ports"/>
+      <children xmi:type="notation:Compartment" xmi:id="_t64tYmOPEeqSio68DkJsew" type="References"/>
+      <children xmi:type="notation:Compartment" xmi:id="_t64tY2OPEeqSio68DkJsew" type="Flow Properties"/>
+      <children xmi:type="notation:Compartment" xmi:id="_t64tZGOPEeqSio68DkJsew" type="Parameters"/>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_sFOUkFgQEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t6lycWOPEeqSio68DkJsew" x="160" y="140" width="210" height="113"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_t65Uc2OPEeqSio68DkJsew" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_t65UdGOPEeqSio68DkJsew"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_t65UdmOPEeqSio68DkJsew" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_sFOUkFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_t65UdWOPEeqSio68DkJsew" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_vxEy8GOPEeqSio68DkJsew" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_vxEy8mOPEeqSio68DkJsew" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_vxEy82OPEeqSio68DkJsew" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_vxEy9GOPEeqSio68DkJsew" y="5"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_vxEy9WOPEeqSio68DkJsew" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_vxEy9mOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_vxEy92OPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_vxEy-GOPEeqSio68DkJsew"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vxEy-WOPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_vxFaAGOPEeqSio68DkJsew" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_vxFaAWOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_vxFaAmOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_vxFaA2OPEeqSio68DkJsew"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vxFaBGOPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_vxFaBWOPEeqSio68DkJsew" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_vxFaBmOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_vxFaB2OPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_vxFaCGOPEeqSio68DkJsew"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vxFaCWOPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_vxJEYGOPEeqSio68DkJsew" type="StereotypeLabel">
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_vxJEYWOPEeqSio68DkJsew" name="stereotype" stringValue="SysML::Requirements::Requirement"/>
+        <element xmi:type="uml:Stereotype" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Requirements.stereotype_packagedElement_Requirement"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vxJEYmOPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_vxJEY2OPEeqSio68DkJsew" type="StereotypeBrace">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_vxJEZGOPEeqSio68DkJsew"/>
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_vxJEZWOPEeqSio68DkJsew" name="stereotype" stringValue="SysML::Requirements::Requirement"/>
+        <element xmi:type="uml:Stereotype" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Requirements.stereotype_packagedElement_Requirement"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vxJEZmOPEeqSio68DkJsew"/>
+      </children>
+      <children xmi:type="notation:Compartment" xmi:id="_vxKShGOPEeqSio68DkJsew" type="Flow Ports"/>
+      <children xmi:type="notation:Compartment" xmi:id="_vxK5kGOPEeqSio68DkJsew" type="constraints"/>
+      <children xmi:type="notation:Compartment" xmi:id="_vxK5kWOPEeqSio68DkJsew" type="Parts"/>
+      <children xmi:type="notation:Compartment" xmi:id="_vxK5kmOPEeqSio68DkJsew" type="Proxy Ports"/>
+      <children xmi:type="notation:Compartment" xmi:id="_vxK5k2OPEeqSio68DkJsew" type="Full Ports"/>
+      <children xmi:type="notation:Compartment" xmi:id="_vxK5lGOPEeqSio68DkJsew" type="References"/>
+      <children xmi:type="notation:Compartment" xmi:id="_vxK5lWOPEeqSio68DkJsew" type="Flow Properties"/>
+      <children xmi:type="notation:Compartment" xmi:id="_vxLgoGOPEeqSio68DkJsew" type="Parameters"/>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZE_IYFgREeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vxEy8WOPEeqSio68DkJsew" x="500" y="140" width="181" height="101"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_vxMHs2OPEeqSio68DkJsew" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_vxMHtGOPEeqSio68DkJsew"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_vxMHtmOPEeqSio68DkJsew" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZE_IYFgREeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_vxMHtWOPEeqSio68DkJsew" x="200"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_sfBMUWOPEeqSio68DkJsew" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_sfBMUmOPEeqSio68DkJsew"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_sfBMU2OPEeqSio68DkJsew" diagramKindId="org.eclipse.papyrus.sysml16.diagram.blockdefinition">
+      <owner xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    </styles>
+    <element xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <edges xmi:type="notation:Connector" xmi:id="_t65Ud2OPEeqSio68DkJsew" type="StereotypeCommentLink" source="_t6lycGOPEeqSio68DkJsew" target="_t65Uc2OPEeqSio68DkJsew">
+      <styles xmi:type="notation:FontStyle" xmi:id="_t65UeGOPEeqSio68DkJsew"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_t65UfGOPEeqSio68DkJsew" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_sFOUkFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_t65UeWOPEeqSio68DkJsew" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t65UemOPEeqSio68DkJsew"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_t65Ue2OPEeqSio68DkJsew"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_vxMHt2OPEeqSio68DkJsew" type="StereotypeCommentLink" source="_vxEy8GOPEeqSio68DkJsew" target="_vxMHs2OPEeqSio68DkJsew">
+      <styles xmi:type="notation:FontStyle" xmi:id="_vxMHuGOPEeqSio68DkJsew"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_vxMuwmOPEeqSio68DkJsew" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZE_IYFgREeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_vxMHuWOPEeqSio68DkJsew" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vxMuwGOPEeqSio68DkJsew"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_vxMuwWOPEeqSio68DkJsew"/>
+    </edges>
+  </notation:Diagram>
+  <notation:Diagram xmi:id="_POG4cD7EEeuZdKDsy66N5g" type="PapyrusUMLClassDiagram" name="TestCases" measurementUnit="Pixel">
+    <children xmi:type="notation:Shape" xmi:id="_bDo8AD7EEeuZdKDsy66N5g" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_bDrYQD7EEeuZdKDsy66N5g" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_bDrYQT7EEeuZdKDsy66N5g" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_bDr_UD7EEeuZdKDsy66N5g" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_bDr_UT7EEeuZdKDsy66N5g" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_bDr_Uj7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_bDr_Uz7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_bDr_VD7EEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bDr_VT7EEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_bDr_Vj7EEeuZdKDsy66N5g" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_bDr_Vz7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_bDr_WD7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_bDr_WT7EEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bDr_Wj7EEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_bDr_Wz7EEeuZdKDsy66N5g" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_bDr_XD7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_bDr_XT7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_bDr_Xj7EEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bDr_Xz7EEeuZdKDsy66N5g"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_sFOUkFgQEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bDo8AT7EEeuZdKDsy66N5g" x="80" y="-280" width="161" height="121"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_bDzUEz7EEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_bDzUFD7EEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_bDz7ID7EEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_sFOUkFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_bDzUFT7EEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_jf3hcD7EEeuZdKDsy66N5g" type="NamedElement_DefaultShape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_jf4IgD7EEeuZdKDsy66N5g" type="NamedElement_NameLabel"/>
+      <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_jfBz8D7EEeuZdKDsy66N5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jf3hcT7EEeuZdKDsy66N5g" x="400" y="-240"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_jf_dRz7EEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_jf_dSD7EEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_jgAEUD7EEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_jfBz8D7EEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_jf_dST7EEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_n6Yk8D7EEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_n6Yk8T7EEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_n6Yk8z7EEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_n6CmsD7EEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_n6Yk8j7EEeuZdKDsy66N5g" x="580" y="20"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="__eFf0D7EEeuZdKDsy66N5g" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="__eGG4T7EEeuZdKDsy66N5g" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="__eGG4j7EEeuZdKDsy66N5g" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="__eGG4z7EEeuZdKDsy66N5g" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__eGG5D7EEeuZdKDsy66N5g" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="__eGG5T7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__eGG5j7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__eGG5z7EEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__eGG6D7EEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__eGt8D7EEeuZdKDsy66N5g" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="__eGt8T7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__eGt8j7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__eGt8z7EEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__eGt9D7EEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="__eGt9T7EEeuZdKDsy66N5g" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="__eGt9j7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="__eGt9z7EEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="__eGt-D7EEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="__eGt-T7EEeuZdKDsy66N5g"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ukhokFgQEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="__eGG4D7EEeuZdKDsy66N5g" x="80" y="220" width="161" height="115"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="__eMNgD7EEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="__eMNgT7EEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="__eMNgz7EEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ukhokFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="__eMNgj7EEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_C0ZUUD7FEeuZdKDsy66N5g" type="NamedElement_DefaultShape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_C0Z7YD7FEeuZdKDsy66N5g" type="NamedElement_NameLabel"/>
+      <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_C0Ub0D7FEeuZdKDsy66N5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_C0ZUUT7FEeuZdKDsy66N5g" x="400" y="240"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_C0c-sz7FEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_C0c-tD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_C0c-tj7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_C0Ub0D7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_C0c-tT7FEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_HB-vEz7FEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_HB-vFD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_HB-vFj7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_HBm7oD7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HB-vFT7FEeuZdKDsy66N5g" x="580" y="180"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Jtmn0D7FEeuZdKDsy66N5g" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_JtnO4T7FEeuZdKDsy66N5g" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_JtnO4j7FEeuZdKDsy66N5g" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_JtnO4z7FEeuZdKDsy66N5g" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_JtnO5D7FEeuZdKDsy66N5g" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_JtnO5T7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_JtnO5j7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JtnO5z7FEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtnO6D7FEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_JtnO6T7FEeuZdKDsy66N5g" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_JtnO6j7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_JtnO6z7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JtnO7D7FEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtnO7T7FEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_JtnO7j7FEeuZdKDsy66N5g" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_JtnO7z7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_JtnO8D7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_JtnO8T7FEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtnO8j7FEeuZdKDsy66N5g"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_v6A00FgQEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtnO4D7FEeuZdKDsy66N5g" x="80" y="334" width="161" height="101"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Jtsucz7FEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_JtsudD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Jtsudj7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_v6A00FgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_JtsudT7FEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_LK1a0D7FEeuZdKDsy66N5g" type="NamedElement_DefaultShape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_LK1a0j7FEeuZdKDsy66N5g" type="NamedElement_NameLabel"/>
+      <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_LKxJYD7FEeuZdKDsy66N5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LK1a0T7FEeuZdKDsy66N5g" x="420" y="354"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_LK4eJz7FEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_LK4eKD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_LK4eKj7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_LKxJYD7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_LK4eKT7FEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Po-aED7FEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_Po-aET7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Po-aEz7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_PoggAD7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Po-aEj7FEeuZdKDsy66N5g" x="600" y="340"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_YF2fwD7FEeuZdKDsy66N5g" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_YF2fwj7FEeuZdKDsy66N5g" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_YF2fwz7FEeuZdKDsy66N5g" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_YF2fxD7FEeuZdKDsy66N5g" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_YF2fxT7FEeuZdKDsy66N5g" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_YF2fxj7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_YF2fxz7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_YF2fyD7FEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YF2fyT7FEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_YF2fyj7FEeuZdKDsy66N5g" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_YF2fyz7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_YF2fzD7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_YF2fzT7FEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YF2fzj7FEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_YF2fzz7FEeuZdKDsy66N5g" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_YF2f0D7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_YF2f0T7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_YF2f0j7FEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YF2f0z7FEeuZdKDsy66N5g"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZE_IYFgREeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YF2fwT7FEeuZdKDsy66N5g" x="80" y="620" width="161"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_YF7YQz7FEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_YF7YRD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_YF7YRj7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZE_IYFgREeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_YF7YRT7FEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_x-IFUD7FEeuZdKDsy66N5g" type="NamedElement_DefaultShape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_x-IsYD7FEeuZdKDsy66N5g" type="NamedElement_NameLabel"/>
+      <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_x-DM0D7FEeuZdKDsy66N5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_x-IFUT7FEeuZdKDsy66N5g" x="380" y="625"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_x-LvsD7FEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_x-LvsT7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_x-Lvsz7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_x-DM0D7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_x-Lvsj7FEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_1SAQ4z7FEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_1SAQ5D7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_1SAQ5j7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_1RbpID7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_1SAQ5T7FEeuZdKDsy66N5g" x="620" y="400"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_7QF_8D7FEeuZdKDsy66N5g" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_7QGnAT7FEeuZdKDsy66N5g" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_7QGnAj7FEeuZdKDsy66N5g" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_7QGnAz7FEeuZdKDsy66N5g" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_7QGnBD7FEeuZdKDsy66N5g" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_7QGnBT7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_7QGnBj7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_7QGnBz7FEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7QGnCD7FEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_7QGnCT7FEeuZdKDsy66N5g" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_7QGnCj7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_7QGnCz7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_7QGnDD7FEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7QGnDT7FEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_7QGnDj7FEeuZdKDsy66N5g" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_7QGnDz7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_7QGnED7FEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_7QGnET7FEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7QGnEj7FEeuZdKDsy66N5g"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_QSUfQFgZEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7QGnAD7FEeuZdKDsy66N5g" x="80" y="460" width="161" height="121"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_7QKRbz7FEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_7QKRcD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_7QKRcj7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_QSUfQFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7QKRcT7FEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_FgHeQD7GEeuZdKDsy66N5g" type="NamedElement_DefaultShape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_FgHeQj7GEeuZdKDsy66N5g" type="NamedElement_NameLabel"/>
+      <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_FgDM0D7GEeuZdKDsy66N5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FgHeQT7GEeuZdKDsy66N5g" x="400" y="480"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_FgKhkz7GEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_FgKhlD7GEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FgKhlj7GEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_FgDM0D7GEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_FgKhlT7GEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_Mvxi4z7GEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_Mvxi5D7GEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_MvyJ8D7GEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_MvLF8D7GEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Mvxi5T7GEeuZdKDsy66N5g" x="600" y="380"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_dOQukD7GEeuZdKDsy66N5g" type="Class_Shape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_dORVoD7GEeuZdKDsy66N5g" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_dORVoT7GEeuZdKDsy66N5g" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_dORVoj7GEeuZdKDsy66N5g" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_dORVoz7GEeuZdKDsy66N5g" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_dORVpD7GEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_dORVpT7GEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_dORVpj7GEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dORVpz7GEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_dORVqD7GEeuZdKDsy66N5g" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_dORVqT7GEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_dORVqj7GEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_dORVqz7GEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dORVrD7GEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_dORVrT7GEeuZdKDsy66N5g" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_dORVrj7GEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_dORVrz7GEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_dORVsD7GEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dORVsT7GEeuZdKDsy66N5g"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WaG5sFgVEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dOQukT7GEeuZdKDsy66N5g" x="80" y="740" width="161"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_dOWOJT7GEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_dOWOJj7GEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_dOWOKD7GEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WaG5sFgVEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_dOWOJz7GEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_BXym4D7aEeuZdKDsy66N5g" type="NamedElement_DefaultShape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_BXym4j7aEeuZdKDsy66N5g" type="NamedElement_NameLabel"/>
+      <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_BXu8gD7aEeuZdKDsy66N5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BXym4T7aEeuZdKDsy66N5g" x="400" y="760"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_BX2RQz7aEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_BX2RRD7aEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_BX2RRj7aEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_BXu8gD7aEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_BX2RRT7aEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_xpeecz7aEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_xpeedD7aEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_xpeedj7aEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_xo7r4D7aEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_xpeedT7aEeuZdKDsy66N5g" x="600" y="660"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_pvaVcD7bEeuZdKDsy66N5g" type="Class_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_pwUUYD7bEeuZdKDsy66N5g" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pwUUYT7bEeuZdKDsy66N5g" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pwUUYj7bEeuZdKDsy66N5g" key="StereotypeList" value="&quot;org.eclipse.uml2.uml.internal.impl.ProfileImpl@1c96d596 (name: Requirements, visibility: &lt;unset>) (URI: http://www.eclipse.org/papyrus/sysml/1.6/SysML/Requirements)&quot;::Requirement"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pwUUYz7bEeuZdKDsy66N5g" key="Stereotype_Presentation_Kind" value="Compartment"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pwUUZD7bEeuZdKDsy66N5g" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pwUUZT7bEeuZdKDsy66N5g" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_pvaVcj7bEeuZdKDsy66N5g" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_pvaVcz7bEeuZdKDsy66N5g" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_pvaVdD7bEeuZdKDsy66N5g" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_pvaVdT7bEeuZdKDsy66N5g" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_pvaVdj7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_pvaVdz7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_pvaVeD7bEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pvaVeT7bEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_pvaVej7bEeuZdKDsy66N5g" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_pvaVez7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_pvaVfD7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_pvaVfT7bEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pvaVfj7bEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_pva8gD7bEeuZdKDsy66N5g" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_pva8gT7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_pva8gj7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_pva8gz7bEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pva8hD7bEeuZdKDsy66N5g"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_RRImAFgbEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pvaVcT7bEeuZdKDsy66N5g" x="80" y="-140" width="161"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_pvfN_T7bEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_pvfN_j7bEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_pvfOAD7bEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_RRImAFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pvfN_z7bEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_uy75sD7bEeuZdKDsy66N5g" type="NamedElement_DefaultShape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_uy75sj7bEeuZdKDsy66N5g" type="NamedElement_NameLabel"/>
+      <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_uy3oQD7bEeuZdKDsy66N5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uy75sT7bEeuZdKDsy66N5g" x="400" y="-120"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_uy-V-j7bEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_uy-V-z7bEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_uy-9AD7bEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_uy3oQD7bEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_uy-V_D7bEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_y_eyoz7bEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_y_eypD7bEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_y_fZsD7bEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_y-6x8D7bEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y_eypT7bEeuZdKDsy66N5g" x="600" y="-20"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_7lxTAD7bEeuZdKDsy66N5g" type="Class_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_7mtHID7bEeuZdKDsy66N5g" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7mtuMD7bEeuZdKDsy66N5g" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7mtuMT7bEeuZdKDsy66N5g" key="StereotypeList" value="&quot;org.eclipse.uml2.uml.internal.impl.ProfileImpl@1c96d596 (name: Requirements, visibility: &lt;unset>) (URI: http://www.eclipse.org/papyrus/sysml/1.6/SysML/Requirements)&quot;::Requirement"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7mtuMj7bEeuZdKDsy66N5g" key="Stereotype_Presentation_Kind" value="Compartment"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7mtuMz7bEeuZdKDsy66N5g" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_7mtuND7bEeuZdKDsy66N5g" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_7lx6ED7bEeuZdKDsy66N5g" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_7lx6ET7bEeuZdKDsy66N5g" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_7lx6Ej7bEeuZdKDsy66N5g" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_7lx6Ez7bEeuZdKDsy66N5g" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_7lx6FD7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_7lx6FT7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_7lx6Fj7bEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7lx6Fz7bEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_7lx6GD7bEeuZdKDsy66N5g" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_7lx6GT7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_7lx6Gj7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_7lx6Gz7bEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7lx6HD7bEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_7lx6HT7bEeuZdKDsy66N5g" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_7lx6Hj7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_7lx6Hz7bEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_7lx6ID7bEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7lx6IT7bEeuZdKDsy66N5g"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WqyyUFgbEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7lxTAT7bEeuZdKDsy66N5g" x="80" y="-20" width="161" height="101"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_7l2Lgz7bEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_7l2LhD7bEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_7l2Lhj7bEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WqyyUFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7l2LhT7bEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_nRsgYD7cEeuZdKDsy66N5g" type="NamedElement_DefaultShape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_nRsgYj7cEeuZdKDsy66N5g" type="NamedElement_NameLabel"/>
+      <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_nRoO8D7cEeuZdKDsy66N5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nRsgYT7cEeuZdKDsy66N5g" x="400"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_nRvjsz7cEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_nRvjtD7cEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nRvjtj7cEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_nRoO8D7cEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_nRvjtT7cEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_wieIMz7cEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_wieIND7cEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wieINj7cEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_wh0n8D7cEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wieINT7cEeuZdKDsy66N5g" x="600" y="-100"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_CS4OwD7dEeuZdKDsy66N5g" type="Class_Shape">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_CTxmoD7dEeuZdKDsy66N5g" source="Stereotype_Annotation">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CTxmoT7dEeuZdKDsy66N5g" key="StereotypeWithQualifiedNameList" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CTxmoj7dEeuZdKDsy66N5g" key="StereotypeList" value="&quot;org.eclipse.uml2.uml.internal.impl.ProfileImpl@1c96d596 (name: Requirements, visibility: &lt;unset>) (URI: http://www.eclipse.org/papyrus/sysml/1.6/SysML/Requirements)&quot;::Requirement"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CTxmoz7dEeuZdKDsy66N5g" key="Stereotype_Presentation_Kind" value="Compartment"/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CTxmpD7dEeuZdKDsy66N5g" key="PropStereoDisplay" value=""/>
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_CTxmpT7dEeuZdKDsy66N5g" key="StereotypePropertyLocation" value="Compartment"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_CS4Owj7dEeuZdKDsy66N5g" type="Class_NameLabel"/>
+      <children xmi:type="notation:DecorationNode" xmi:id="_CS4Owz7dEeuZdKDsy66N5g" type="Class_FloatingNameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_CS4OxD7dEeuZdKDsy66N5g" y="15"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_CS4OxT7dEeuZdKDsy66N5g" type="Class_AttributeCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_CS4Oxj7dEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_CS4Oxz7dEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_CS4OyD7dEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CS4OyT7dEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_CS4Oyj7dEeuZdKDsy66N5g" type="Class_OperationCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_CS4Oyz7dEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_CS4OzD7dEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_CS4OzT7dEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CS4Ozj7dEeuZdKDsy66N5g"/>
+      </children>
+      <children xmi:type="notation:BasicCompartment" xmi:id="_CS410D7dEeuZdKDsy66N5g" type="Class_NestedClassifierCompartment">
+        <styles xmi:type="notation:TitleStyle" xmi:id="_CS410T7dEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:SortingStyle" xmi:id="_CS410j7dEeuZdKDsy66N5g"/>
+        <styles xmi:type="notation:FilteringStyle" xmi:id="_CS410z7dEeuZdKDsy66N5g"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CS411D7dEeuZdKDsy66N5g"/>
+      </children>
+      <element xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_mGBKMFgbEeqn8_FCtymnGA"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CS4OwT7dEeuZdKDsy66N5g" x="80" y="100" width="161"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_CS9HQz7dEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_CS9HRD7dEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_CS9HRj7dEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_mGBKMFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_CS9HRT7dEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_POo6kD7dEeuZdKDsy66N5g" type="NamedElement_DefaultShape">
+      <children xmi:type="notation:DecorationNode" xmi:id="_POo6kj7dEeuZdKDsy66N5g" type="NamedElement_NameLabel"/>
+      <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_POkpID7dEeuZdKDsy66N5g"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_POo6kT7dEeuZdKDsy66N5g" x="400" y="120"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_POr95z7dEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_POr96D7dEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_POr96j7dEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_POkpID7dEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_POr96T7dEeuZdKDsy66N5g" x="200"/>
+    </children>
+    <children xmi:type="notation:Shape" xmi:id="_VNXi0z7dEeuZdKDsy66N5g" type="StereotypeComment">
+      <styles xmi:type="notation:TitleStyle" xmi:id="_VNXi1D7dEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VNXi1j7dEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_VMq_QD7dEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <layoutConstraint xmi:type="notation:Bounds" xmi:id="_VNXi1T7dEeuZdKDsy66N5g" x="600" y="20"/>
+    </children>
+    <styles xmi:type="notation:StringValueStyle" xmi:id="_POG4cT7EEeuZdKDsy66N5g" name="diagram_compatibility_version" stringValue="1.4.0"/>
+    <styles xmi:type="notation:DiagramStyle" xmi:id="_POG4cj7EEeuZdKDsy66N5g"/>
+    <styles xmi:type="style:PapyrusDiagramStyle" xmi:id="_POG4cz7EEeuZdKDsy66N5g" diagramKindId="org.eclipse.papyrus.sysml16.diagram.requirement">
+      <owner xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    </styles>
+    <element xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <edges xmi:type="notation:Connector" xmi:id="_bD0iMD7EEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_bDo8AD7EEeuZdKDsy66N5g" target="_bDzUEz7EEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_bD0iMT7EEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_bD1JQD7EEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_sFOUkFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_bD0iMj7EEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bD0iMz7EEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_bD0iND7EEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_jgAEUT7EEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_jf3hcD7EEeuZdKDsy66N5g" target="_jf_dRz7EEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_jgAEUj7EEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_jgAEVj7EEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_jfBz8D7EEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_jgAEUz7EEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jgAEVD7EEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_jgAEVT7EEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_n6MXsD7EEeuZdKDsy66N5g" type="Abstraction_Edge" source="_jf3hcD7EEeuZdKDsy66N5g" target="_bDo8AD7EEeuZdKDsy66N5g">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_nItuED7dEeuZdKDsy66N5g" source="PapyrusCSSForceValue">
+        <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_nItuET7dEeuZdKDsy66N5g" key="routing" value="true"/>
+      </eAnnotations>
+      <children xmi:type="notation:DecorationNode" xmi:id="_n6MXsz7EEeuZdKDsy66N5g" type="Abstraction_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_XYpbgD7FEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_n6MXtD7EEeuZdKDsy66N5g" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_n6M-wD7EEeuZdKDsy66N5g" type="Abstraction_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_XY2P0D7FEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_n6M-wT7EEeuZdKDsy66N5g" x="-6" y="15"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_n6X94D7EEeuZdKDsy66N5g" type="StereotypeLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_qXld0D7dEeuZdKDsy66N5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_qXld0T7dEeuZdKDsy66N5g" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_n6X94T7EEeuZdKDsy66N5g" name="stereotype" stringValue="SysML::Requirements::Verify"/>
+        <element xmi:type="uml:Stereotype" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Requirements.stereotype_packagedElement_Verify"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_n6X94j7EEeuZdKDsy66N5g"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_n6MXsT7EEeuZdKDsy66N5g"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_n6CmsD7EEeuZdKDsy66N5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_n6MXsj7EEeuZdKDsy66N5g" points="[400, -126, -643984, -643984]$[241, -126, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n6lZQD7EEeuZdKDsy66N5g" id="(0.0,0.8)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n6lZQT7EEeuZdKDsy66N5g" id="(1.0,0.6611570247933884)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_n6Yk9D7EEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_n6MXsD7EEeuZdKDsy66N5g" target="_n6Yk8D7EEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_n6Yk9T7EEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_n6Yk-T7EEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_n6CmsD7EEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_n6Yk9j7EEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n6Yk9z7EEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_n6Yk-D7EEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="__eMNhD7EEeuZdKDsy66N5g" type="StereotypeCommentLink" source="__eFf0D7EEeuZdKDsy66N5g" target="__eMNgD7EEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="__eMNhT7EEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="__eMNiT7EEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ukhokFgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="__eMNhj7EEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="__eMNhz7EEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="__eMNiD7EEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_C0c-tz7FEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_C0ZUUD7FEeuZdKDsy66N5g" target="_C0c-sz7FEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_C0c-uD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_C0c-vD7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_C0Ub0D7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_C0c-uT7FEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_C0c-uj7FEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_C0c-uz7FEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_HBtpUD7FEeuZdKDsy66N5g" type="Abstraction_Edge" source="_C0ZUUD7FEeuZdKDsy66N5g" target="__eFf0D7EEeuZdKDsy66N5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_HBtpUz7FEeuZdKDsy66N5g" type="Abstraction_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_XZYbUD7FEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_HBtpVD7FEeuZdKDsy66N5g" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_HBtpVT7FEeuZdKDsy66N5g" type="Abstraction_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_XZkBgD7FEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_HBtpVj7FEeuZdKDsy66N5g" x="-6" y="15"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_HBtpUT7FEeuZdKDsy66N5g"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_HBm7oD7FEeuZdKDsy66N5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HBtpUj7FEeuZdKDsy66N5g" points="[420, 244, -643984, -643984]$[241, 234, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HCPNwD7FEeuZdKDsy66N5g" id="(0.0,0.4)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HCPNwT7FEeuZdKDsy66N5g" id="(1.0,0.34782608695652173)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_HB-vFz7FEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_HBtpUD7FEeuZdKDsy66N5g" target="_HB-vEz7FEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_HB-vGD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_HB_WIj7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_HBm7oD7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HB-vGT7FEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HB_WID7FEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HB_WIT7FEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_Jtsudz7FEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_Jtmn0D7FEeuZdKDsy66N5g" target="_Jtsucz7FEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_JtsueD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_JttVgj7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_v6A00FgQEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_JtsueT7FEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JttVgD7FEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_JttVgT7FEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_LK5FMD7FEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_LK1a0D7FEeuZdKDsy66N5g" target="_LK4eJz7FEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_LK5FMT7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_LK5FNT7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_LKxJYD7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_LK5FMj7FEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LK5FMz7FEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_LK5FND7FEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_Pol_kD7FEeuZdKDsy66N5g" type="Abstraction_Edge" source="_LK1a0D7FEeuZdKDsy66N5g" target="_Jtmn0D7FEeuZdKDsy66N5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_Pol_kz7FEeuZdKDsy66N5g" type="Abstraction_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_XZCdED7FEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Pol_lD7FEeuZdKDsy66N5g" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_Pol_lT7FEeuZdKDsy66N5g" type="Abstraction_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_XZNcMD7FEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_Pol_lj7FEeuZdKDsy66N5g" x="4" y="15"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_Pol_kT7FEeuZdKDsy66N5g"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_PoggAD7FEeuZdKDsy66N5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Pol_kj7FEeuZdKDsy66N5g" points="[420, 394, -643984, -643984]$[241, 394, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PpTKMD7FEeuZdKDsy66N5g" id="(0.0,0.8)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_PpTKMT7FEeuZdKDsy66N5g" id="(1.0,0.594059405940594)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_Po-aFD7FEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_Pol_kD7FEeuZdKDsy66N5g" target="_Po-aED7FEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_Po-aFT7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_Po-aGT7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_PoggAD7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Po-aFj7FEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Po-aFz7FEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Po-aGD7FEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_YF7YRz7FEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_YF2fwD7FEeuZdKDsy66N5g" target="_YF7YQz7FEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_YF7YSD7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_YF7YTD7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_ZE_IYFgREeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_YF7YST7FEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YF7YSj7FEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_YF7YSz7FEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_x-LvtD7FEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_x-IFUD7FEeuZdKDsy66N5g" target="_x-LvsD7FEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_x-LvtT7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_x-LvuT7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_x-DM0D7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_x-Lvtj7FEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_x-Lvtz7FEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_x-LvuD7FEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_1Rf6kD7FEeuZdKDsy66N5g" type="Abstraction_Edge" source="_x-IFUD7FEeuZdKDsy66N5g" target="_YF2fwD7FEeuZdKDsy66N5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_1RghoD7FEeuZdKDsy66N5g" type="Abstraction_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_9UYL4D7FEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_1RghoT7FEeuZdKDsy66N5g" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_1Rghoj7FEeuZdKDsy66N5g" type="Abstraction_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_9UnccD7FEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_1Rghoz7FEeuZdKDsy66N5g" x="4" y="15"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_1Rf6kT7FEeuZdKDsy66N5g"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_1RbpID7FEeuZdKDsy66N5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1Rf6kj7FEeuZdKDsy66N5g" points="[420, 540, -643984, -643984]$[241, 540, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1SWPID7FEeuZdKDsy66N5g" id="(0.0,0.7)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1SWPIT7FEeuZdKDsy66N5g" id="(1.0,0.4)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_1SAQ5z7FEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_1Rf6kD7FEeuZdKDsy66N5g" target="_1SAQ4z7FEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_1SAQ6D7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_1SAQ7D7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_1RbpID7FEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_1SAQ6T7FEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1SAQ6j7FEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_1SAQ6z7FEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_7QK4cD7FEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_7QF_8D7FEeuZdKDsy66N5g" target="_7QKRbz7FEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_7QK4cT7FEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_7QK4dT7FEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_QSUfQFgZEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_7QK4cj7FEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7QK4cz7FEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7QK4dD7FEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_FgKhlz7GEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_FgHeQD7GEeuZdKDsy66N5g" target="_FgKhkz7GEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_FgKhmD7GEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_FgKhnD7GEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_FgDM0D7GEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_FgKhmT7GEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FgKhmj7GEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_FgKhmz7GEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_MvP-cD7GEeuZdKDsy66N5g" type="Abstraction_Edge" source="_FgHeQD7GEeuZdKDsy66N5g" target="_7QF_8D7FEeuZdKDsy66N5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_MvQlgj7GEeuZdKDsy66N5g" type="Abstraction_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_MvQlgz7GEeuZdKDsy66N5g" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_MvQlhD7GEeuZdKDsy66N5g" type="Abstraction_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_MvQlhT7GEeuZdKDsy66N5g" x="-6" y="15"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_MvQlgD7GEeuZdKDsy66N5g"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_MvLF8D7GEeuZdKDsy66N5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MvQlgT7GEeuZdKDsy66N5g" points="[400, 500, -643984, -643984]$[241, 500, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MwLLgD7GEeuZdKDsy66N5g" id="(0.0,0.4)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MwLLgT7GEeuZdKDsy66N5g" id="(1.0,0.3305785123966942)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_MvyJ8T7GEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_MvP-cD7GEeuZdKDsy66N5g" target="_Mvxi4z7GEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_MvyJ8j7GEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_MvyJ9j7GEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_MvLF8D7GEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_MvyJ8z7GEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MvyJ9D7GEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_MvyJ9T7GEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_dOWOKT7GEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_dOQukD7GEeuZdKDsy66N5g" target="_dOWOJT7GEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_dOWOKj7GEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_dOWOLj7GEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WaG5sFgVEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_dOWOKz7GEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dOWOLD7GEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_dOWOLT7GEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_BX2RRz7aEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_BXym4D7aEeuZdKDsy66N5g" target="_BX2RQz7aEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_BX2RSD7aEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_BX2RTD7aEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_BXu8gD7aEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_BX2RST7aEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BX2RSj7aEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_BX2RSz7aEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_xo_9UD7aEeuZdKDsy66N5g" type="Abstraction_Edge" source="_BXym4D7aEeuZdKDsy66N5g" target="_dOQukD7GEeuZdKDsy66N5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_xo_9Uz7aEeuZdKDsy66N5g" type="Abstraction_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_xo_9VD7aEeuZdKDsy66N5g" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_xo_9VT7aEeuZdKDsy66N5g" type="Abstraction_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_xo_9Vj7aEeuZdKDsy66N5g" x="-6" y="15"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_xo_9UT7aEeuZdKDsy66N5g"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_xo7r4D7aEeuZdKDsy66N5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xo_9Uj7aEeuZdKDsy66N5g" points="[400, 780, -643984, -643984]$[241, 780, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xp1DwD7aEeuZdKDsy66N5g" id="(0.0,0.4)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xp1DwT7aEeuZdKDsy66N5g" id="(1.0,0.4)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_xpeedz7aEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_xo_9UD7aEeuZdKDsy66N5g" target="_xpeecz7aEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_xpeeeD7aEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_xpeefD7aEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_xo7r4D7aEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_xpeeeT7aEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xpeeej7aEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_xpeeez7aEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_pvfOAT7bEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_pvaVcD7bEeuZdKDsy66N5g" target="_pvfN_T7bEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_pvfOAj7bEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_pvf1Aj7bEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_RRImAFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_pvfOAz7bEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pvf1AD7bEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pvf1AT7bEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_uy-9AT7bEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_uy75sD7bEeuZdKDsy66N5g" target="_uy-V-j7bEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_uy-9Aj7bEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_uy-9Bj7bEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_uy3oQD7bEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_uy-9Az7bEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_uy-9BD7bEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_uy-9BT7bEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_y-_qcD7bEeuZdKDsy66N5g" type="Abstraction_Edge" source="_uy75sD7bEeuZdKDsy66N5g" target="_pvaVcD7bEeuZdKDsy66N5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_y_ARgD7bEeuZdKDsy66N5g" type="Abstraction_NameLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_6ZS40D7bEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_y_ARgT7bEeuZdKDsy66N5g" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_y_ARgj7bEeuZdKDsy66N5g" type="Abstraction_StereotypeLabel">
+        <styles xmi:type="notation:BooleanValueStyle" xmi:id="_6Zj-kD7bEeuZdKDsy66N5g" name="IS_UPDATED_POSITION" booleanValue="true"/>
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_y_ARgz7bEeuZdKDsy66N5g" x="-6" y="15"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_y_eyoD7bEeuZdKDsy66N5g" type="StereotypeLabel">
+        <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_rTAkQD7dEeuZdKDsy66N5g" source="PapyrusCSSForceValue">
+          <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_rTBLUD7dEeuZdKDsy66N5g" key="visible" value="true"/>
+        </eAnnotations>
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_y_eyoT7bEeuZdKDsy66N5g" name="stereotype" stringValue="SysML::Requirements::Verify"/>
+        <element xmi:type="uml:Stereotype" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Requirements.stereotype_packagedElement_Verify"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_y_eyoj7bEeuZdKDsy66N5g"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_y-_qcT7bEeuZdKDsy66N5g"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_y-6x8D7bEeuZdKDsy66N5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y-_qcj7bEeuZdKDsy66N5g" points="[400, -100, -643984, -643984]$[241, -100, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y_2mED7bEeuZdKDsy66N5g" id="(0.0,0.4)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y_3NID7bEeuZdKDsy66N5g" id="(1.0,0.4)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_y_fZsT7bEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_y-_qcD7bEeuZdKDsy66N5g" target="_y_eyoz7bEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_y_fZsj7bEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_y_fZtj7bEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_y-6x8D7bEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_y_fZsz7bEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y_fZtD7bEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_y_fZtT7bEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_7l2Lhz7bEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_7lxTAD7bEeuZdKDsy66N5g" target="_7l2Lgz7bEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_7l2LiD7bEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_7l2LjD7bEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_WqyyUFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_7l2LiT7bEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7l2Lij7bEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_7l2Liz7bEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_nRvjtz7cEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_nRsgYD7cEeuZdKDsy66N5g" target="_nRvjsz7cEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_nRvjuD7cEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_nRvjvD7cEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_nRoO8D7cEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_nRvjuT7cEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nRvjuj7cEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_nRvjuz7cEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_wh45YD7cEeuZdKDsy66N5g" type="Abstraction_Edge" source="_nRsgYD7cEeuZdKDsy66N5g" target="_7lxTAD7bEeuZdKDsy66N5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_wh5gcD7cEeuZdKDsy66N5g" type="Abstraction_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_wh5gcT7cEeuZdKDsy66N5g" x="2" y="35"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_wh5gcj7cEeuZdKDsy66N5g" type="Abstraction_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_wh5gcz7cEeuZdKDsy66N5g" x="-6" y="15"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_wieIMD7cEeuZdKDsy66N5g" visible="false" type="StereotypeLabel">
+        <styles xmi:type="notation:StringValueStyle" xmi:id="_wieIMT7cEeuZdKDsy66N5g" name="stereotype" stringValue="SysML::Requirements::Verify"/>
+        <element xmi:type="uml:Stereotype" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Requirements.stereotype_packagedElement_Verify"/>
+        <layoutConstraint xmi:type="notation:Bounds" xmi:id="_wieIMj7cEeuZdKDsy66N5g"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_wh45YT7cEeuZdKDsy66N5g"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_wh0n8D7cEeuZdKDsy66N5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wh45Yj7cEeuZdKDsy66N5g" points="[420, 50, -643984, -643984]$[241, 40, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wi6NED7cEeuZdKDsy66N5g" id="(0.0,0.4)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wi6NET7cEeuZdKDsy66N5g" id="(1.0,0.39603960396039606)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_wievQD7cEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_wh45YD7cEeuZdKDsy66N5g" target="_wieIMz7cEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_wievQT7cEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_wievRT7cEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_wh0n8D7cEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_wievQj7cEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wievQz7cEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_wievRD7cEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_CS9HRz7dEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_CS4OwD7dEeuZdKDsy66N5g" target="_CS9HQz7dEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_CS9HSD7dEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_CS9HTD7dEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Class" href="CanvAAS%20Requirements.uml#_mGBKMFgbEeqn8_FCtymnGA"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_CS9HST7dEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CS9HSj7dEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_CS9HSz7dEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_POr96z7dEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_POo6kD7dEeuZdKDsy66N5g" target="_POr95z7dEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_POr97D7dEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_POr98D7dEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_POkpID7dEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_POr97T7dEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_POr97j7dEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_POr97z7dEeuZdKDsy66N5g"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_VMvQsD7dEeuZdKDsy66N5g" type="Abstraction_Edge" source="_POo6kD7dEeuZdKDsy66N5g" target="_CS4OwD7dEeuZdKDsy66N5g">
+      <children xmi:type="notation:DecorationNode" xmi:id="_VMvQsz7dEeuZdKDsy66N5g" type="Abstraction_NameLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_VMvQtD7dEeuZdKDsy66N5g" y="40"/>
+      </children>
+      <children xmi:type="notation:DecorationNode" xmi:id="_VMvQtT7dEeuZdKDsy66N5g" type="Abstraction_StereotypeLabel">
+        <layoutConstraint xmi:type="notation:Location" xmi:id="_VMvQtj7dEeuZdKDsy66N5g" x="-6" y="15"/>
+      </children>
+      <styles xmi:type="notation:FontStyle" xmi:id="_VMvQsT7dEeuZdKDsy66N5g"/>
+      <element xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_VMq_QD7dEeuZdKDsy66N5g"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VMvQsj7dEeuZdKDsy66N5g" points="[400, 140, -643984, -643984]$[241, 140, -643984, -643984]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VNzAoD7dEeuZdKDsy66N5g" id="(0.0,0.4)"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VNzAoT7dEeuZdKDsy66N5g" id="(1.0,0.4)"/>
+    </edges>
+    <edges xmi:type="notation:Connector" xmi:id="_VNXi1z7dEeuZdKDsy66N5g" type="StereotypeCommentLink" source="_VMvQsD7dEeuZdKDsy66N5g" target="_VNXi0z7dEeuZdKDsy66N5g">
+      <styles xmi:type="notation:FontStyle" xmi:id="_VNXi2D7dEeuZdKDsy66N5g"/>
+      <styles xmi:type="notation:EObjectValueStyle" xmi:id="_VNXi3D7dEeuZdKDsy66N5g" name="BASE_ELEMENT">
+        <eObjectValue xmi:type="uml:Abstraction" href="CanvAAS%20Requirements.uml#_VMq_QD7dEeuZdKDsy66N5g"/>
+      </styles>
+      <element xsi:nil="true"/>
+      <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_VNXi2T7dEeuZdKDsy66N5g" points="[0, 0, 0, 0]$[0, 0, 0, 0]"/>
+      <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VNXi2j7dEeuZdKDsy66N5g"/>
+      <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_VNXi2z7dEeuZdKDsy66N5g"/>
+    </edges>
+  </notation:Diagram>
+  <nattable:Table xmi:id="_biEkoD7pEeuZdKDsy66N5g" name="AllocationTable0" currentRowAxisProvider="_biEkpT7pEeuZdKDsy66N5g" currentColumnAxisProvider="_biEkoT7pEeuZdKDsy66N5g" tableKindId="org.eclipse.papyrus.sysml16.table.allocation">
+    <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_biHA4D7pEeuZdKDsy66N5g" source="http://www.eclipse.org/papyrus/infra/nattable/version">
+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_biHA4T7pEeuZdKDsy66N5g" key="version" value="1.3.0"/>
+    </eAnnotations>
+    <context xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <owner xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.sysml16.nattable.allocation/resources/allocation.nattableconfiguration#_Tn9sgF9WEeibbMBxjCBt2w"/>
+    <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_biEkoT7pEeuZdKDsy66N5g" description="This provider provides the default columns for the SysML Allocation Table" name="SysMLAllocationFeatureProvider">
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_biEkoj7pEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.sysml16.nattable.allocation/resources/allocation.nattableconfiguration#org.eclipse.papyrus.sysml16.nattable.allocation.feature.axis.manager"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_biEkoz7pEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.sysml16.nattable.allocation/resources/allocation.nattableconfiguration#org.eclipse.papyrus.sysml16.nattable.allocation.feature.axis.manager"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Dependency/client"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_biEkpD7pEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.sysml16.nattable.allocation/resources/allocation.nattableconfiguration#org.eclipse.papyrus.sysml16.nattable.allocation.feature.axis.manager"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Dependency/supplier"/>
+      </axis>
+    </columnAxisProvidersHistory>
+    <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_biEkpT7pEeuZdKDsy66N5g" description="This row providers allows to display all Allocation in a Table" name="SysMLAllocationProvider" disconnectSlave="true"/>
+  </nattable:Table>
+  <nattable:Table xmi:id="_gdxpoD7pEeuZdKDsy66N5g" name="Relationship Generic Matrix0" currentRowAxisProvider="_gdxpoz7pEeuZdKDsy66N5g" currentColumnAxisProvider="_gdxpoj7pEeuZdKDsy66N5g" tableKindId="org.eclipse.papyrus.uml.table.matrix">
+    <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_gdyQsD7pEeuZdKDsy66N5g" source="http://www.eclipse.org/papyrus/infra/nattable/version">
+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_gdyQsT7pEeuZdKDsy66N5g" key="version" value="1.3.0"/>
+    </eAnnotations>
+    <styles xmi:type="nattablestyle:IntListValueStyle" xmi:id="_gdxpoT7pEeuZdKDsy66N5g" name="hiddenCategoriesByDepth">
+      <intListValue>1</intListValue>
+    </styles>
+    <context xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <owner xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.matrix/configs/generic_matrix_of_relationships.nattableconfiguration#UMLGenericMatrixOfRelationships_XMI_ID"/>
+    <columnAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_gdxpoj7pEeuZdKDsy66N5g" description="This axis provider manages the columns, according to the wanted hierarchy" name="HierarchicalColumnsAxisManager" disconnectSlave="true"/>
+    <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_gdxpoz7pEeuZdKDsy66N5g" description="This axis provider manages the rows, according to the wanted hierarchy" name="HierarchicalRowAxisManager" disconnectSlave="true"/>
+    <ownedCellEditorConfigurations xmi:type="nattablecelleditor:GenericRelationshipMatrixCellEditorConfiguration" xmi:id="_gdxppD7pEeuZdKDsy66N5g" cellEditorId="GenericRelationshipMatrixEditorConfiguration"/>
+  </nattable:Table>
+  <nattable:Table xmi:id="_oB3tMD7pEeuZdKDsy66N5g" name="TestCasesTable" currentRowAxisProvider="_oB3tMj7pEeuZdKDsy66N5g" currentColumnAxisProvider="_oB3tMT7pEeuZdKDsy66N5g" tableKindId="org.eclipse.papyrus.uml.table.generic">
+    <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oB4UQD7pEeuZdKDsy66N5g" source="http://www.eclipse.org/papyrus/infra/nattable/version">
+      <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_oB4UQT7pEeuZdKDsy66N5g" key="version" value="1.3.0"/>
+    </eAnnotations>
+    <context xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <owner xmi:type="uml:Model" href="CanvAAS%20Requirements.uml#_oG6r8FgQEeqn8_FCtymnGA"/>
+    <tableConfiguration xmi:type="nattableconfiguration:TableConfiguration" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#PapyrusGenericTable_XMI_ID"/>
+    <columnAxisProvidersHistory xmi:type="nattableaxisprovider:SlaveObjectAxisProvider" xmi:id="_oB3tMT7pEeuZdKDsy66N5g" description="This axis provider provides available columns according to the rows of the table (features of the object displayed on the other axis)" name="UML Feature axis provider">
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_pMnpQj7pEeuZdKDsy66N5g">
+        <styles xmi:type="nattablestyle:IntValueStyle" xmi:id="_7739gD7pEeuZdKDsy66N5g" name="axisWidth" intValue="309"/>
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/name"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlztD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/nameExpression"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlztT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/extension"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlztj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioredClassifier/classifierBehavior"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlztz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/substitution"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzuD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/isReentrant"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzuT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/isFinalSpecialization"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzuj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//RedefinableElement/isLeaf"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzuz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/visibility"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzvD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedAttribute"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzvT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueBehavior/language"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzvj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/ownedMember"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzvz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/feature"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzwD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/elementImport"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzwT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/packageImport"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzwj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//EncapsulatedClassifier/ownedPort"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzwz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/representation"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzxD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioredClassifier/ownedBehavior"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzxT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//OpaqueBehavior/body"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzxj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type/package"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzxz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/precondition"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzyD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//RedefinableElement/redefinedElement"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzyT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TemplateableElement/templateBinding"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzyj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/part"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzyz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/owner"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzzD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/role"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_BxlzzT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/general"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzzj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/ownedRule"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlzzz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/useCase"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz0D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/redefinedClassifier"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz0T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/collaborationUse"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz0j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedReception"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz0z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/postcondition"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz1D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ParameterableElement/owningTemplateParameter"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz1T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/importedMember"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz1j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/ownedOperation"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz1z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/namespace"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz2D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/attribute"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz2T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/nestedClassifier"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz2j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/superClass"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz2z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/clientDependency"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz3D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/ownedParameter"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz3T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/powertypeExtent"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz3j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/ownedUseCase"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz3z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/ownedConnector"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz4D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/ownedParameterSet"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz4T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/generalization"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz4j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/qualifiedName"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz4z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/redefinedBehavior"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz5D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/isAbstract"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz5T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/ownedComment"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz5j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//TemplateableElement/ownedTemplateSignature"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz5z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/context"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz6D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/ownedElement"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz6T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EAttribute" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/isActive"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz6j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/inheritedMember"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz6z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//RedefinableElement/redefinitionContext"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz7D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//ParameterableElement/templateParameter"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz7T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioredClassifier/interfaceRealization"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz7j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/specification"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EStructuralFeatureAxis" xmi:id="_Bxlz7z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFDzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EReference" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/member"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno4D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/allAttributes"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno4T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/getSuperClasses"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno4j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioredClassifier/getAllImplementedInterfaces"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno4z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/allOwnedElements"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno5D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/allUsedInterfaces"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno5T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/getLabel"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno5j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/getImportedPackages"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno5z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/allRoles"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno6D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/getAllUsedInterfaces"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno6T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/getExtensions"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno6j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/getOwnedMembers"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno6z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/allNamespaces"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno7D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Class/isMetaclass"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno7T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/getAllAttributes"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno7j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/getContext"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno7z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/mustBeOwned"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno8D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//TemplateableElement/isTemplate"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno8T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/inputParameters"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno8j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getModel"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno8z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/getOperations"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno9D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/membersAreDistinguishable"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno9T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getKeywords"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno9j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getRelationships"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno9z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getSourceDirectedRelationships"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno-D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/getGenerals"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno-T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//EncapsulatedClassifier/getOwnedPorts"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno-j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/getClientDependencies"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno-z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getStereotypeApplications"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno_D7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/allOwningPackages"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno_T7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/getImportedElements"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno_j7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/directlyUsedInterfaces"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_Bxno_z7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/allParents"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpAD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/getQualifiedName"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpAT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//StructuredClassifier/getParts"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpAj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Type/getAssociations"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpAz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Behavior/outputParameters"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpBD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//ParameterableElement/isTemplateParameter"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpBT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getTargetDirectedRelationships"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpBj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getApplicableStereotypes"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpBz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getNearestPackage"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpCD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//TemplateableElement/parameterableElements"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpCT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/separator"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpCj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/directlyRealizedInterfaces"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpCz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/parents"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpDD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/allFeatures"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpDT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getAppliedStereotypes"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpDj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/getInheritedMembers"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpDz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/getUsedInterfaces"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpED7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/getAllOperations"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpET7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//NamedElement/getNamespace"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpEj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/allRealizedInterfaces"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpEz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Classifier/allSlottableFeatures"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpFD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//BehavioredClassifier/getImplementedInterfaces"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpFT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Namespace/getImportedMembers"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EOperationAxis" xmi:id="_BxnpFj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFFjzQEei_1txcmoHe_A"/>
+        <element xmi:type="ecore:EOperation" href="http://www.eclipse.org/uml2/5.0.0/UML#//Element/getRequiredStereotypes"/>
+      </axis>
+    </columnAxisProvidersHistory>
+    <rowAxisProvidersHistory xmi:type="nattableaxisprovider:MasterObjectAxisProvider" xmi:id="_oB3tMj7pEeuZdKDsy66N5g" description="This axis provider contains the object dropped by the user into the table" name="DroppedElementAxisProvider">
+      <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_pMnCAD7pEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFEDzQEei_1txcmoHe_A"/>
+        <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_nRoO8D7cEeuZdKDsy66N5g"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_BxlMoD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFEDzQEei_1txcmoHe_A"/>
+        <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_jfBz8D7EEeuZdKDsy66N5g"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_BxlMoT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFEDzQEei_1txcmoHe_A"/>
+        <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_C0Ub0D7FEeuZdKDsy66N5g"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_BxlMoj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFEDzQEei_1txcmoHe_A"/>
+        <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_LKxJYD7FEeuZdKDsy66N5g"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_BxlMoz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFEDzQEei_1txcmoHe_A"/>
+        <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_x-DM0D7FEeuZdKDsy66N5g"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_BxlzsD7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFEDzQEei_1txcmoHe_A"/>
+        <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_FgDM0D7GEeuZdKDsy66N5g"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_BxlzsT7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFEDzQEei_1txcmoHe_A"/>
+        <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_BXu8gD7aEeuZdKDsy66N5g"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_Bxlzsj7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFEDzQEei_1txcmoHe_A"/>
+        <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_uy3oQD7bEeuZdKDsy66N5g"/>
+      </axis>
+      <axis xmi:type="nattableaxis:EObjectAxis" xmi:id="_Bxlzsz7qEeuZdKDsy66N5g">
+        <manager xmi:type="nattableaxisconfiguration:AxisManagerRepresentation" href="platform:/plugin/org.eclipse.papyrus.uml.nattable.generic.config/configs/generic.nattableconfiguration#_P0EFEDzQEei_1txcmoHe_A"/>
+        <element xmi:type="uml:OpaqueBehavior" href="CanvAAS%20Requirements.uml#_POkpID7dEeuZdKDsy66N5g"/>
+      </axis>
+    </rowAxisProvidersHistory>
+  </nattable:Table>
+</xmi:XMI>
diff --git a/plugins/specification/CanvAAS Requirements/CanvAAS Requirements.uml b/plugins/specification/CanvAAS Requirements/CanvAAS Requirements.uml
new file mode 100644
index 0000000..851a21b
--- /dev/null
+++ b/plugins/specification/CanvAAS Requirements/CanvAAS Requirements.uml
@@ -0,0 +1,193 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:Requirements="http://www.eclipse.org/papyrus/sysml/1.6/SysML/Requirements" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http://www.eclipse.org/papyrus/sysml/1.6/SysML/Requirements http://www.eclipse.org/papyrus/sysml/1.6/SysML#//requirements">
+  <uml:Model xmi:id="_oG6r8FgQEeqn8_FCtymnGA" name="CanvAAS Toolset Requirements">
+    <ownedComment xmi:type="uml:Comment" xmi:id="_HOz-wFgWEeqn8_FCtymnGA" annotatedElement="_9kHX4FgREeqn8_FCtymnGA _dFO1QFgSEeqn8_FCtymnGA _79i7UFgUEeqn8_FCtymnGA">
+      <body>Whirlpool</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_i1m7oFgWEeqn8_FCtymnGA" annotatedElement="_mixmYFgVEeqn8_FCtymnGA">
+      <body>Whirlpool, POLIMI</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_B4D1IFgZEeqn8_FCtymnGA" annotatedElement="_ukhokFgQEeqn8_FCtymnGA _v6A00FgQEeqn8_FCtymnGA">
+      <body>Festo</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_IKKFUFgZEeqn8_FCtymnGA" annotatedElement="__wVwIFgXEeqn8_FCtymnGA _3MoCoFgXEeqn8_FCtymnGA _7k5jEFgaEeqn8_FCtymnGA _r6sUAFgaEeqn8_FCtymnGA">
+      <body>Festo</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_Os3dAFgcEeqn8_FCtymnGA" annotatedElement="_mGBKMFgbEeqn8_FCtymnGA _WqyyUFgbEeqn8_FCtymnGA _756UUFgbEeqn8_FCtymnGA _RRImAFgbEeqn8_FCtymnGA">
+      <body>Festo</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_qbcKUFhzEeqlBrUbnho2Eg" annotatedElement="_oG6r8FgQEeqn8_FCtymnGA">
+      <body>Festo</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_zPZTQFhzEeqlBrUbnho2Eg" annotatedElement="_B3uBcFgaEeqn8_FCtymnGA _CrJpgFgaEeqn8_FCtymnGA _RBgAwHsIEeq4wOIfUPyLYg">
+      <body>Festo</body>
+    </ownedComment>
+    <ownedComment xmi:type="uml:Comment" xmi:id="_o_TBMHsJEeq4wOIfUPyLYg" annotatedElement="_d8nMUHsIEeq4wOIfUPyLYg">
+      <body>DFKI</body>
+    </ownedComment>
+    <packageImport xmi:type="uml:PackageImport" xmi:id="_oJ7jsFgQEeqn8_FCtymnGA">
+      <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+    </packageImport>
+    <packageImport xmi:type="uml:PackageImport" xmi:id="_oKIYAFgQEeqn8_FCtymnGA">
+      <importedPackage xmi:type="uml:Package" href="pathmap://SysML16_LIBRARIES/SysML-Standard-Library.uml#SysML.package_packagedElement_Libraries"/>
+    </packageImport>
+    <packagedElement xmi:type="uml:Class" xmi:id="_sFOUkFgQEeqn8_FCtymnGA" name="AAS Model Creation">
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_9kHX4FgREeqn8_FCtymnGA" name="Req1.1"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_dFO1QFgSEeqn8_FCtymnGA" name="Req1.2-deprecated"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_RRImAFgbEeqn8_FCtymnGA" name="Req1.4"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_79i7UFgUEeqn8_FCtymnGA" name="Req1.2-deprecated"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_WqyyUFgbEeqn8_FCtymnGA" name="Req1.5"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_mGBKMFgbEeqn8_FCtymnGA" name="Req1.6"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_756UUFgbEeqn8_FCtymnGA" name="Req1.7"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Class" xmi:id="_ukhokFgQEeqn8_FCtymnGA" name="AASx Import"/>
+    <packagedElement xmi:type="uml:Class" xmi:id="_v6A00FgQEeqn8_FCtymnGA" name="AASx Export">
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_QSUfQFgZEeqn8_FCtymnGA" name="Req3.1"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Class" xmi:id="_ZE_IYFgREeqn8_FCtymnGA" name="AAS Model Libraries">
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_3MoCoFgXEeqn8_FCtymnGA" name="Req4.1"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="__wVwIFgXEeqn8_FCtymnGA" name="Req4.2"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Class" xmi:id="_WaG5sFgVEeqn8_FCtymnGA" name="AAS Deployment">
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_r6sUAFgaEeqn8_FCtymnGA" name="Req5.1"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_7k5jEFgaEeqn8_FCtymnGA" name="Req5.2"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Class" xmi:id="_ZlOK0FgVEeqn8_FCtymnGA" name="AAS Digital twin">
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_mixmYFgVEeqn8_FCtymnGA" name="Req6.1"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_ZuHrUFgZEeqn8_FCtymnGA" name="" client="_ukhokFgQEeqn8_FCtymnGA" supplier="_QSUfQFgZEeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_bnOiAFgZEeqn8_FCtymnGA" name="" client="_v6A00FgQEeqn8_FCtymnGA" supplier="_QSUfQFgZEeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:Class" xmi:id="_4hOzMFgZEeqn8_FCtymnGA" name="AAS Security">
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_B3uBcFgaEeqn8_FCtymnGA" name="Req7.1"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_CrJpgFgaEeqn8_FCtymnGA" name="Req7.2"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:Package" xmi:id="_kkZpAFh0EeqlBrUbnho2Eg" name="Use Cases"/>
+    <packagedElement xmi:type="uml:Class" xmi:id="_h6uSkHsGEeq4wOIfUPyLYg" name="AAS Runtime infrastructure">
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_RBgAwHsIEeq4wOIfUPyLYg" name="Req8.1"/>
+      <nestedClassifier xmi:type="uml:Class" xmi:id="_d8nMUHsIEeq4wOIfUPyLYg" name="Req8.2"/>
+    </packagedElement>
+    <packagedElement xmi:type="uml:OpaqueBehavior" xmi:id="_jfBz8D7EEeuZdKDsy66N5g" name="Create an AAS model example"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_n6CmsD7EEeuZdKDsy66N5g" client="_jfBz8D7EEeuZdKDsy66N5g" supplier="_sFOUkFgQEeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:OpaqueBehavior" xmi:id="_C0Ub0D7FEeuZdKDsy66N5g" name="Import an AASX package into the CanvAAS toolset"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_HBm7oD7FEeuZdKDsy66N5g" client="_oG6r8FgQEeqn8_FCtymnGA" supplier="_ukhokFgQEeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:OpaqueBehavior" xmi:id="_LKxJYD7FEeuZdKDsy66N5g" name="Export an AASX package from the CanvAAS toolset"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_PoggAD7FEeuZdKDsy66N5g" name="" client="_LKxJYD7FEeuZdKDsy66N5g" supplier="_v6A00FgQEeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:OpaqueBehavior" xmi:id="_x-DM0D7FEeuZdKDsy66N5g" name="Create the FESTO ROBOTINO model library"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_1RbpID7FEeuZdKDsy66N5g" name="" client="_x-DM0D7FEeuZdKDsy66N5g" supplier="_ZE_IYFgREeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:OpaqueBehavior" xmi:id="_FgDM0D7GEeuZdKDsy66N5g" name="Import a package from AASX Package Explorer into the CanvAAS toolset"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_MvLF8D7GEeuZdKDsy66N5g" name="" client="_FgDM0D7GEeuZdKDsy66N5g" supplier="_QSUfQFgZEeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:OpaqueBehavior" xmi:id="_BXu8gD7aEeuZdKDsy66N5g" name="Generate Code from an AAS model"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_xo7r4D7aEeuZdKDsy66N5g" name="" client="_BXu8gD7aEeuZdKDsy66N5g" supplier="_WaG5sFgVEeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:OpaqueBehavior" xmi:id="_uy3oQD7bEeuZdKDsy66N5g" name="Create properties and operations inside a submodel"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_y-6x8D7bEeuZdKDsy66N5g" name="" client="_uy3oQD7bEeuZdKDsy66N5g" supplier="_RRImAFgbEeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:OpaqueBehavior" xmi:id="_nRoO8D7cEeuZdKDsy66N5g" name="Import a predefined standardized submodel in the AAS model"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_wh0n8D7cEeuZdKDsy66N5g" name="" client="_oG6r8FgQEeqn8_FCtymnGA" supplier="_WqyyUFgbEeqn8_FCtymnGA"/>
+    <packagedElement xmi:type="uml:OpaqueBehavior" xmi:id="_POkpID7dEeuZdKDsy66N5g" name="Create a submodel and link it to an existing AAS"/>
+    <packagedElement xmi:type="uml:Abstraction" xmi:id="_VMq_QD7dEeuZdKDsy66N5g" name="" client="_POkpID7dEeuZdKDsy66N5g" supplier="_mGBKMFgbEeqn8_FCtymnGA"/>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oH2gEFgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oH2gEVgQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/sysml/1.6/SysML#/"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oJ4gYFgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oJ4gYVgQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/sysml/1.6/SysML#//activities"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Activities"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oJ4gYlgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oJ5HcFgQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/sysml/1.6/SysML#//allocations"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Allocations"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oJ5HcVgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oJ5HclgQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/sysml/1.6/SysML#//blocks"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Blocks"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oJ5ugFgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oJ5ugVgQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/sysml/1.6/SysML#//constraintblocks"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_ConstraintBlocks"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oJ5uglgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oJ5ug1gQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/sysml/1.6/SysML#//deprecatedelements"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_DeprecatedElements"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oJ6VkFgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oJ6VkVgQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/sysml/1.6/SysML#//modelelements"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_ModelElements"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oJ6VklgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oJ6Vk1gQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/sysml/1.6/SysML#//portsandflows"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Ports_u0026Flows"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oJ68oFgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oJ68oVgQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/papyrus/sysml/1.6/SysML#//requirements"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://SysML16_PROFILES/SysML.profile.uml#SysML.package_packagedElement_Requirements"/>
+    </profileApplication>
+    <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_oJ68olgQEeqn8_FCtymnGA">
+      <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_oJ68o1gQEeqn8_FCtymnGA" source="http://www.eclipse.org/uml2/2.0.0/UML">
+        <references xmi:type="ecore:EPackage" href="http://www.eclipse.org/uml2/5.0.0/UML/Profile/Standard#/"/>
+      </eAnnotations>
+      <appliedProfile xmi:type="uml:Profile" href="pathmap://UML_PROFILES/Standard.profile.uml#_0"/>
+    </profileApplication>
+  </uml:Model>
+  <Requirements:Requirement xmi:id="_sGzB4FgQEeqn8_FCtymnGA" base_NamedElement="_sFOUkFgQEeqn8_FCtymnGA" id="Req1" text="The CanvAAS toolset must support the creation of AAS Models" base_Class="_sFOUkFgQEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_uknIIFgQEeqn8_FCtymnGA" base_NamedElement="_ukhokFgQEeqn8_FCtymnGA" id="Req2" text="The toolset MAY support import from the AASX file format proposed by Platform I4.0." base_Class="_ukhokFgQEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_v6FGQFgQEeqn8_FCtymnGA" base_NamedElement="_v6A00FgQEeqn8_FCtymnGA" id="Req3" text="The toolset MAY support export to the AASX file format proposed by Platform I4.0." base_Class="_v6A00FgQEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_ZFDZ0FgREeqn8_FCtymnGA" base_NamedElement="_ZE_IYFgREeqn8_FCtymnGA" id="Req4" text="The CanvAAS toolset must support the creation of AAS Model Libraries" base_Class="_ZE_IYFgREeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_9kMQYFgREeqn8_FCtymnGA" base_NamedElement="_9kHX4FgREeqn8_FCtymnGA" id="Req1.1" text="Create AAS hierarchical Structure" base_Class="_9kHX4FgREeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_dFSfoFgSEeqn8_FCtymnGA" base_NamedElement="_dFO1QFgSEeqn8_FCtymnGA" id="Req1.2-deprecated" text="Define AAS Header for each sub-asset (three layer).&#xA;!!Headers are no longer supported in AAS v2 and v3!!" base_Class="_dFO1QFgSEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_79nMwFgUEeqn8_FCtymnGA" base_NamedElement="_79i7UFgUEeqn8_FCtymnGA" id="Req1.3-deprecated" text="Define AAS Body for each sub-asset (three layer) and define submodel&#xA;!!Body is no longer defined in AAS v2 and v3!!" base_Class="_79i7UFgUEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_WaJV8FgVEeqn8_FCtymnGA" base_NamedElement="_WaG5sFgVEeqn8_FCtymnGA" id="Req5" text="The toolset must support deployment of AAS models" base_Class="_WaG5sFgVEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_ZlQnEFgVEeqn8_FCtymnGA" base_NamedElement="_ZlOK0FgVEeqn8_FCtymnGA" id="Req6" text="The canvAAS toolset should implement the digital twin" base_Class="_ZlOK0FgVEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_mi0CoFgVEeqn8_FCtymnGA" base_NamedElement="_mixmYFgVEeqn8_FCtymnGA" id="Req6.1" text="Map current run-time data onto AAS schema (header and body)" base_Class="_mixmYFgVEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_3MrF8FgXEeqn8_FCtymnGA" base_NamedElement="_3MoCoFgXEeqn8_FCtymnGA" id="Req4.1" text="The toolset MUST incorporate a mobile robot submodel." base_Class="_3MoCoFgXEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="__wYMYFgXEeqn8_FCtymnGA" base_NamedElement="__wVwIFgXEeqn8_FCtymnGA" id="Req4.2" text="The toolset MUST incorporate a robot submodel." base_Class="__wVwIFgXEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_QSYJoFgZEeqn8_FCtymnGA" base_NamedElement="_QSUfQFgZEeqn8_FCtymnGA" id="Req3.1" text="The AASX import/export - if implemented - MUST be compatible with the AASX Package Explorer published by Platform I4.0." base_Class="_QSUfQFgZEeqn8_FCtymnGA"/>
+  <Requirements:DeriveReqt xmi:id="_ZuKHkFgZEeqn8_FCtymnGA" base_DirectedRelationship="_ZuHrUFgZEeqn8_FCtymnGA" base_Abstraction="_ZuHrUFgZEeqn8_FCtymnGA"/>
+  <Requirements:DeriveReqt xmi:id="_bnQXMFgZEeqn8_FCtymnGA" base_DirectedRelationship="_bnOiAFgZEeqn8_FCtymnGA" base_Abstraction="_bnOiAFgZEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_4hRPcFgZEeqn8_FCtymnGA" base_NamedElement="_4hOzMFgZEeqn8_FCtymnGA" id="Req7" text="Security must be considered when using AAS models" base_Class="_4hOzMFgZEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_B3wdsFgaEeqn8_FCtymnGA" base_NamedElement="_B3uBcFgaEeqn8_FCtymnGA" id="Req7.1" text="The toolset MUST generate AAS that can be accessed without encryption, authentication and authorization." base_Class="_B3uBcFgaEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_CrMFwFgaEeqn8_FCtymnGA" base_NamedElement="_CrJpgFgaEeqn8_FCtymnGA" id="Req7.2" text="The toolset MAY optionally generate AAS that require encryption, authentication and authorization for be accessed." base_Class="_CrJpgFgaEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_r6vXUFgaEeqn8_FCtymnGA" base_NamedElement="_r6sUAFgaEeqn8_FCtymnGA" id="Req5.1" text="The toolset (or BaSyx generator) SHOULD have an API that allows automated AAS generation." base_Class="_r6sUAFgaEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_7k8mYFgaEeqn8_FCtymnGA" base_NamedElement="_7k5jEFgaEeqn8_FCtymnGA" id="Req5.2" text="The toolset MUST support deployment via SCP or SFTP." base_Class="_7k5jEFgaEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_RRLpUFgbEeqn8_FCtymnGA" base_NamedElement="_RRImAFgbEeqn8_FCtymnGA" id="Req1.4" text="The toolset MUST support modeling of properties and operations." base_Class="_RRImAFgbEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_Wq1OkFgbEeqn8_FCtymnGA" base_NamedElement="_WqyyUFgbEeqn8_FCtymnGA" id="Req1.5" text="The toolset MUST support adding predefined, standardized submodels to an AAS." base_Class="_WqyyUFgbEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_mGDmcFgbEeqn8_FCtymnGA" base_NamedElement="_mGBKMFgbEeqn8_FCtymnGA" id="Req1.6" text="The toolset MUST support adding &quot;free&quot; (i.e. custom) submodels with custom properties and operations." base_Class="_mGBKMFgbEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_758wkFgbEeqn8_FCtymnGA" base_NamedElement="_756UUFgbEeqn8_FCtymnGA" id="Req1.7" text="The toolset MAY integrate a submodel for documentation." base_Class="_756UUFgbEeqn8_FCtymnGA"/>
+  <Requirements:Requirement xmi:id="_h6xV4HsGEeq4wOIfUPyLYg" base_NamedElement="_h6uSkHsGEeq4wOIfUPyLYg" id="Req8" text="The CanvAAS toolset should offer a support for runtime infrastructure used in Industry 4.0" base_Class="_h6uSkHsGEeq4wOIfUPyLYg"/>
+  <Requirements:Requirement xmi:id="_RBjEEHsIEeq4wOIfUPyLYg" base_NamedElement="_RBgAwHsIEeq4wOIfUPyLYg" id="Req8.1" text="CanvAAS toolset MUST be able to communicate with Opc ua" base_Class="_RBgAwHsIEeq4wOIfUPyLYg"/>
+  <Requirements:Requirement xmi:id="_d8qPoHsIEeq4wOIfUPyLYg" base_NamedElement="_d8nMUHsIEeq4wOIfUPyLYg" id="Req8.2" text="The product must support and have Java capable OS" base_Class="_d8nMUHsIEeq4wOIfUPyLYg"/>
+  <Requirements:TestCase xmi:id="_jfrUMD7EEeuZdKDsy66N5g" base_Behavior="_jfBz8D7EEeuZdKDsy66N5g"/>
+  <Requirements:Verify xmi:id="_n6IGQD7EEeuZdKDsy66N5g" base_DirectedRelationship="_n6CmsD7EEeuZdKDsy66N5g" base_Abstraction="_n6CmsD7EEeuZdKDsy66N5g"/>
+  <Requirements:TestCase xmi:id="_C0XfID7FEeuZdKDsy66N5g" base_Behavior="_C0Ub0D7FEeuZdKDsy66N5g"/>
+  <Requirements:Verify xmi:id="_HBp-8D7FEeuZdKDsy66N5g" base_DirectedRelationship="_HBm7oD7FEeuZdKDsy66N5g" base_Abstraction="_HBm7oD7FEeuZdKDsy66N5g"/>
+  <Requirements:TestCase xmi:id="_LKzloD7FEeuZdKDsy66N5g" base_Behavior="_LKxJYD7FEeuZdKDsy66N5g"/>
+  <Requirements:Verify xmi:id="_Poi8QD7FEeuZdKDsy66N5g" base_DirectedRelationship="_PoggAD7FEeuZdKDsy66N5g" base_Abstraction="_PoggAD7FEeuZdKDsy66N5g"/>
+  <Requirements:TestCase xmi:id="_x-GQID7FEeuZdKDsy66N5g" base_Behavior="_x-DM0D7FEeuZdKDsy66N5g"/>
+  <Requirements:Verify xmi:id="_1ReFYD7FEeuZdKDsy66N5g" base_DirectedRelationship="_1RbpID7FEeuZdKDsy66N5g" base_Abstraction="_1RbpID7FEeuZdKDsy66N5g"/>
+  <Requirements:TestCase xmi:id="_FgFpED7GEeuZdKDsy66N5g" base_Behavior="_FgDM0D7GEeuZdKDsy66N5g"/>
+  <Requirements:Verify xmi:id="_MvNiMD7GEeuZdKDsy66N5g" base_DirectedRelationship="_MvLF8D7GEeuZdKDsy66N5g" base_Abstraction="_MvLF8D7GEeuZdKDsy66N5g"/>
+  <Requirements:TestCase xmi:id="_BXwxsD7aEeuZdKDsy66N5g" base_Behavior="_BXu8gD7aEeuZdKDsy66N5g"/>
+  <Requirements:Verify xmi:id="_xo9hED7aEeuZdKDsy66N5g" base_DirectedRelationship="_xo7r4D7aEeuZdKDsy66N5g" base_Abstraction="_xo7r4D7aEeuZdKDsy66N5g"/>
+  <Requirements:TestCase xmi:id="_uy6EgD7bEeuZdKDsy66N5g" base_Behavior="_uy3oQD7bEeuZdKDsy66N5g"/>
+  <Requirements:Verify xmi:id="_y-91QD7bEeuZdKDsy66N5g" base_DirectedRelationship="_y-6x8D7bEeuZdKDsy66N5g" base_Abstraction="_y-6x8D7bEeuZdKDsy66N5g"/>
+  <Requirements:TestCase xmi:id="_nRqrMD7cEeuZdKDsy66N5g" base_Behavior="_nRoO8D7cEeuZdKDsy66N5g"/>
+  <Requirements:Verify xmi:id="_wh3EMD7cEeuZdKDsy66N5g" base_DirectedRelationship="_wh0n8D7cEeuZdKDsy66N5g" base_Abstraction="_wh0n8D7cEeuZdKDsy66N5g"/>
+  <Requirements:TestCase xmi:id="_POnscD7dEeuZdKDsy66N5g" base_Behavior="_POkpID7dEeuZdKDsy66N5g"/>
+  <Requirements:Verify xmi:id="_VMs0cD7dEeuZdKDsy66N5g" base_DirectedRelationship="_VMq_QD7dEeuZdKDsy66N5g" base_Abstraction="_VMq_QD7dEeuZdKDsy66N5g"/>
+</xmi:XMI>
diff --git a/plugins/specification/pom.xml b/plugins/specification/pom.xml
new file mode 100755
index 0000000..80eedc0
--- /dev/null
+++ b/plugins/specification/pom.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-plugins</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas-specification</artifactId>
+	<packaging>pom</packaging>
+
+	<modules>
+<!-- 		<module>org.eclipse.papyrus.aas.canvaasrequirements</module> -->
+	</modules>
+</project>
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..6948b49
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,264 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<groupId>org.eclipse.papyrus.aas</groupId>
+	<artifactId>org.eclipse.papyrus.aas.root</artifactId>
+	<version>0.0.1-SNAPSHOT</version>
+	<packaging>pom</packaging>
+
+	<properties>
+		<!-- https://repo.maven.apache.org/maven2/ -->
+		<tycho-version>2.0.0</tycho-version>
+		<tychoExtrasVersion>2.0.0</tychoExtrasVersion>
+		<maven.resources.version>3.1.0</maven.resources.version>
+		<maven.clean.version>3.1.0</maven.clean.version>
+		<maven.compiler.version>3.8.1</maven.compiler.version>
+		<maven-dependency-plugin-version>3.1.1</maven-dependency-plugin-version>
+
+		<!-- https://repository.jboss.org/ -->
+		<jboss.utils.version>1.3.0</jboss.utils.version>
+
+		<java.source.version>11</java.source.version>
+		<java.target.version>11</java.target.version>
+		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+	</properties>
+
+	<modules>
+		<module>examples</module>
+		<module>features</module>
+		<module>plugins</module>
+		<module>releng</module>
+	</modules>
+
+	<profiles>
+		<profile>
+			<id>buildRCP</id>
+			<activation>
+				<property>
+					<name>buildRCP</name>
+				</property>
+			</activation>
+			<modules>
+				<module>rcp</module>
+			</modules>
+			<build>
+				<plugins>
+					<!-- Target platform based build -->
+					<plugin>
+						<groupId>org.eclipse.tycho</groupId>
+						<artifactId>target-platform-configuration</artifactId>
+						<version>${tycho-version}</version>
+						<configuration>
+							<!-- Enabled target platform -->
+							<target>
+								<artifact>
+									<groupId>org.eclipse.papyrus.aas</groupId>
+									<artifactId>org.eclipse.papyrus.aas.rcp.target</artifactId>
+									<version>0.0.1-SNAPSHOT</version>
+								</artifact>
+							</target>
+							<environments>
+								<environment>
+									<os>linux</os>
+									<ws>gtk</ws>
+									<arch>x86_64</arch>
+								</environment>
+								<environment>
+									<os>win32</os>
+									<ws>win32</ws>
+									<arch>x86_64</arch>
+								</environment>
+								<environment>
+									<os>macosx</os>
+									<ws>cocoa</ws>
+									<arch>x86_64</arch>
+								</environment>
+							</environments>
+						</configuration>
+					</plugin>
+				</plugins>
+			</build>
+		</profile>
+	</profiles>
+
+	<repositories>
+		<repository>
+			<id>license-feature</id>
+			<url>http://download.eclipse.org/cbi/updates/license/</url>
+			<layout>p2</layout>
+		</repository>
+	</repositories>
+
+	<build>
+		<pluginManagement>
+			<!-- redistributed plugin configurations -->
+			<plugins>
+				<plugin>
+					<groupId>org.apache.maven.plugins</groupId>
+					<artifactId>maven-compiler-plugin</artifactId>
+					<version>${maven.compiler.version}</version>
+					<configuration>
+						<source>${java.source.version}</source>
+						<target>${java.target.version}</target>
+					</configuration>
+				</plugin>
+				<plugin>
+					<groupId>org.apache.maven.plugins</groupId>
+					<artifactId>maven-resources-plugin</artifactId>
+					<version>${maven.resources.version}</version>
+					<configuration>
+						<encoding>UTF-8</encoding>
+					</configuration>
+				</plugin>
+				<plugin>
+					<groupId>org.apache.maven.plugins</groupId>
+					<artifactId>maven-clean-plugin</artifactId>
+					<version>${maven.clean.version}</version>
+				</plugin>
+
+				<!-- Integration between Tycho and Maven -->
+				<plugin>
+					<groupId>org.eclipse.tycho</groupId>
+					<artifactId>tycho-maven-plugin</artifactId>
+					<version>${tycho-version}</version>
+					<extensions>true</extensions>
+				</plugin>
+				<plugin>
+					<groupId>org.eclipse.tycho</groupId>
+					<artifactId>tycho-p2-repository-plugin</artifactId>
+					<version>${tycho-version}</version>
+				</plugin>
+				<plugin>
+					<groupId>org.eclipse.tycho</groupId>
+					<artifactId>tycho-versions-plugin</artifactId>
+					<version>${tycho-version}</version>
+				</plugin>
+
+				<!-- Tycho compiler -->
+				<plugin>
+					<groupId>org.eclipse.tycho</groupId>
+					<artifactId>tycho-compiler-plugin</artifactId>
+					<version>${tycho-version}</version>
+					<configuration>
+						<source>${java.source.version}</source>
+						<target>${java.target.version}</target>
+						<optimize>true</optimize>
+						<showWarnings>true</showWarnings>
+						<!-- Tycho build using the project's JDT settings. -->
+						<useProjectSettings>true</useProjectSettings>
+					</configuration>
+				</plugin>
+				<plugin>
+					<groupId>org.eclipse.tycho</groupId>
+					<artifactId>tycho-source-plugin</artifactId>
+					<version>${tycho-version}</version>
+					<executions>
+						<execution>
+							<id>plugin-source</id>
+							<goals>
+								<goal>plugin-source</goal>
+							</goals>
+						</execution>
+					</executions>
+				</plugin>
+				<plugin>
+					<groupId>org.eclipse.tycho.extras</groupId>
+					<artifactId>tycho-source-feature-plugin</artifactId>
+					<version>${tychoExtrasVersion}</version>
+					<executions>
+						<execution>
+							<id>source-feature</id>
+							<phase>package</phase>
+							<goals>
+								<goal>source-feature</goal>
+							</goals>
+						</execution>
+					</executions>
+				</plugin>
+			</plugins>
+		</pluginManagement>
+
+		<plugins>
+			<!-- local plugins -->
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-resources-plugin</artifactId>
+			</plugin>
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-compiler-plugin</artifactId>
+			</plugin>
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-maven-plugin</artifactId>
+			</plugin>
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-p2-repository-plugin</artifactId>
+			</plugin>
+
+			<!-- Sources -->
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-source-plugin</artifactId>
+			</plugin>
+			<plugin>
+				<groupId>org.eclipse.tycho.extras</groupId>
+				<artifactId>tycho-source-feature-plugin</artifactId>
+			</plugin>
+
+			<!-- Target platform based build -->
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>target-platform-configuration</artifactId>
+				<version>${tycho-version}</version>
+				<configuration>
+					<!-- Enabled target platform -->
+					<target>
+						<artifact>
+							<groupId>org.eclipse.papyrus.aas</groupId>
+							<artifactId>org.eclipse.papyrus.aas.target</artifactId>
+							<version>0.0.1-SNAPSHOT</version>
+						</artifact>
+					</target>
+					<environments>
+						<environment>
+							<os>linux</os>
+							<ws>gtk</ws>
+							<arch>x86_64</arch>
+						</environment>
+						<environment>
+							<os>win32</os>
+							<ws>win32</ws>
+							<arch>x86_64</arch>
+						</environment>
+						<environment>
+							<os>macosx</os>
+							<ws>cocoa</ws>
+							<arch>x86_64</arch>
+						</environment>
+					</environments>
+				</configuration>
+			</plugin>
+
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-p2-plugin</artifactId>
+				<version>${tycho-version}</version>
+				<executions>
+					<execution>
+						<id>attach-p2-metadata</id>
+						<phase>package</phase>
+						<goals>
+							<goal>p2-metadata</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+
+</project>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/.project b/rcp/org.eclipse.papyrus.aas.rcp.feature/.project
new file mode 100755
index 0000000..7b83911
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/.project
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.aas.rcp.feature</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.FeatureBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+		<nature>org.eclipse.pde.FeatureNature</nature>
+	</natures>
+</projectDescription>
\ No newline at end of file
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.core.resources.prefs b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.core.resources.prefs
new file mode 100755
index 0000000..896a9a5
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
\ No newline at end of file
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.core.runtime.prefs b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.core.runtime.prefs
new file mode 100755
index 0000000..5a0ad22
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.jdt.core.prefs b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.jdt.core.prefs
new file mode 100755
index 0000000..74c6d08
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,297 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.jdt.ui.prefs b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.jdt.ui.prefs
new file mode 100755
index 0000000..ba7542e
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,127 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License 2.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-2.0/\n *\n * SPDX-License-Identifier: EPL-2.0\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=true
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_modifiers=false
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=true
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=true
+sp_cleanup.remove_unused_imports=true
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=true
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.pde.api.tools.prefs b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100755
index 0000000..b2260f8
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,104 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_FIELD=Warning
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Warning
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Warning
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_DEFAULT_METHOD=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+changed_execution_env=Warning
+eclipse.preferences.version=1
+incompatible_api_component_version=Warning
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+incompatible_api_component_version_report_major_without_breaking_change=Error
+incompatible_api_component_version_report_minor_without_api_change=Error
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Error
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/build.properties b/rcp/org.eclipse.papyrus.aas.rcp.feature/build.properties
new file mode 100755
index 0000000..b692f5f
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/build.properties
@@ -0,0 +1,2 @@
+bin.includes = feature.xml,\
+               feature.properties
\ No newline at end of file
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/feature.properties b/rcp/org.eclipse.papyrus.aas.rcp.feature/feature.properties
new file mode 100755
index 0000000..cd8f650
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/feature.properties
@@ -0,0 +1,35 @@
+###############################################################################
+# Copyright (c) 2020 CEA LIST, and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#
+###############################################################################
+
+# "featureName" property - name of the feature
+featureName=CanvAAS RCP Feature
+
+# "providerName" property - name of the company that provides the feature
+providerName=CanvAAS project 
+
+# description property - text of the "Feature Description"
+description=\
+CanvAAS project\n\
+\n
+################ end of description property ##################################
+
+# "copyright" property - text of the "Feature Update Copyright"
+copyright=\
+Copyright (c) 2020 CEA LIST, and others.\n\
+All rights reserved. This program and the accompanying materials\n\
+are made available under the terms of the Eclipse Public License 2.0\n\
+which accompanies this distribution, and is available at\n\
+https://www.eclipse.org/legal/epl-2.0/\n\
+SPDX-License-Identifier: EPL-2.0\n
+################ end of copyright property ####################################
\ No newline at end of file
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/feature.xml b/rcp/org.eclipse.papyrus.aas.rcp.feature/feature.xml
new file mode 100644
index 0000000..5fd198b
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/feature.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<feature
+      id="org.eclipse.papyrus.aas.rcp.feature"
+      version="0.7.0.qualifier"
+      label="%featureName"
+      provider-name="%providerName" 
+      license-feature="org.eclipse.license"
+      license-feature-version="2.0.2">
+
+   <description url="https://eclipse.org/papyrus/">
+      %description
+   </description>
+
+   <copyright>
+      %copyright
+   </copyright>
+
+   <license url="%licenseURL">
+      %licence
+   </license>
+
+   <url>
+      <discovery label="2020-06" url="http://download.eclipse.org/staging/2020-06/"/>
+      <discovery label="Eclipse Platform 4.16" url="http://download.eclipse.org/eclipse/updates/4.16"/>
+   </url>
+
+   <requires>
+      <import feature="org.eclipse.equinox.p2.user.ui"/>
+      <import feature="org.eclipse.help"/>
+      <import feature="org.eclipse.jdt"/>
+      <import feature="org.eclipse.pde"/>
+      <import feature="org.eclipse.sdk"/>
+      <import feature="org.eclipse.e4.core.tools.feature"/>
+      <import feature="org.eclipse.rcp"/>
+      <import feature="org.eclipse.emf.sdk"/>
+      <import feature="org.eclipse.gef.sdk"/>
+      <import feature="org.eclipse.uml2.sdk"/>
+      <import feature="org.eclipse.gmf.runtime.sdk"/>
+      <import feature="org.eclipse.jst.server_adapters.feature"/>
+      <import feature="org.eclipse.m2e.sdk.feature"/>
+      <import feature="org.eclipse.papyrus.sdk.feature"/>
+   </requires>
+
+   <plugin
+         id="org.eclipse.papyrus.aas.rcp"
+         download-size="0"
+         install-size="0"
+         version="0.0.0"/>
+
+</feature>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.feature/pom.xml b/rcp/org.eclipse.papyrus.aas.rcp.feature/pom.xml
new file mode 100755
index 0000000..9c50515
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.feature/pom.xml
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<artifactId>org.eclipse.papyrus.aas-rcp</artifactId>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.rcp.feature</artifactId>
+	<version>0.7.0-SNAPSHOT</version>
+	<packaging>eclipse-feature</packaging>
+
+</project>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/.classpath b/rcp/org.eclipse.papyrus.aas.rcp.product/.classpath
new file mode 100644
index 0000000..33c97a3
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/.classpath
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
+		<attributes>
+			<attribute name="module" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/.project b/rcp/org.eclipse.papyrus.aas.rcp.product/.project
new file mode 100755
index 0000000..788047b
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.aas.rcp.product</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.core.resources.prefs b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.core.resources.prefs
new file mode 100755
index 0000000..896a9a5
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
\ No newline at end of file
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.core.runtime.prefs b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.core.runtime.prefs
new file mode 100755
index 0000000..5a0ad22
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.jdt.core.prefs b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.jdt.core.prefs
new file mode 100755
index 0000000..74c6d08
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,297 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.jdt.ui.prefs b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.jdt.ui.prefs
new file mode 100755
index 0000000..ba7542e
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,127 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License 2.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-2.0/\n *\n * SPDX-License-Identifier: EPL-2.0\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=true
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_modifiers=false
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=true
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=true
+sp_cleanup.remove_unused_imports=true
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=true
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.pde.api.tools.prefs b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100755
index 0000000..b2260f8
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,104 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_FIELD=Warning
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Warning
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Warning
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_DEFAULT_METHOD=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+changed_execution_env=Warning
+eclipse.preferences.version=1
+incompatible_api_component_version=Warning
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+incompatible_api_component_version_report_major_without_breaking_change=Error
+incompatible_api_component_version_report_minor_without_api_change=Error
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Error
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/README.txt b/rcp/org.eclipse.papyrus.aas.rcp.product/README.txt
new file mode 100644
index 0000000..1fd2f9f
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/README.txt
@@ -0,0 +1,19 @@
+One of the things you need to check are the icon paths in your .product file. 
+There are unfortunately three possible ways of interpreting this path:
+
+  1) Eclipse's product editor interprets these as project-relative paths (e.g., 
+     treating them as if they were prefixed with "platform:/plugin").  
+
+  2) PDE/Build interprets the paths relative to the workspace root (e.g., 
+     treating them as if they were prefixed with "platform:/base").
+
+  3) Tycho interprets them as paths in the local workspace, relative to its
+     current build location set by the active mojo.  The tycho-p2-publisher-plugin, 
+     which is responsible for publishing the product definition to a p2 repository, 
+     uses "${project.build.directory}/products/${product-id}" as its current build location.
+
+So you need to ensure your path names are relative to #3.  Note that the paths specified using the Eclipse
+product editor have a leading "/", which causes tycho-p2-publisher-plugin to attempt resolve
+the icons relative to the root directory. 
+
+Check https://bugs.eclipse.org/bugs/show_bug.cgi?id=349421 for more details. 
\ No newline at end of file
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/canvaas.p2.inf b/rcp/org.eclipse.papyrus.aas.rcp.product/canvaas.p2.inf
new file mode 100755
index 0000000..e7361cb
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/canvaas.p2.inf
@@ -0,0 +1,10 @@
+instructions.configure=\
+	org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/eclipsec.exe);\
+	org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/eclipse.exe);\
+	org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/Eclipse.app/Contents/Resources/Eclipse.icns);\
+	org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/Eclipse.app/Contents/Resources);\
+	org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/Eclipse.app/Contents/Info.plist);\
+	org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/Eclipse.app/Contents/MacOS);\
+	org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/Eclipse.app/Contents);\
+	org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/Eclipse.app);\
+	org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/eclipse);\
\ No newline at end of file
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/canvaas.product b/rcp/org.eclipse.papyrus.aas.rcp.product/canvaas.product
new file mode 100755
index 0000000..e003c50
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/canvaas.product
@@ -0,0 +1,225 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?pde version="3.5"?>
+
+<product name="CanvAAS" uid="org.eclipse.papyrus.aas.rcp.product" id="org.eclipse.papyrus.aas.rcp.product" application="org.eclipse.ui.ide.workbench" version="0.0.1.qualifier" useFeatures="true" includeLaunchers="true">
+
+   <aboutInfo>
+      <image path="/org.eclipse.papyrus.aas.rcp/icons/papyrus_lg.png"/>
+      <text>
+CanvAAS
+
+Version: {1}
+Build id: {0}
+
+Copyright CEA LIST and others 2020. http://www.eclipse.org/papyrus
+
+(c) Copyright Eclipse contributors and others 2020.  All rights reserved. 
+Eclipse and the Eclipse logo are trademarks of the Eclipse Foundation, Inc., https://www.eclipse.org/. 
+The Eclipse logo cannot be altered without Eclipse&apos;s permission. 
+Eclipse logos are provided for use under the Eclipse logo and trademark guidelines, https://www.eclipse.org/logotm/. 
+Oracle and Java are trademarks or registered trademarks of Oracle and/or its affiliates. 
+Other names may be trademarks of their respective owners.
+
+This product includes software developed by other open source projects including the Apache Software Foundation, https://www.apache.org/.
+      </text>
+   </aboutInfo>
+
+   <configIni use="default">
+   </configIni>
+
+   <launcherArgs>
+      <programArgs>-showsplash org.eclipse.papyrus.rcp --launcher.XXMaxPermSize 256m --launcher.defaultAction openFile
+      </programArgs>
+      <vmArgs>-Xms128m -Xmx900m -Dosgi.bundlefile.limit=200
+      </vmArgs>
+      <vmArgsMac>-Xdock:icon=../Resources/papyrus.icns -XstartOnFirstThread -Dorg.eclipse.swt.internal.carbon.smallFonts
+      </vmArgsMac>
+   </launcherArgs>
+
+   <windowImages i16="/org.eclipse.papyrus.aas.rcp/icons/papyrus16.png" i32="/org.eclipse.papyrus.aas.rcp/icons/papyrus32.png" i48="/org.eclipse.papyrus.aas.rcp/icons/papyrus48.png" i64="/org.eclipse.papyrus.aas.rcp/icons/papyrus64.png" i128="/org.eclipse.papyrus.aas.rcp/icons/papyrus128.png"/>
+
+   <splash
+      location="org.eclipse.papyrus.aas.rcp"
+      startupProgressRect="0,330,460,20"
+      startupMessageRect="7,4,445,16"
+      startupForegroundColor="9C9E9F" />
+   <launcher name="CanvAAS">
+      <linux icon="../org.eclipse.papyrus.aas.rcp/icons/icon.xpm"/>
+      <macosx icon="../org.eclipse.papyrus.aas.rcp/icons/papyrus.icns"/>
+      <win useIco="true">
+         <ico path="/org.eclipse.papyrus.aas.rcp/icons/papyrus.ico"/>
+         <bmp/>
+      </win>
+   </launcher>
+
+   <vm>
+   </vm>
+
+   <license>
+        <url>http://eclipse.org/legal/epl/notice.php</url>
+        <text>
+Eclipse Foundation Software User Agreement
+November 30, 2017
+
+Usage Of Content
+
+THE ECLIPSE FOUNDATION MAKES AVAILABLE SOFTWARE, DOCUMENTATION, INFORMATION AND/OR
+OTHER MATERIALS FOR OPEN SOURCE PROJECTS (COLLECTIVELY &quot;CONTENT&quot;).
+USE OF THE CONTENT IS GOVERNED BY THE TERMS AND CONDITIONS OF THIS
+AGREEMENT AND/OR THE TERMS AND CONDITIONS OF LICENSE AGREEMENTS OR
+NOTICES INDICATED OR REFERENCED BELOW.  BY USING THE CONTENT, YOU
+AGREE THAT YOUR USE OF THE CONTENT IS GOVERNED BY THIS AGREEMENT
+AND/OR THE TERMS AND CONDITIONS OF ANY APPLICABLE LICENSE AGREEMENTS
+OR NOTICES INDICATED OR REFERENCED BELOW.  IF YOU DO NOT AGREE TO THE
+TERMS AND CONDITIONS OF THIS AGREEMENT AND THE TERMS AND CONDITIONS
+OF ANY APPLICABLE LICENSE AGREEMENTS OR NOTICES INDICATED OR REFERENCED
+BELOW, THEN YOU MAY NOT USE THE CONTENT.
+
+Applicable Licenses
+
+Unless otherwise indicated, all Content made available by the
+Eclipse Foundation is provided to you under the terms and conditions of
+the Eclipse Public License Version 2.0 (&quot;EPL&quot;). A copy of the EPL is
+provided with this Content and is also available at https://www.eclipse.org/legal/epl-2.0/.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.
+
+Content includes, but is not limited to, source code, object code,
+documentation and other files maintained in the Eclipse Foundation source code
+repository (&quot;Repository&quot;) in software modules (&quot;Modules&quot;) and made available
+as downloadable archives (&quot;Downloads&quot;).
+
+      - Content may be structured and packaged into modules to facilitate delivering,
+         extending, and upgrading the Content. Typical modules may include plug-ins (&quot;Plug-ins&quot;),
+         plug-in fragments (&quot;Fragments&quot;), and features (&quot;Features&quot;).
+       - Each Plug-in or Fragment may be packaged as a sub-directory or JAR (Java(TM) ARchive)
+         in a directory named &quot;plugins&quot;.
+       - A Feature is a bundle of one or more Plug-ins and/or Fragments and associated material.
+         Each Feature may be packaged as a sub-directory in a directory named &quot;features&quot;.
+         Within a Feature, files named &quot;feature.xml&quot; may contain a list of the names and version
+         numbers of the Plug-ins and/or Fragments associated with that Feature.
+       - Features may also include other Features (&quot;Included Features&quot;). Within a Feature, files
+         named &quot;feature.xml&quot; may contain a list of the names and version numbers of Included Features.
+
+The terms and conditions governing Plug-ins and Fragments should be
+contained in files named &quot;about.html&quot; (&quot;Abouts&quot;). The terms and
+conditions governing Features and Included Features should be contained
+in files named &quot;license.html&quot; (&quot;Feature Licenses&quot;). Abouts and Feature
+Licenses may be located in any directory of a Download or Module
+including, but not limited to the following locations:
+
+       - The top-level (root) directory
+       - Plug-in and Fragment directories
+       - Inside Plug-ins and Fragments packaged as JARs
+       - Sub-directories of the directory named &quot;src&quot; of certain Plug-ins
+       - Feature directories
+
+Note: if a Feature made available by the Eclipse Foundation is installed using the
+Provisioning Technology (as defined below), you must agree to a license (&quot;Feature 
+Update License&quot;) during the installation process. If the Feature contains
+Included Features, the Feature Update License should either provide you
+with the terms and conditions governing the Included Features or inform
+you where you can locate them. Feature Update Licenses may be found in
+the &quot;license&quot; property of files named &quot;feature.properties&quot; found within a Feature.
+Such Abouts, Feature Licenses, and Feature Update Licenses contain the
+terms and conditions (or references to such terms and conditions) that
+govern your use of the associated Content in that directory.
+
+THE ABOUTS, FEATURE LICENSES, AND FEATURE UPDATE LICENSES MAY REFER
+TO THE EPL OR OTHER LICENSE AGREEMENTS, NOTICES OR TERMS AND CONDITIONS.
+SOME OF THESE OTHER LICENSE AGREEMENTS MAY INCLUDE (BUT ARE NOT LIMITED TO):
+
+       - Eclipse Distribution License Version 1.0 (available at http://www.eclipse.org/licenses/edl-v1.0.html)
+       - Common Public License Version 1.0 (available at http://www.eclipse.org/legal/cpl-v10.html)
+       - Apache Software License 1.1 (available at http://www.apache.org/licenses/LICENSE)
+       - Apache Software License 2.0 (available at http://www.apache.org/licenses/LICENSE-2.0)
+       - Metro Link Public License 1.00 (available at http://www.opengroup.org/openmotif/supporters/metrolink/license.html)
+       - Mozilla Public License Version 1.1 (available at http://www.mozilla.org/MPL/MPL-1.1.html)
+
+IT IS YOUR OBLIGATION TO READ AND ACCEPT ALL SUCH TERMS AND CONDITIONS PRIOR
+TO USE OF THE CONTENT. If no About, Feature License, or Feature Update License
+is provided, please contact the Eclipse Foundation to determine what terms and conditions
+govern that particular Content.
+
+Use of Provisioning Technology
+
+The Eclipse Foundation makes available provisioning software, examples of which include,
+but are not limited to, p2 and the Eclipse Update Manager (&quot;Provisioning Technology&quot;) for
+the purpose of allowing users to install software, documentation, information and/or
+other materials (collectively &quot;Installable Software&quot;). This capability is provided with
+the intent of allowing such users to install, extend and update Eclipse-based products.
+Information about packaging Installable Software is available at
+http://eclipse.org/equinox/p2/repository_packaging.html (&quot;Specification&quot;).
+
+You may use Provisioning Technology to allow other parties to install Installable Software.
+You shall be responsible for enabling the applicable license agreements relating to the
+Installable Software to be presented to, and accepted by, the users of the Provisioning Technology
+in accordance with the Specification. By using Provisioning Technology in such a manner and
+making it available in accordance with the Specification, you further acknowledge your
+agreement to, and the acquisition of all necessary rights to permit the following:
+
+       1. A series of actions may occur (&quot;Provisioning Process&quot;) in which a user may execute
+          the Provisioning Technology on a machine (&quot;Target Machine&quot;) with the intent of installing,
+          extending or updating the functionality of an Eclipse-based product.
+       2. During the Provisioning Process, the Provisioning Technology may cause third party
+          Installable Software or a portion thereof to be accessed and copied to the Target Machine.
+       3. Pursuant to the Specification, you will provide to the user the terms and conditions that
+          govern the use of the Installable Software (&quot;Installable Software Agreement&quot;) and such
+          Installable Software Agreement shall be accessed from the Target Machine in accordance
+          with the Specification. Such Installable Software Agreement must inform the user of the
+          terms and conditions that govern the Installable Software and must solicit acceptance by
+          the end user in the manner prescribed in such Installable Software Agreement. Upon such
+          indication of agreement by the user, the provisioning Technology will complete installation
+          of the Installable Software.
+
+Cryptography
+
+Content may contain encryption software. The country in which you are
+currently may have restrictions on the import, possession, and use,
+and/or re-export to another country, of encryption software. BEFORE
+using any encryption software, please check the country&apos;s laws,
+regulations and policies concerning the import, possession, or use, and
+re-export of encryption software, to see if this is permitted.
+
+Java and all Java-based trademarks are trademarks of Oracle Corporation in the United States, other countries, or both.
+       </text>
+   </license>
+
+   <plugins>
+   </plugins>
+
+   <features>
+      <feature id="org.eclipse.platform"/>
+      <feature id="org.eclipse.equinox.p2.user.ui"/>
+      <feature id="org.eclipse.rcp.configuration"/>
+      <feature id="org.eclipse.papyrus.aas.rcp.feature"/>
+      <feature id="org.eclipse.papyrus.aas.feature" installMode="root"/>
+      <feature id="org.eclipse.papyrus.sdk.feature" installMode="root"/>
+   </features>
+
+   <configurations>
+      <plugin id="org.apache.felix.scr" autoStart="true" startLevel="1" />
+      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="4" />
+      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.p2.reconciler.dropins" autoStart="true" startLevel="4" />
+      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
+      <plugin id="org.eclipse.update.configurator" autoStart="true" startLevel="3" />
+      <property name="osgi.instance.area.default" value="@user.home/workspace-papyrus" />
+      <property name="osgi.requiredJavaVersion" value="1.8" />
+      <property name="org.eclipse.update.reconcile" value="false" />
+      <property name="osgi.bundles.defaultStartLevel" value="4" />
+   </configurations>
+
+   <repositories>
+      <repository location="http://download.eclipse.org/releases/2020-06/" enabled="true" />
+      <repository location="http://download.eclipse.org/eclipse/updates/4.16/" enabled="true" />
+   </repositories>
+
+   <preferencesInfo>
+      <targetfile overwrite="false"/>
+   </preferencesInfo>
+
+   <cssInfo>
+   </cssInfo>
+
+</product>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp.product/pom.xml b/rcp/org.eclipse.papyrus.aas.rcp.product/pom.xml
new file mode 100755
index 0000000..d04657b
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp.product/pom.xml
@@ -0,0 +1,95 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-rcp</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.rcp.product</artifactId>
+	<packaging>eclipse-repository</packaging>
+
+	<properties>
+		<product-id>org.eclipse.papyrus.aas.rcp.product</product-id>
+	</properties>
+
+	<build>
+		<plugins>
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-p2-repository-plugin</artifactId>
+				<version>${tycho-version}</version>
+				<configuration>
+					<includeAllDependencies>true</includeAllDependencies>
+				</configuration>
+			</plugin>
+			<!-- The 32 bit launchers are not supported by the new 4.10 platform framework -->
+            <plugin>
+                <groupId>org.eclipse.tycho</groupId>
+                <artifactId>target-platform-configuration</artifactId>
+                <version>${tycho-version}</version>
+                <configuration>
+                    <environments>
+                        <environment>
+                            <os>linux</os>
+                            <ws>gtk</ws>
+                            <arch>x86_64</arch>
+                        </environment>
+                        <environment>
+                            <os>win32</os>
+                            <ws>win32</ws>
+                            <arch>x86_64</arch>
+                        </environment>
+                        <environment>
+                            <os>macosx</os>
+                            <ws>cocoa</ws>
+                            <arch>x86_64</arch>
+                        </environment>
+                    </environments>
+                </configuration>
+            </plugin>
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-p2-director-plugin</artifactId>
+				<version>${tycho-version}</version>
+				<configuration>
+					<profile>org.eclipse.papyrus.aas</profile>
+					<formats>
+						<linux>tar.gz</linux>
+						<macosx>tar.gz</macosx>
+						<solaris>tar.gz</solaris>
+					</formats>
+					<products>
+						<product>
+							<id>${product-id}</id>
+							<rootFolder>CanvAAS</rootFolder>
+							<rootFolders>
+								<macosx>CanvAAS.app</macosx>
+								<win32>CanvAAS</win32>
+								<linux>CanvAAS</linux>
+							</rootFolders>
+						</product>
+					</products>
+				</configuration>
+				<executions>
+					<execution>
+						<id>materialize-products</id>
+						<goals>
+							<goal>materialize-products</goal>
+						</goals>
+					</execution>
+					<execution>
+						<id>archive-products</id>
+						<goals>
+							<goal>archive-products</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+</project>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/.classpath b/rcp/org.eclipse.papyrus.aas.rcp/.classpath
new file mode 100644
index 0000000..638f5b3
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/.classpath
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11">
+		<attributes>
+			<attribute name="module" value="true"/>
+		</attributes>
+	</classpathentry>
+	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/.project b/rcp/org.eclipse.papyrus.aas.rcp/.project
new file mode 100755
index 0000000..3533815
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/.project
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>org.eclipse.papyrus.aas.rcp</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.ManifestBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+		<buildCommand>
+			<name>org.eclipse.pde.SchemaBuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.pde.PluginNature</nature>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.core.resources.prefs b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.core.resources.prefs
new file mode 100755
index 0000000..896a9a5
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
\ No newline at end of file
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.core.runtime.prefs b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.core.runtime.prefs
new file mode 100755
index 0000000..5a0ad22
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.core.runtime.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+line.separator=\n
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.jdt.core.prefs b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.jdt.core.prefs
new file mode 100755
index 0000000..74c6d08
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.jdt.core.prefs
@@ -0,0 +1,297 @@
+eclipse.preferences.version=1
+org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
+org.eclipse.jdt.core.compiler.codegen.methodParameters=do not generate
+org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8
+org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
+org.eclipse.jdt.core.compiler.compliance=1.8
+org.eclipse.jdt.core.compiler.debug.lineNumber=generate
+org.eclipse.jdt.core.compiler.debug.localVariable=generate
+org.eclipse.jdt.core.compiler.debug.sourceFile=generate
+org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
+org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
+org.eclipse.jdt.core.compiler.release=disabled
+org.eclipse.jdt.core.compiler.source=1.8
+org.eclipse.jdt.core.formatter.align_type_members_on_columns=false
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation=0
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_assignment=0
+org.eclipse.jdt.core.formatter.alignment_for_binary_expression=16
+org.eclipse.jdt.core.formatter.alignment_for_compact_if=16
+org.eclipse.jdt.core.formatter.alignment_for_conditional_expression=80
+org.eclipse.jdt.core.formatter.alignment_for_enum_constants=0
+org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer=16
+org.eclipse.jdt.core.formatter.alignment_for_method_declaration=0
+org.eclipse.jdt.core.formatter.alignment_for_multiple_fields=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_resources_in_try=80
+org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation=16
+org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration=16
+org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch=16
+org.eclipse.jdt.core.formatter.blank_lines_after_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_after_package=1
+org.eclipse.jdt.core.formatter.blank_lines_before_field=0
+org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration=0
+org.eclipse.jdt.core.formatter.blank_lines_before_imports=1
+org.eclipse.jdt.core.formatter.blank_lines_before_member_type=1
+org.eclipse.jdt.core.formatter.blank_lines_before_method=1
+org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk=1
+org.eclipse.jdt.core.formatter.blank_lines_before_package=0
+org.eclipse.jdt.core.formatter.blank_lines_between_import_groups=1
+org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations=1
+org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_array_initializer=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_block_in_case=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_constant=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_lambda_body=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_method_declaration=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_switch=end_of_line
+org.eclipse.jdt.core.formatter.brace_position_for_type_declaration=end_of_line
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment=false
+org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment=false
+org.eclipse.jdt.core.formatter.comment.format_block_comments=true
+org.eclipse.jdt.core.formatter.comment.format_header=false
+org.eclipse.jdt.core.formatter.comment.format_html=true
+org.eclipse.jdt.core.formatter.comment.format_javadoc_comments=true
+org.eclipse.jdt.core.formatter.comment.format_line_comments=true
+org.eclipse.jdt.core.formatter.comment.format_source_code=true
+org.eclipse.jdt.core.formatter.comment.indent_parameter_description=true
+org.eclipse.jdt.core.formatter.comment.indent_root_tags=true
+org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags=insert
+org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter=insert
+org.eclipse.jdt.core.formatter.comment.line_length=260
+org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries=true
+org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries=true
+org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments=false
+org.eclipse.jdt.core.formatter.compact_else_if=true
+org.eclipse.jdt.core.formatter.continuation_indentation=2
+org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer=2
+org.eclipse.jdt.core.formatter.disabling_tag=@formatter\:off
+org.eclipse.jdt.core.formatter.enabling_tag=@formatter\:on
+org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line=false
+org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header=true
+org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header=true
+org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_empty_lines=false
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_block=true
+org.eclipse.jdt.core.formatter.indent_statements_compare_to_body=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases=true
+org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch=false
+org.eclipse.jdt.core.formatter.indentation.size=4
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type=insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_label=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_annotation_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_block=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_method_body=insert
+org.eclipse.jdt.core.formatter.insert_new_line_in_empty_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments=insert
+org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters=insert
+org.eclipse.jdt.core.formatter.insert_space_after_ellipsis=insert
+org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources=insert
+org.eclipse.jdt.core.formatter.insert_space_after_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter=insert
+org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_binary_operator=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_ellipsis=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try=insert
+org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return=insert
+org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw=insert
+org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional=insert
+org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources=do not insert
+org.eclipse.jdt.core.formatter.insert_space_before_unary_operator=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration=do not insert
+org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation=do not insert
+org.eclipse.jdt.core.formatter.join_lines_in_comments=false
+org.eclipse.jdt.core.formatter.join_wrapped_lines=false
+org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line=false
+org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line=false
+org.eclipse.jdt.core.formatter.lineSplit=260
+org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column=false
+org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body=0
+org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve=5
+org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line=true
+org.eclipse.jdt.core.formatter.tabulation.char=tab
+org.eclipse.jdt.core.formatter.tabulation.size=4
+org.eclipse.jdt.core.formatter.use_on_off_tags=false
+org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations=false
+org.eclipse.jdt.core.formatter.wrap_before_binary_operator=true
+org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch=true
+org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested=true
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.jdt.ui.prefs b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.jdt.ui.prefs
new file mode 100755
index 0000000..ba7542e
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.jdt.ui.prefs
@@ -0,0 +1,127 @@
+cleanup.add_default_serial_version_id=true
+cleanup.add_generated_serial_version_id=false
+cleanup.add_missing_annotations=true
+cleanup.add_missing_deprecated_annotations=true
+cleanup.add_missing_methods=false
+cleanup.add_missing_nls_tags=false
+cleanup.add_missing_override_annotations=true
+cleanup.add_missing_override_annotations_interface_methods=true
+cleanup.add_serial_version_id=false
+cleanup.always_use_blocks=true
+cleanup.always_use_parentheses_in_expressions=false
+cleanup.always_use_this_for_non_static_field_access=false
+cleanup.always_use_this_for_non_static_method_access=false
+cleanup.convert_functional_interfaces=false
+cleanup.convert_to_enhanced_for_loop=false
+cleanup.correct_indentation=false
+cleanup.format_source_code=false
+cleanup.format_source_code_changes_only=false
+cleanup.insert_inferred_type_arguments=false
+cleanup.make_local_variable_final=true
+cleanup.make_parameters_final=false
+cleanup.make_private_fields_final=true
+cleanup.make_type_abstract_if_missing_method=false
+cleanup.make_variable_declarations_final=false
+cleanup.never_use_blocks=false
+cleanup.never_use_parentheses_in_expressions=true
+cleanup.organize_imports=false
+cleanup.qualify_static_field_accesses_with_declaring_class=false
+cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+cleanup.qualify_static_member_accesses_with_declaring_class=true
+cleanup.qualify_static_method_accesses_with_declaring_class=false
+cleanup.remove_private_constructors=true
+cleanup.remove_redundant_type_arguments=true
+cleanup.remove_trailing_whitespaces=true
+cleanup.remove_trailing_whitespaces_all=true
+cleanup.remove_trailing_whitespaces_ignore_empty=false
+cleanup.remove_unnecessary_casts=true
+cleanup.remove_unnecessary_nls_tags=true
+cleanup.remove_unused_imports=true
+cleanup.remove_unused_local_variables=false
+cleanup.remove_unused_private_fields=true
+cleanup.remove_unused_private_members=false
+cleanup.remove_unused_private_methods=true
+cleanup.remove_unused_private_types=true
+cleanup.sort_members=false
+cleanup.sort_members_all=false
+cleanup.use_anonymous_class_creation=false
+cleanup.use_blocks=true
+cleanup.use_blocks_only_for_return_and_throw=false
+cleanup.use_lambda=true
+cleanup.use_parentheses_in_expressions=false
+cleanup.use_this_for_non_static_field_access=false
+cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+cleanup.use_this_for_non_static_method_access=false
+cleanup.use_this_for_non_static_method_access_only_if_necessary=true
+cleanup.use_type_arguments=false
+cleanup_profile=_Papyrus
+cleanup_settings_version=2
+eclipse.preferences.version=1
+editor_save_participant_org.eclipse.jdt.ui.postsavelistener.cleanup=true
+formatter_profile=_Papyrus
+formatter_settings_version=12
+org.eclipse.jdt.ui.ignorelowercasenames=true
+org.eclipse.jdt.ui.importorder=java;javax;org;com;
+org.eclipse.jdt.ui.javadoc=true
+org.eclipse.jdt.ui.ondemandthreshold=99
+org.eclipse.jdt.ui.staticondemandthreshold=99
+org.eclipse.jdt.ui.text.custom_code_templates=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?><templates><template autoinsert\="true" context\="gettercomment_context" deleted\="false" description\="Comment for getter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.gettercomment" name\="gettercomment">/**\n * @return the ${bare_field_name}\n */</template><template autoinsert\="true" context\="settercomment_context" deleted\="false" description\="Comment for setter method" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.settercomment" name\="settercomment">/**\n * @param ${param} the ${bare_field_name} to set\n */</template><template autoinsert\="false" context\="constructorcomment_context" deleted\="false" description\="Comment for created constructors" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorcomment" name\="constructorcomment">/**\n * Constructor.\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="filecomment_context" deleted\="false" description\="Comment for created Java files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.filecomment" name\="filecomment">/*****************************************************************************\n * Copyright (c) ${year} CEA LIST and others.\n * \n * All rights reserved. This program and the accompanying materials\n * are made available under the terms of the Eclipse Public License 2.0\n * which accompanies this distribution, and is available at\n * http\://www.eclipse.org/legal/epl-2.0/\n *\n * SPDX-License-Identifier: EPL-2.0\n *\n * Contributors\:\n *   CEA LIST - Initial API and implementation\n *   \n *****************************************************************************/\n</template><template autoinsert\="true" context\="typecomment_context" deleted\="false" description\="Comment for created types" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.typecomment" name\="typecomment">/**\n * @author ${user}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="fieldcomment_context" deleted\="false" description\="Comment for fields" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.fieldcomment" name\="fieldcomment">/**\n * \n */</template><template autoinsert\="true" context\="methodcomment_context" deleted\="false" description\="Comment for non-overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodcomment" name\="methodcomment">/**\n * ${tags}\n */</template><template autoinsert\="false" context\="overridecomment_context" deleted\="false" description\="Comment for overriding methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.overridecomment" name\="overridecomment">/**\n * ${see_to_overridden}\n *\n * ${tags}\n */</template><template autoinsert\="false" context\="delegatecomment_context" deleted\="false" description\="Comment for delegate methods" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.delegatecomment" name\="delegatecomment">/**\n * ${see_to_target}\n *\n * ${tags}\n */</template><template autoinsert\="true" context\="newtype_context" deleted\="false" description\="Newly created files" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.newtype" name\="newtype">${filecomment}\n${package_declaration}\n\n${typecomment}\n${type_declaration}</template><template autoinsert\="true" context\="classbody_context" deleted\="false" description\="Code in new class type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.classbody" name\="classbody">\n</template><template autoinsert\="true" context\="interfacebody_context" deleted\="false" description\="Code in new interface type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.interfacebody" name\="interfacebody">\n</template><template autoinsert\="true" context\="enumbody_context" deleted\="false" description\="Code in new enum type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.enumbody" name\="enumbody">\n</template><template autoinsert\="true" context\="annotationbody_context" deleted\="false" description\="Code in new annotation type bodies" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.annotationbody" name\="annotationbody">\n</template><template autoinsert\="true" context\="catchblock_context" deleted\="false" description\="Code in new catch blocks" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.catchblock" name\="catchblock">// ${todo} Auto-generated catch block\n${exception_var}.printStackTrace();</template><template autoinsert\="true" context\="methodbody_context" deleted\="false" description\="Code in created method stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.methodbody" name\="methodbody">// ${todo} Auto-generated method stub\n${body_statement}</template><template autoinsert\="true" context\="constructorbody_context" deleted\="false" description\="Code in created constructor stubs" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.constructorbody" name\="constructorbody">${body_statement}\n// ${todo} Auto-generated constructor stub</template><template autoinsert\="true" context\="getterbody_context" deleted\="false" description\="Code in created getters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.getterbody" name\="getterbody">return ${field};</template><template autoinsert\="true" context\="setterbody_context" deleted\="false" description\="Code in created setters" enabled\="true" id\="org.eclipse.jdt.ui.text.codetemplates.setterbody" name\="setterbody">${field} \= ${param};</template></templates>
+sp_cleanup.add_default_serial_version_id=true
+sp_cleanup.add_generated_serial_version_id=false
+sp_cleanup.add_missing_annotations=true
+sp_cleanup.add_missing_deprecated_annotations=true
+sp_cleanup.add_missing_methods=false
+sp_cleanup.add_missing_nls_tags=false
+sp_cleanup.add_missing_override_annotations=true
+sp_cleanup.add_missing_override_annotations_interface_methods=true
+sp_cleanup.add_serial_version_id=false
+sp_cleanup.always_use_blocks=true
+sp_cleanup.always_use_parentheses_in_expressions=false
+sp_cleanup.always_use_this_for_non_static_field_access=false
+sp_cleanup.always_use_this_for_non_static_method_access=false
+sp_cleanup.convert_functional_interfaces=false
+sp_cleanup.convert_to_enhanced_for_loop=false
+sp_cleanup.correct_indentation=false
+sp_cleanup.format_source_code=true
+sp_cleanup.format_source_code_changes_only=false
+sp_cleanup.insert_inferred_type_arguments=false
+sp_cleanup.make_local_variable_final=true
+sp_cleanup.make_parameters_final=false
+sp_cleanup.make_private_fields_final=true
+sp_cleanup.make_type_abstract_if_missing_method=false
+sp_cleanup.make_variable_declarations_final=false
+sp_cleanup.never_use_blocks=false
+sp_cleanup.never_use_parentheses_in_expressions=true
+sp_cleanup.on_save_use_additional_actions=true
+sp_cleanup.organize_imports=true
+sp_cleanup.qualify_static_field_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_member_accesses_through_instances_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_through_subtypes_with_declaring_class=true
+sp_cleanup.qualify_static_member_accesses_with_declaring_class=false
+sp_cleanup.qualify_static_method_accesses_with_declaring_class=false
+sp_cleanup.remove_private_constructors=true
+sp_cleanup.remove_redundant_modifiers=false
+sp_cleanup.remove_redundant_type_arguments=true
+sp_cleanup.remove_trailing_whitespaces=true
+sp_cleanup.remove_trailing_whitespaces_all=true
+sp_cleanup.remove_trailing_whitespaces_ignore_empty=false
+sp_cleanup.remove_unnecessary_casts=true
+sp_cleanup.remove_unnecessary_nls_tags=true
+sp_cleanup.remove_unused_imports=true
+sp_cleanup.remove_unused_local_variables=false
+sp_cleanup.remove_unused_private_fields=true
+sp_cleanup.remove_unused_private_members=false
+sp_cleanup.remove_unused_private_methods=true
+sp_cleanup.remove_unused_private_types=true
+sp_cleanup.sort_members=false
+sp_cleanup.sort_members_all=false
+sp_cleanup.use_anonymous_class_creation=false
+sp_cleanup.use_blocks=true
+sp_cleanup.use_blocks_only_for_return_and_throw=false
+sp_cleanup.use_lambda=true
+sp_cleanup.use_parentheses_in_expressions=false
+sp_cleanup.use_this_for_non_static_field_access=false
+sp_cleanup.use_this_for_non_static_field_access_only_if_necessary=true
+sp_cleanup.use_this_for_non_static_method_access=false
+sp_cleanup.use_this_for_non_static_method_access_only_if_necessary=true
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.pde.api.tools.prefs b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.pde.api.tools.prefs
new file mode 100755
index 0000000..b2260f8
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/.settings/org.eclipse.pde.api.tools.prefs
@@ -0,0 +1,104 @@
+ANNOTATION_ELEMENT_TYPE_ADDED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_ADDED_METHOD_WITHOUT_DEFAULT_VALUE=Error
+ANNOTATION_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_FIELD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_METHOD=Error
+ANNOTATION_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_API_TYPE=Error
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_API_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_REEXPORTED_TYPE=Warning
+API_COMPONENT_ELEMENT_TYPE_REMOVED_TYPE=Error
+API_USE_SCAN_FIELD_SEVERITY=Error
+API_USE_SCAN_METHOD_SEVERITY=Error
+API_USE_SCAN_TYPE_SEVERITY=Error
+CLASS_ELEMENT_TYPE_ADDED_FIELD=Warning
+CLASS_ELEMENT_TYPE_ADDED_METHOD=Error
+CLASS_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+CLASS_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CLASS_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+CLASS_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+CLASS_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+CLASS_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+CLASS_ELEMENT_TYPE_REMOVED_CONSTRUCTOR=Error
+CLASS_ELEMENT_TYPE_REMOVED_FIELD=Error
+CLASS_ELEMENT_TYPE_REMOVED_METHOD=Error
+CLASS_ELEMENT_TYPE_REMOVED_SUPERCLASS=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+CLASS_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+CONSTRUCTOR_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+CONSTRUCTOR_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+ENUM_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+ENUM_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+ENUM_ELEMENT_TYPE_REMOVED_ENUM_CONSTANT=Error
+ENUM_ELEMENT_TYPE_REMOVED_FIELD=Error
+ENUM_ELEMENT_TYPE_REMOVED_METHOD=Error
+ENUM_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+FIELD_ELEMENT_TYPE_ADDED_VALUE=Warning
+FIELD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+FIELD_ELEMENT_TYPE_CHANGED_FINAL_TO_NON_FINAL_STATIC_CONSTANT=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+FIELD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+FIELD_ELEMENT_TYPE_CHANGED_TYPE=Error
+FIELD_ELEMENT_TYPE_CHANGED_VALUE=Warning
+FIELD_ELEMENT_TYPE_REMOVED_TYPE_ARGUMENT=Error
+FIELD_ELEMENT_TYPE_REMOVED_VALUE=Error
+ILLEGAL_EXTEND=Warning
+ILLEGAL_IMPLEMENT=Warning
+ILLEGAL_INSTANTIATE=Warning
+ILLEGAL_OVERRIDE=Warning
+ILLEGAL_REFERENCE=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_DEFAULT_METHOD=Warning
+INTERFACE_ELEMENT_TYPE_ADDED_FIELD=Ignore
+INTERFACE_ELEMENT_TYPE_ADDED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_SUPER_INTERFACE_WITH_METHODS=Error
+INTERFACE_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_CONTRACTED_SUPERINTERFACES_SET=Error
+INTERFACE_ELEMENT_TYPE_CHANGED_TYPE_CONVERSION=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_FIELD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_METHOD=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_MEMBER=Error
+INTERFACE_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+INVALID_ANNOTATION=Ignore
+INVALID_JAVADOC_TAG=Ignore
+INVALID_REFERENCE_IN_SYSTEM_LIBRARIES=Ignore
+LEAK_EXTEND=Warning
+LEAK_FIELD_DECL=Warning
+LEAK_IMPLEMENT=Warning
+LEAK_METHOD_PARAM=Warning
+LEAK_METHOD_RETURN_TYPE=Warning
+METHOD_ELEMENT_TYPE_ADDED_RESTRICTIONS=Error
+METHOD_ELEMENT_TYPE_ADDED_TYPE_PARAMETER=Error
+METHOD_ELEMENT_TYPE_CHANGED_DECREASE_ACCESS=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_ABSTRACT_TO_ABSTRACT=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_FINAL_TO_FINAL=Error
+METHOD_ELEMENT_TYPE_CHANGED_NON_STATIC_TO_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_STATIC_TO_NON_STATIC=Error
+METHOD_ELEMENT_TYPE_CHANGED_VARARGS_TO_ARRAY=Error
+METHOD_ELEMENT_TYPE_REMOVED_ANNOTATION_DEFAULT_VALUE=Error
+METHOD_ELEMENT_TYPE_REMOVED_TYPE_PARAMETER=Error
+MISSING_EE_DESCRIPTIONS=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_ADDED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_CHANGED_INTERFACE_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_CLASS_BOUND=Error
+TYPE_PARAMETER_ELEMENT_TYPE_REMOVED_INTERFACE_BOUND=Error
+UNUSED_PROBLEM_FILTERS=Warning
+automatically_removed_unused_problem_filters=Enabled
+changed_execution_env=Warning
+eclipse.preferences.version=1
+incompatible_api_component_version=Warning
+incompatible_api_component_version_include_major_without_breaking_change=Disabled
+incompatible_api_component_version_include_minor_without_api_change=Disabled
+incompatible_api_component_version_report_major_without_breaking_change=Error
+incompatible_api_component_version_report_minor_without_api_change=Error
+invalid_since_tag_version=Error
+malformed_since_tag=Error
+missing_since_tag=Error
+report_api_breakage_when_major_version_incremented=Disabled
+report_resolution_errors_api_component=Warning
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/META-INF/MANIFEST.MF b/rcp/org.eclipse.papyrus.aas.rcp/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..128be6a
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/META-INF/MANIFEST.MF
@@ -0,0 +1,12 @@
+Manifest-Version: 1.0
+Require-Bundle: org.eclipse.e4.ui.css.swt.theme
+Bundle-Vendor: %providerName
+Bundle-ActivationPolicy: lazy
+Bundle-Version: 0.0.1.qualifier
+Eclipse-BundleShape: dir
+Bundle-Name: %pluginName
+Bundle-Localization: plugin
+Bundle-ManifestVersion: 2
+Bundle-SymbolicName: org.eclipse.papyrus.aas.rcp;singleton:=true
+Bundle-RequiredExecutionEnvironment: JavaSE-11
+Automatic-Module-Name: org.eclipse.papyrus.aas.rcp
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/about.html b/rcp/org.eclipse.papyrus.aas.rcp/about.html
new file mode 100755
index 0000000..997c5a2
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/about.html
@@ -0,0 +1,28 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
+    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"/>
+<title>About</title>
+</head>
+<body lang="EN-US">
+<h2>About This Content</h2>
+ 
+<p>November 30, 2017</p>	
+<h3>License</h3>
+
+<p>The Eclipse Foundation makes available all content in this plug-in (&quot;Content&quot;).  Unless otherwise 
+indicated below, the Content is provided to you under the terms and conditions of the
+Eclipse Public License Version 2.0 (&quot;EPL&quot;).  A copy of the EPL is available 
+at <a href="https://www.eclipse.org/legal/epl-2.0/">https://www.eclipse.org/legal/epl-2.0/</a>.
+For purposes of the EPL, &quot;Program&quot; will mean the Content.</p>
+
+<p>If you did not receive this Content directly from the Eclipse Foundation, the Content is 
+being redistributed by another party (&quot;Redistributor&quot;) and different terms and conditions may
+apply to your use of any object code in the Content.  Check the Redistributor's license that was 
+provided with the Content.  If no such license exists, contact the Redistributor.  Unless otherwise
+indicated below, the terms and conditions of the EPL still apply to any source code in the Content
+and such source code may be obtained at <a href="http://www.eclipse.org/">http://www.eclipse.org</a>.</p>
+
+</body>
+</html>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/about.mappings b/rcp/org.eclipse.papyrus.aas.rcp/about.mappings
new file mode 100755
index 0000000..de1370b
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/about.mappings
@@ -0,0 +1,7 @@
+# about.mappings
+# contains fill-ins for about.properties
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# This file does not need to be translated.
+
+0=@eclipse.simultaneous.release.build@
+1=@eclipse.simultaneous.release.name@
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/build.properties b/rcp/org.eclipse.papyrus.aas.rcp/build.properties
new file mode 100755
index 0000000..1e59312
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/build.properties
@@ -0,0 +1,9 @@
+bin.includes = META-INF/,\
+               .,\
+               plugin.xml,\
+               splash.bmp,\
+               icons/,\
+               plugin_customization.ini,\
+               about.mappings,\
+               about.html,\
+               plugin.properties
\ No newline at end of file
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/icon.xpm b/rcp/org.eclipse.papyrus.aas.rcp/icons/icon.xpm
new file mode 100755
index 0000000..f23f89b
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/icon.xpm
@@ -0,0 +1,303 @@
+/* XPM */
+static char * C:\Users\fn224852\Workspaces\Keulkeul\org_eclipse_papyrus_rcp\icons\icon_xpm[] = {
+"256 256 44 1",
+" 	c None",
+".	c #98BF06",
+"+	c #1C99B6",
+"@	c #88AA08",
+"#	c #75910B",
+"$	c #76910B",
+"%	c #87A908",
+"&	c #97BE06",
+"*	c #7D9C0B",
+"=	c #546411",
+"-	c #3A4315",
+";	c #212218",
+">	c #19171A",
+",	c #1E1D19",
+"'	c #333916",
+")	c #495712",
+"!	c #809F0A",
+"~	c #90B408",
+"{	c #4C5B11",
+"]	c #1A181A",
+"^	c #4D5C11",
+"/	c #8FB308",
+"(	c #78950B",
+"_	c #242519",
+":	c #262818",
+"<	c #8BAE08",
+"[	c #7C9B0B",
+"}	c #373F15",
+"|	c #8AAD08",
+"1	c #202019",
+"2	c #8BAD08",
+"3	c #363E15",
+"4	c #323816",
+"5	c #7D9C0A",
+"6	c #96BC06",
+"7	c #576910",
+"8	c #282B18",
+"9	c #252619",
+"0	c #647A0F",
+"a	c #84A509",
+"b	c #60750E",
+"c	c #495612",
+"d	c #495512",
+"e	c #677E0E",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                        ...........                                                             ",
+"                                                                                                                                                                            .............................                                                       ",
+"                                                                                                                                                                      ......................................                                                    ",
+"                                                                                                                                                                  ............................................                                                  ",
+"                                                                                                                                                               .................................................                                                ",
+"                                                                                                                                                            ......................................................   ++                                         ",
+"                                                                                                                                                         ...........................................................  ++++                                      ",
+"                                                                                                                                                       ..............................................................  ++++++                                   ",
+"                                                                                                                                                     .................................................................   +++++                                  ",
+"                                                                                                                                                   ....................................................................   ++++++                                ",
+"                                                                                                                                                 .......................................................................   ++++++                               ",
+"                                                                                                                                                .........................................................................   ++++++                              ",
+"                                                                                                                                              ............................................................................  +++++++                             ",
+"                                                                                                                                             ..............................................................................  +++++++                            ",
+"                                                                                                                                            ...............................................................................   +++++++                           ",
+"                                                                                                                                           .................................................................................   +++++++                          ",
+"                                                                                                                                         ...................................................................................   ++++++++                         ",
+"                                                                                                                                        .....................................................................................   +++++++                         ",
+"                                                                                                                                       ......................................................................................   ++++++++                        ",
+"                                                                                                                                       ........................................@#$%&..........................................   ++++++++                       ",
+"                                                                                                                                      .....................................*=-;>>>>,')!.......................................   +++++++++                      ",
+"                                                                                                                                     ....................................~{]>>>>>>>>>>]^/......................................  +++++++++                      ",
+"                                                                                                                             >>>>>  ....................................(_>>>>>>>>>>>>>>:<.....................................   +++++++++                     ",
+"                                                                                                                    >>>>>>>>>>>>>   ....................................'>>>>>>>>>>>>>>>>{.....................................   ++++++++++                    ",
+"                                                                                                               >>>>>>>>>>>>>>>>>>  ....................................[>>>>>>>>>>>>>>>>>}.....................................   ++++++++++                    ",
+"                                                                                                          >>>>>>>>>>>>>>>>>>>>>>  .....................................|>>>>>>>>>>>>>>>>>)......................................   ++++++++++                   ",
+"                                                                                                     >>>>>>>>>>>>>>>>>>>>>>>>>>>  ......................................'>>>>>>>>>>>>>>>1%......................................   +++++++++++                  ",
+"                                                                                                 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ......................................23>>>>>>>>>>>>>45.......................................   +++++++++++                  ",
+"                                                                                             >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  ........................................678>>>>>>>>>90&.........................................  ++++++++++++                 ",
+"                                                                                         >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ...........................................abcddd^ea............................................  +++++++++++++                ",
+"                                                                                      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  .................................................................................................   ++++++++++++                ",
+"                                                                                    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  .................................................................................................   +++++++++++++               ",
+"                                                                                 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   .................................................................................................   +++++++++++++               ",
+"                                                                              >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   .................................................................................................   ++++++++++++++              ",
+"                                                                           >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  ..................................................................................................   ++++++++++++++              ",
+"                                                                         >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  ..................................................................................................   +++++++++++++++             ",
+"                                                                       >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  ..................................................................................................   +++++++++++++++             ",
+"                                                                     >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ...................................................................................................  ++++++++++++++++            ",
+"                                                                   >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ...................................................................................................  ++++++++++++++++            ",
+"                                                                >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  ...................................................................................................  +++++++++++++++++           ",
+"                                                              >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  ...................................................................................................  +++++++++++++++++           ",
+"                                                             >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  ...................................................................................................  ++++++++++++++++++          ",
+"                                                           >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>  ...................................................................................................  ++++++++++++++++++          ",
+"                                                         >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ..................................................................................................  +++++++++++++++++++         ",
+"                                                        >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   .................................................................................................   +++++++++++++++++++         ",
+"                                                      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   .................................................................................................   ++++++++++++++++++++        ",
+"                                                    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ................................................................................................   ++++++++++++++++++++        ",
+"                                                   >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ................................................................................................   ++++++++++++++++++++        ",
+"                                                 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ...............................................................................................   +++++++++++++++++++++       ",
+"                                                >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ...............................................................................................   +++++++++++++++++++++       ",
+"                                               >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ..............................................................................................  ++++++++++++++++++++++       ",
+"                                             >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   .............................................................................................  +++++++++++++++++++++++      ",
+"                                            >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>    ............................................................................................  +++++++++++++++++++++++      ",
+"                                           >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>    ...........................................................................................  ++++++++++++++++++++++++     ",
+"                                         >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>    .........................................................................................   ++++++++++++++++++++++++     ",
+"                                        >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>   ........................................................................................   ++++++++++++++++++++++++     ",
+"                                       >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>    ......................................................................................   ++++++++++++++++++++++++     ",
+"                                      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>    ....................................................................................  ++++++++++++++++++++++++++    ",
+"                                     >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                 .................................................................................   ++++++++++++++++++++++++++    ",
+"                                    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                             ...............................................................................   ++++++++++++++++++++++++++    ",
+"                                   >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                       ............................................................................   ++++++++++++++++++++++++++    ",
+"                                  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                 ........................................................................  ++++++++++++++++++++++++++++   ",
+"                                 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                          ...................................................................  ++++++++++++++++++++++++++++   ",
+"                                >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                      ..........................................................   ++++++++++++++++++++++++++++   ",
+"                               >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                               .....................................................   ++++++++++++++++++++++++++++   ",
+"                              >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                    ...................................................  ++++++++++++++++++++++++++++++  ",
+"                             >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                        ..................................................  ++++++++++++++++++++++++++++++  ",
+"                            >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                             ................................................   ++++++++++++++++++++++++++++++  ",
+"                           >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                               ................................................   ++++++++++++++++++++++++++++++  ",
+"                          >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                   ...............................................  +++++++++++++++++++++++++++++++  ",
+"                         >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                     ..............................................   +++++++++++++++++++++++++++++++  ",
+"                         >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                         .............................................  +++++++++++++++++++++++++++++++++ ",
+"                        >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                           ............................................   +++++++++++++++++++++++++++++++++ ",
+"                       >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                             ............................................   +++++++++++++++++++++++++++++++++ ",
+"                      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                               ............................................  ++++++++++++++++++++++++++++++++++ ",
+"                      >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                 ...........................................   ++++++++++++++++++++++++++++++++++ ",
+"                     >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                   ...........................................   ++++++++++++++++++++++++++++++++++ ",
+"                    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                     ..........................................   +++++++++++++++++++++++++++++++++++ ",
+"                    >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                      ...........................................   +++++++++++++++++++++++++++++++++++ ",
+"                   >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                        ...........................................  +++++++++++++++++++++++++++++++++++++",
+"                  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                         ..........................................   +++++++++++++++++++++++++++++++++++++",
+"                  >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                          ...........................................  ++++++++++++++++++++++++++++++++++++++",
+"                 >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                           ..........................................   ++++++++++++++++++++++++++++++++++++++",
+"                >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                             ..........................................  +++++++++++++++++++++++++++++++++++++++",
+"                >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                             ..........................................   +++++++++++++++++++++++++++++++++++++++",
+"               >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                               ..........................................  ++++++++++++++++++++++++++++++++++++++++",
+"               >>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                               ..........................................   ++++++++++++++++++++++++++++++++++++++++",
+"              >>>>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                               ...........................................  +++++++++++++++++++++++++++++++++++++++++",
+"              >>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                                ...........................................   +++++++++++++++++++++++++++++++++++++++++",
+"             >>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                                 ...........................................  ++++++++++++++++++++++++++++++++++++++++++",
+"            >>>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                                 ...........................................   ++++++++++++++++++++++++++++++++++++++++++",
+"            >>>>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                                 ............................................  +++++++++++++++++++++++++++++++++++++++++++",
+"            >>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                                   ...........................................   +++++++++++++++++++++++++++++++++++++++++++",
+"           >>>>>>>>>>>>>>>>>>>>>>>>                                                                                                                                   ............................................  ++++++++++++++++++++++++++++++++++++++++++++",
+"           >>>>>>>>>>>>>>>>>>>>>>>                                                                                                                                   ............................................   ++++++++++++++++++++++++++++++++++++++++++++",
+"          >>>>>>>>>>>>>>>>>>>>>>>                                                                                                                                   .............................................  +++++++++++++++++++++++++++++++++++++++++++++",
+"          >>>>>>>>>>>>>>>>>>>>>>                                                                                                                                    ............................................  ++++++++++++++++++++++++++++++++++++++++++++++",
+"         >>>>>>>>>>>>>>>>>>>>>>                                                                                                                                    .............................................  +++++++++++++++++++++++++++++++++++++++++++++ ",
+"         >>>>>>>>>>>>>>>>>>>>>                                                                                                                                    .............................................  ++++++++++++++++++++++++++++++++++++++++++++++ ",
+"        >>>>>>>>>>>>>>>>>>>>>                                                                                                                                    .............................................   ++++++++++++++++++++++++++++++++++++++++++++++ ",
+"        >>>>>>>>>>>>>>>>>>>>                                                                                                                                     .............................................  +++++++++++++++++++++++++++++++++++++++++++++++ ",
+"        >>>>>>>>>>>>>>>>>>>                                                                                                                                     .............................................  ++++++++++++++++++++++++++++++++++++++++++++++++ ",
+"       >>>>>>>>>>>>>>>>>>>                                                                                                                                     .............................................   ++++++++++++++++++++++++++++++++++++++++++++++++ ",
+"       >>>>>>>>>>>>>>>>>>                                                                                                                                     ..............................................  +++++++++++++++++++++++++++++++++++++++++++++++++ ",
+"       >>>>>>>>>>>>>>>>>                                                                                                                                      .............................................  ++++++++++++++++++++++++++++++++++++++++++++++++++ ",
+"      >>>>>>>>>>>>>>>>>                                                                                                                                      .............................................   ++++++++++++++++++++++++++++++++++++++++++++++++++ ",
+"      >>>>>>>>>>>>>>>>                                                                                                                                       .............................................  ++++++++++++++++++++++++++++++++++++++++++++++++++  ",
+"      >>>>>>>>>>>>>>>                                                                                                                                       .............................................  +++++++++++++++++++++++++++++++++++++++++++++++++++  ",
+"     >>>>>>>>>>>>>>>                                                                                                                                       ..............................................  +++++++++++++++++++++++++++++++++++++++++++++++++++  ",
+"     >>>>>>>>>>>>>>>                                                                                                                                       .............................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++  ",
+"     >>>>>>>>>>>>>>                                                                                                                                       .............................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++  ",
+"    >>>>>>>>>>>>>>                                                                                                                                       .............................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++   ",
+"    >>>>>>>>>>>>>                                                                                                                                        .............................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++   ",
+"    >>>>>>>>>>>>                                                                                                                                        .............................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++   ",
+"    >>>>>>>>>>>>                                                                                                                                       .............................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++   ",
+"   >>>>>>>>>>>>                                                                                                                                        ............................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++    ",
+"   >>>>>>>>>>>                                                                                                                                        .............................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++    ",
+"   >>>>>>>>>>                                                                                                                                        .............................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++    ",
+"   >>>>>>>>>>                                                                                                                                        ............................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++    ",
+"  >>>>>>>>>>                                                                                                                                        ............................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++     ",
+"  >>>>>>>>>                                                                                                                                         ............................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++     ",
+"  >>>>>>>>>                                                                                                                                        ............................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++     ",
+"  >>>>>>>>                                                                                                                                         ...........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++      ",
+"  >>>>>>>>                                                                                                                                        ...........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++      ",
+"  >>>>>>>                                                                                                                                        ...........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++      ",
+" >>>>>>>                                                                                                                                         ...........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++       ",
+" >>>>>>>                                                                                                                                        ...........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++       ",
+" >>>>>>                                                                                                                                         ..........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++       ",
+" >>>>>>                                                                                                                                        ..........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++        ",
+" >>>>>                                                                                                                                         .........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++        ",
+" >>>>                                                                                                                                         ..........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++         ",
+" >>>>                                                                                                                                         .........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++         ",
+" >>>                                                                                                                                         .........................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++         ",
+">>>>                                                                                                                                         .........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++          ",
+">>>                                                                                                                                         .........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++          ",
+">>>                                                                                                                                         ........................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++           ",
+">>>                                                                                                                                        .........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++           ",
+">>                                                                                                                                         ........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++            ",
+">>                                                                                                                                        ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++            ",
+">                                                                                                                                         ........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++             ",
+"                                                                                                                                         ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++             ",
+"                                                                                                                                         ........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++              ",
+"                                                                                                                                        ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++              ",
+"                                                                                                                                        ........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++               ",
+"                                                                                                                                       ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++               ",
+"                                                                                                                                       ........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                ",
+"                                                                                                                                      ........................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                 ",
+"                                                                                                                                      ........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                 ",
+"                                                                                                                                      .......................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                  ",
+"                                                                                                                                     ........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                   ",
+"                                                                                                                                     .......................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                   ",
+"                                                                                                                                    ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                    ",
+"                                                                                                                                    ........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                     ",
+"                                                                                                                                    .......................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                     ",
+"                                                                                                                                   ........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                      ",
+"                                                                                                                                   ........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                       ",
+"                                                                                                                                  ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                        ",
+"                                                                                                                                  ........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                        ",
+"                                                                                                                                  ........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                         ",
+"                                                                                                                                 ........................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                          ",
+"                                                                                                                                 ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++                           ",
+"                                                                                                                                 ........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++                           ",
+"                                                                                                                                ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++++++                            ",
+"                                                                                                                                ........................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++++                             ",
+"                                                                                                                                ........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++++++                              ",
+"                                                                                                                               .........................................  +++++++++++++++++++++++++++++++++++++++++++++++++++++++                               ",
+"                                                                                                                               ........................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++++                                ",
+"                                                                                                                               ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++++                                 ",
+"                                                                                                                              .........................................   ++++++++++++++++++++++++++++++++++++++++++++++++++++                                  ",
+"                                                                                                                              .........................................  ++++++++++++++++++++++++++++++++++++++++++++++++++++                                   ",
+"                                                                                                                              ........................................   +++++++++++++++++++++++++++++++++++++++++++++++++++                                    ",
+"                                                                                                                              ........................................   ++++++++++++++++++++++++++++++++++++++++++++++++++                                     ",
+"                                                                                                                             .........................................   +++++++++++++++++++++++++++++++++++++++++++++++++                                      ",
+"                                                                                                                             .........................................  +++++++++++++++++++++++++++++++++++++++++++++++++                                       ",
+"                                                                                                                             .........................................  ++++++++++++++++++++++++++++++++++++++++++++++++                                        ",
+"                                                                                                                             .........................................  +++++++++++++++++++++++++++++++++++++++++++++++                                         ",
+"                                                                                                                            .........................................   ++++++++++++++++++++++++++++++++++++++++++++++                                          ",
+"                                                                                                                            .........................................   ++++++++++++++++++++++++++++++++++++++++++++                                            ",
+"                                                                                                                            .........................................   +++++++++++++++++++++++++++++++++++++++++++                                             ",
+"                                                                                                                            .........................................   ++++++++++++++++++++++++++++++++++++++++++                                              ",
+"                                                                                                                           ..........................................   +++++++++++++++++++++++++++++++++++++++++                                               ",
+"                                                                                                                           ..........................................  +++++++++++++++++++++++++++++++++++++++++                                                ",
+"                                                                                                                           ..........................................  +++++++++++++++++++++++++++++++++++++++                                                  ",
+"                                                                                                                           .........................................   ++++++++++++++++++++++++++++++++++++++                                                   ",
+"                                                                                                                           .........................................   +++++++++++++++++++++++++++++++++++++                                                    ",
+"                                                                                                                          ..........................................   +++++++++++++++++++++++++++++++++++                                                      ",
+"                                                                                                                          ..........................................   ++++++++++++++++++++++++++++++++++                                                       ",
+"                                                                                                                          ..........................................   ++++++++++++++++++++++++++++++++                                                         ",
+"                                                                                                                          ..........................................   +++++++++++++++++++++++++++++++                                                          ",
+"                                                                                                                          ..........................................   +++++++++++++++++++++++++++++                                                            ",
+"                                                                                                                          ..........................................   ++++++++++++++++++++++++++++                                                             ",
+"                                                                                                                         ...........................................   ++++++++++++++++++++++++++                                                               ",
+"                                                                                                                         ...........................................   ++++++++++++++++++++++++                                                                 ",
+"                                                                                                                         ...........................................   ++++++++++++++++++++++                                                                   ",
+"                                                                                                                         ...........................................   ++++++++++++++++++++                                                                     ",
+"                                                                                                                         ...........................................   ++++++++++++++++++                                                                       ",
+"                                                                                                                         ...........................................   +++++++++++++++++                                                                        ",
+"                                                                                                                         ...........................................   +++++++++++++++                                                                          ",
+"                                                                                                                         ...........................................   ++++++++++++                                                                             ",
+"                                                                                                                         ...........................................   ++++++++++                                                                               ",
+"                                                                                                                         ...........................................   +++++++                                                                                  ",
+"                                                                                                                        ............................................   +++++                                                                                    ",
+"                                                                                                                        ............................................   ++                                                                                       ",
+"                                                                                                                        ............................................                                                                                            ",
+"                                                                                                                        ............................................                                                                                            ",
+"                                                                                                                        .........................................                                                                                               ",
+"                                                                                                                        .....................................                                                                                                   ",
+"                                                                                                                        .................................                                                                                                       ",
+"                                                                                                                        .............................                                                                                                           ",
+"                                                                                                                        ........................                                                                                                                ",
+"                                                                                                                         .................                                                                                                                      ",
+"                                                                                                                          .......                                                                                                                               ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                ",
+"                                                                                                                                                                                                                                                                "};
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus.icns b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus.icns
new file mode 100755
index 0000000..575adbe
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus.icns
Binary files differ
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus.ico b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus.ico
new file mode 100755
index 0000000..ef635cc
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus.ico
Binary files differ
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus.svg b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus.svg
new file mode 100755
index 0000000..b0139f9
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus.svg
@@ -0,0 +1,89 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
+
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   width="256"
+   height="256"
+   id="svg2"
+   version="1.1"
+   inkscape:version="0.48.4 r9939"
+   sodipodi:docname="papyrus.svg">
+  <defs
+     id="defs4" />
+  <sodipodi:namedview
+     id="base"
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1.0"
+     inkscape:pageopacity="0.0"
+     inkscape:pageshadow="2"
+     inkscape:zoom="0.99999999"
+     inkscape:cx="98.541937"
+     inkscape:cy="421.45466"
+     inkscape:document-units="px"
+     inkscape:current-layer="layer1"
+     showgrid="false"
+     inkscape:window-width="1324"
+     inkscape:window-height="995"
+     inkscape:window-x="196"
+     inkscape:window-y="335"
+     inkscape:window-maximized="0" />
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <g
+     inkscape:label="Calque 1"
+     inkscape:groupmode="layer"
+     id="layer1"
+     transform="translate(0,-796.36218)">
+    <g
+       id="g3897"
+       inkscape:export-xdpi="3.8683043"
+       inkscape:export-ydpi="3.8683043"
+       transform="matrix(0.68769854,0,0,0.68769854,-93.851334,781.47584)">
+      <path
+         style="fill:#98bf06;fill-opacity:1"
+         clip-path="none"
+         d="m 408.97162,54.007189 c -26.21801,0.525114 -54.90464,6.033768 -74.33433,25.001884 -11.73097,11.961376 -19.27216,32.850907 -8.22812,47.623117 12.26616,15.24526 33.19469,18.1222 51.5,19.75 9.98482,1.20261 15.93883,11.82567 12.41905,21.10367 -3.98575,14.71792 -16.02793,24.70108 -23.8251,37.27133 -29.41059,43.10377 -52.60154,92.68463 -55.28458,145.54029 -0.46747,8.17781 -1.90972,12.30723 9.44599,11.16979 18.61764,-1.32328 37.08148,-4.89613 54.83899,-10.64758 -3.53804,-42.07217 7.88427,-86.56369 36.68745,-118.1875 20.0335,-24.58532 37.189,-52.17015 46.78133,-82.60045 6.34035,-24.15242 9.81281,-52.079963 -3.25043,-74.649501 -9.39375,-16.109223 -28.95526,-22.422386 -46.75025,-21.37505 z"
+         id="path2987-4"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="ccccccccccccc" />
+      <path
+         clip-path="none"
+         sodipodi:nodetypes="sscscsssssss"
+         inkscape:connector-curvature="0"
+         id="path2987-1"
+         d="m 392.78412,82.319689 c -4.65185,0.2088 -8.92238,1.77276 -11.09375,4.125 -0.97268,1.05368 -1.368,1.89239 -1.4375,3.15625 -0.0709,1.29031 0.18899,2.0884 0.96875,3.125 1.53115,2.03545 4.47449,3.43158 8.5,4 1.67701,0.23681 4.5534,0.22825 6.28125,0 1.49012,-0.19685 3.98118,-0.7703 4.71875,-1.09375 2.26284,-0.9923 3.10321,-1.49557 4.15625,-2.5 1.34906,-1.28678 1.86275,-2.48545 1.78125,-4.0625 -0.0657,-1.27297 -0.49177,-2.17933 -1.5625,-3.25 -2.10445,-2.10437 -5.70429,-3.31968 -10.28125,-3.5 -0.67484,-0.0266 -1.3667,-0.0298 -2.03125,0 z"
+         style="fill:#19171a;fill-opacity:1" />
+      <path
+         style="fill:#19171a;fill-opacity:1"
+         clip-path="none"
+         d="m 325.56537,85.475939 c -53.40066,4.647009 -108.83756,22.459411 -145.7999,63.113601 -26.6642,29.24111 -42.13429,68.31937 -43.29385,107.8239 1.50901,3.93551 6.09608,-11.94132 9.28591,-15.52472 25.70637,-47.60497 73.03762,-81.35547 125.10367,-94.44372 21.44373,-5.73511 43.65566,-8.38935 65.82917,-8.34406 -17.66304,-4.92809 -23.58309,-26.95325 -16.19886,-42.345682 1.07845,-3.593733 4.15315,-7.2029 5.07386,-10.279319 z"
+         id="path2987-7"
+         inkscape:connector-curvature="0"
+         sodipodi:nodetypes="cccccccc" />
+      <path
+         style="fill:#1c99b6;fill-opacity:1"
+         clip-path="none"
+         d="m 444.90912,60.132189 c 6.36987,5.135024 13.85183,11.568139 17.29314,19.896545 10.24546,22.494396 6.64465,48.570146 0.008,71.564536 -10.93284,32.92456 -30.42714,62.35128 -52.92597,88.44517 -23.56528,30.73566 -32.93274,70.97672 -29.46875,109.2499 56.66437,-19.26375 105.93814,-64.6337 122.56209,-123.03701 14.4371,-48.63801 3.73497,-103.37143 -26.79437,-143.735831 -6.7716,-10.746143 -15.99194,-19.687077 -28.99536,-21.692472 -0.62433,0.07133 -1.04379,-0.798706 -1.67866,-0.690838 z"
+         id="path2987-0"
+         inkscape:connector-curvature="0" />
+    </g>
+  </g>
+</svg>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus128.png b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus128.png
new file mode 100755
index 0000000..8f4be4d
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus128.png
Binary files differ
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus16.png b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus16.png
new file mode 100755
index 0000000..2e7df25
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus16.png
Binary files differ
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus256.png b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus256.png
new file mode 100755
index 0000000..f5f2aa1
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus256.png
Binary files differ
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus32.png b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus32.png
new file mode 100755
index 0000000..f2609c1
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus32.png
Binary files differ
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus48.png b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus48.png
new file mode 100755
index 0000000..b17118b
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus48.png
Binary files differ
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus64.png b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus64.png
new file mode 100755
index 0000000..9e3d56b
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus64.png
Binary files differ
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus_lg.png b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus_lg.png
new file mode 100755
index 0000000..6117d40
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/papyrus_lg.png
Binary files differ
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/icons/splash.svg b/rcp/org.eclipse.papyrus.aas.rcp/icons/splash.svg
new file mode 100755
index 0000000..ea5d6d2
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/icons/splash.svg
@@ -0,0 +1,1783 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:xlink="http://www.w3.org/1999/xlink"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   id="svg2"
+   height="350"
+   width="460"
+   version="1.2"
+   sodipodi:docname="splash.svg"
+   inkscape:version="0.92.3 (2405546, 2018-03-11)">
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="1810"
+     inkscape:window-height="898"
+     id="namedview334"
+     showgrid="false"
+     inkscape:zoom="0.953584"
+     inkscape:cx="-338.40101"
+     inkscape:cy="80.855544"
+     inkscape:window-x="164"
+     inkscape:window-y="124"
+     inkscape:window-maximized="0"
+     inkscape:current-layer="svg2" />
+  <defs
+     id="defs4">
+    <linearGradient
+       id="linearGradient4178">
+      <stop
+         id="stop4180"
+         offset="0"
+         style="stop-color:#8a8d8e;stop-opacity:1;" />
+      <stop
+         id="stop4182"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient5467">
+      <stop
+         id="stop5469"
+         offset="0"
+         style="stop-color:#1f211c;stop-opacity:1;" />
+      <stop
+         id="stop5471"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4142">
+      <stop
+         id="stop4144"
+         offset="0"
+         style="stop-color:#99a3a6;stop-opacity:1;" />
+      <stop
+         id="stop4146"
+         offset="1"
+         style="stop-color:#99a3a6;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4131">
+      <stop
+         id="stop4133"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop4136"
+         offset="1"
+         style="stop-color:#cfcfcf;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4373">
+      <stop
+         id="stop4375"
+         offset="0"
+         style="stop-color:#80ffff;stop-opacity:1;" />
+      <stop
+         id="stop4377"
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4141">
+      <stop
+         id="stop4143"
+         offset="0"
+         style="stop-color:#009dd4;stop-opacity:1;" />
+      <stop
+         id="stop4145"
+         offset="1"
+         style="stop-color:#009dd4;stop-opacity:0;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4133">
+      <stop
+         id="stop4135"
+         offset="0"
+         style="stop-color:#009dd4;stop-opacity:1;" />
+      <stop
+         id="stop4137"
+         offset="1"
+         style="stop-color:#042531;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient6610">
+      <stop
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:0.2"
+         id="stop6612" />
+      <stop
+         offset="1"
+         style="stop-color:#5e53c7;stop-opacity:0.1882353;"
+         id="stop6614" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4210">
+      <stop
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4212" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0"
+         id="stop4214" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4004">
+      <stop
+         offset="0"
+         style="stop-color:#000000;stop-opacity:0"
+         id="stop4006" />
+      <stop
+         offset="1"
+         style="stop-color:#000000;stop-opacity:0.30136988"
+         id="stop4008" />
+    </linearGradient>
+    <pattern
+       patternUnits="userSpaceOnUse"
+       width="256"
+       height="256"
+       id="sand_bitmap">
+      <!-- Seamless texture provided by FreeSeamlessTextures.com -->
+      <!-- License: creative commons attribution -->
+      <image
+         width="260"
+         height="260"
+         id="image9"
+         x="0"
+         y="0"
+         xlink:href="data:image/jpeg;base64,/9j/4AAQSkZJRgABAQIAIwAjAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEBAQEBAQEBAQEBAQEB AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/wAARCAEEAQQDASIA AhEBAxEB/8QAHQAAAgIDAQEBAAAAAAAAAAAABgcFCAADBAkBAv/EAEIQAAICAAUDBAECBAQFAwEI AwUGBAcBAwgVFgAXJQIRFCYnITUYJDZFEzE3RgkSQVVWKFF1ZTQ4R1dhZmd2hYaV/8QAGQEAAgMB AAAAAAAAAAAAAAAAAgMAAQQF/8QAOxEAAgIBAwMDBAEBBgUDBQEAAQIDERIEEyEAIjEjMkEUQlFh M0MFJFJicYE0U5GhsRVjcnOCwtHh8P/aAAwDAQACEQMRAD8Ar2yC6nrRLre36+zv8FjfJLYn0bZB gQtC2h3u4oHp+yKrW0NbD2BMsbb3w64E0YW+XkMeAhurjgABgAqKg8D+wPiSrpH8dDjAu7T5aNj0 2SsC7aXa4dIVPT9c2MJPRa3wZBEy1IVJQAyq2sEECns9ls+KN9Jdqv2Bgfl9gAfowVFHg6/gWo1U jP03kqf4TW7CYVbOcPmuSxLKK/H62+HW6fLHh1RDH74h2Z3kF+7xvlXI/aIAA58f8+Hwrcp9cviv e5eVVtJu6SSiMCS7I9esn8L6QUKGGD7gnsj5+OD2n9tOLdQE1dXZqzOOwSrjlugD5/nwDz4yRyYT GWZ2dIzIkkfpSNAtbIViXwu3s0w8cfmRLG7wPGmCPNGS2WW45He/gY320LNfnp5J490gZeTm1LDC UPYKGky9N92WQY4HbTQ721qgMOC1zCGnuBCZ8Cj9Q/A+CoaHtn4u4OAPeAAMG/4vi7NM9H5VoJ+o e30rsPlWo2sJAxhIiB2hN55FMEIb5ChrYcc4QVKwIFqJ7N4sZwfm1oo/gPAY8B6WNT2YDr65DJmv baJZzkHq7s+BsIephyh/s3aHdBwcEOGHtRgmHOHwJ3BidNtAwYj9rkkF5/3+/dSNZ0W0XJID1LX1 V0m+SnugYkgAh1OwmHIUXlRf5wzqEtSyEMehqtD3BWjwyLPZtXZhjw7BLR/6H+fnj/UncR4zxzOr yo6ahDD2LAcNwpIztHNXGQfTnHtqsj1IizrLpp4FKRPC8WdHHh8wCoSVMqUkxyJddwahSUjq9fz6 fmD7frGNTK27RrNkaM7lresnxyQ7BfAMMgYmCE9kUB2+VKPfIKejPKur8m4T+/7+A+g4b/2HEdwz bMvJzxuC/kOlgNXJA8lWVftn8NJRhsaKYH2TW91mA8xh/kB6lY0zc1doJowM1VxsHx8Agn+A8B6Y T44ajHyv63zWjPsh8UgLIJTlUbIrKbV1XsLSBQx0NDW4b5Mr9wg8/nnENmRigp5RvzYk7B+Xd/8A Pr/ZUczLV6farQgVLV3zzD/YVHuAH5aeBKCYoFwXjN8J/wAOtyDh7kFKCtoyNyizBm9hQlqVDbqC ffj+D9ifYRKqxsxf1JFTCNMkjv70yYyLIPtaSSWucQOco6wH04Ux2kdmkZspJKwAV8QkQx5oxxJd nLLiuOp7QU3dXsIC2vhK7LGsI3dzxppPWwwh7uKUNbUWYQXLIZHD8f8AB21fbVXjTM0CxiMDdnc0 DAP1B1FwHYH7AqrM5qFTazG2Dm1utmFxxN3dHtS2k/uR257N1KH+GHrdDwQ+SHK07lnLgwWSlNsw xHpMI7bAA5/ivnz6Cgit4PBCwcwzb4HFbs5oW5K9dDsBaFOq3yLXtc02yVet1Wt2oH4+Ham1gAg3 BZrN83TY7RduDoPPsP3/AKgbwHslg2o1WqGuZAW4tqNpap2qZHbA+nOVLVzwevw7IH1IB6THGEdD r89Bhi3loFE2b97w597f54ABkkZpSxZ33akJL5xo7UHijehnhxk2KXa0oHUiXEMmSJg5S0jrOseS MzVX4s0CeeoEdl1PKrMwBynBtGq5KNp7IDcn4nxQPfgWyEE+G+La2tkDBzkEBHrf2ab4Gk0c27c4 2B+QQHn0HrdYGXDq+4JkCxk82H7wVLYKuSiODuYV1evHxoodgZEMPzx9HmAf7HtgxDFszNwnm14f rv8AwFBwAdiu6B3wxUsAo1v82xnxkd2gOnj69Q1eLLPSltgrdP8Ah2oyD2SuQJHvgYWVkXxnfAjt SZz9/wD7BhPtge6FwpdibVWcNVQyS2ryPDcVdshlJbDXJ5bsCtzEwNMD1/g842fbUEwzoyu0LNQH OEuxzgOwAP39gaiuVRvObqlVhqIroX92GX45yI8iupuJK0jOMcc6F3e2I7+B7sgP145vhg0vV9d2 WLtoW0WTGVK5yadbHCt3YwvMmnypbC7Sp6/al2p4dDtSv1uCeYENGuAn7/ZvdISQZ/8Ar4+AAPy/ WlPeE/tWktr5Dwo1Xs5tlh0myLYqdkKUjYe1w18OyPlDhw49bnNqfPgzMVkoLZif9bdogB/wGL97 2ET2tkr6liWUGuAlErSwgktgtSq3BeMNCuvFLkW8A8yGyQ1tPZEcC49udsRilojNjCJO+cBQff36 XinDqsWYcE0XqEbZlXje08hquaSWMNErTgh1fMIQ/eYt/wA4jtrABBzNsw4KT9tkeMGA+A+/e3Sr fZlWR8N2Z2QKM5HjGGLxpa5XZyGQxAXk3wJKrTRrde4k4ovtrN6OF0a7TZDfjqxcN0cBeY4bNVZJ PMmG22VdPyR9hTAKawlbGhjzCG4B/r7JBn19WjUYt+31dX7QdkzZvYN/4DboDgICqINstBI07V7R YauCcO6Upttgw1NTxZr5LQ0jfoZCG+TIemPh8PssngZ3BsWho5zvfCd/2Df9/PoPR5UavX4GPk2X aF5OyHdwdlE1+yDWBecKv5YeoeGwGFswYmMmzg59X74H4wLaBjNvdXeA2AAf8Bh1DvkiWkPhJNgV KbsKkYcnlFe2E4cbq8WWF/DYFtwfFuGtjzEFtsDEGyowx8fBhPukE2NB/fwADwBQiNZsCHldKdlR L2a8TGmOWFmk4ys9w4JGTcC9vYknGfnNODImPGN2vNn/AEPQ2tslfxYeynrU7M1yHpynHiHnV+Jm AXxIcnKq0+h32Yth2S0DDUer/UPVbJ9oVyZM4k1cEOIP0FB6YTQv2AMtQbWmqB2W3y7qZGlmB2hj 9XbKAV2FolIfez5kNwTx4Z4Pd6fhjHmr/wBN8Cef7RH9/AbAAG6PpNDqWHXzGr2Rv2lWpZLZHhu1 gpNb20m0NY1jJ5Awth3DkifDOHSLbO2ysyqv2ztRJSTZzE/v+H0E+AUuWhpaQhmEdoT7kJKSQt6h cENPYJaHYybXt2lDCeYQw9Vw09gW2rtf9wxJvnGWZ4CBDZz8Rffl9+9xZZvQGSN6KRbkMe3/ADVw kubZxjD1YsFzJQZKOiiZMpW2nGb508255+B6aVVcnnK/iuQO/JmXXLBMqWK1O0ym3xtr1f43J+GL tpI37j7JiyGOz5AxOn8ReDAwntiy8nMceD8AP7/+/gPWLUhYF6Wqhn59yEhum+6XwIWRzFhVRU8P a7DpF8qusA9bvkO+GRg3zj7Y1J9G4WgLrMm8GwiSbt0BsHXnvlo4sWLGvltKpJPSGRkYa335IU0/ dKyFvhjjbhM09hzKcHBnmACD3Pa3wmso/m3jf+AoJ/gL8feUxHvTTwLuyVPh/MrkapS7A+GwMK2B 0+yxbQH5gZW5gfvAHrqfZ75R4cmzfrWe9u3B+AgH7+wdNYRNOuWazKiOGKemmdCo3y9S8O44pjxw cuGCN49MxkCHTtMquQ9yK+nrNWjx9GRTKu1Jk9W3b0jUNluNIq8bX2oIlaIEytqVhI9e2pR9mmKv PKcpo4/MMB5kOaQmc834J+vA/BpN2BHgAffQB9+QOp4oUj0YMsg9TZi4zGahu9hMCHnGOz55o2H5 jBMMGXxDmYMiq+bBOT3ni7R+KrR2Q6APoP8ApFsB88F6mL007tFJ2rX1nUBarbZC2kMHCCC8HsZX lyhcNwqtDhvictr6fOQ7QAo75xlpQ6z/AN7Y7/sB/wDz60ttmB3JH1gdy9MbYq3S7JK9H0+NSfw8 XKpGUh2QwTHx8oeq09ghzuH8H/GaHaKMMOOxsJsIDYAFRPp/pChhcLwu2mkqZpz/AHlGMldsZqL2 VbHnIMOFx5Esx3HSVI3VyilPRAxxs1353YIHGNfdn2myX3MsuYBtqwdS1tZKk4VdWUdkGuESq5V8 WEeiGNQOzmEOqzFfrYLVLcAF5sgmTfFcY9PARJpN43+3fP8AAUEAEx3BPA2w4ZtjGKUtUMt+Yzv4 d7N4ueiK8rbw74HreyE/S+HVW2r1Kuds4GLrMmDq7TxSfPwL9h7c+2CHTx5SkZie25q2pMunit5K 6QW3ZgiLcUDwMpW7A4B63T3xDYJqqPcLLo9bWRnKNs3s39+7ur9uH6i6gSC3Nrlwya0qAPvAFlUb CHt5KSkTItjCRcWyOYLbI4Vut2An8Dx5wYRka0GgmMtTtd/UAD8uoIDpjIsb4Rj21hH+bCk936of B8/A6EllfdkXEGtxiadaxxzjo4/IXuN0R5HMjiVoeVUbqrW0cOAldEsji1TE15TY2ipbtsa2rHAO L4iRLg4enU9t9aHTAu3iiH6VgJi7JWL93e386voTBh9rOswi5mKulB8ZCQF3yalsJHJXXcDuhyUM tbabzBbrdbW7HDp5gGpJ9DQbIRlm0Gjc3h25vh+In4AA5AwPx2n12LMolzGD2oNSZM2JFr2oD+l5 fYb4PXGw2PEQ0/jWpun6TxtHlaliQgw1pnFlBeB3wYK3vdCfULYAAA31UTNN9l13Q4YVTJvSvArF JXmhqZLAsyIrnrY1BRa3p8PD+uQ8bI8edBQyaxuhPfDlouxz9UH9T58+vezkQEOoe2jCLubchx3X Pct7tpwcccPLX014dtCytSTHT1A4IvTvnsbsd+FqTDuN5MOCOUpRZ05WlgWQ7VeyaqtOua1Dl+Oy LbgVDi3N4PU5MToQeZauKGPZJ+kxw9sCXeQmj4PBo2EeGAAfww5Bj05cut67FWhkmRbI2u0+4alb JF2Oy/FhvltMJ60Fuv5l8GHCbD+YqvloqTUyDdQotWqAYj2ibCHOAoL9sC/z6oq6uCOU4utlHNqU oeUkxi25GK/ELdjJtgi1eH7vn5UDj1uCeHwDnaB57oDBmLtSYT9/P7Bx8/04Ed0IVBDMLcXFJsIp T5PvQNr3UAWfGgX8qKYT9ntStoagw+/IENV2ys3wqzDHje0r8RYH/wDPfykTBvqIoc3aERuzSxK7 SJjsyu8rx54ZSYoq8ZG2Fi1xFmRFdqTTupWT/lxsfVjq+d7FO+xjt+1i3QfeFgR7Lp92cldJpOsW hVUkghXqewLy3UqGkWNXKHaD7MhuFwPjBvkBvtqufvKvpfZyYPuib7uvz99+Ae2EbHq900tOFb02 m2ENfNZFesvdAC+acGxbu2kXer7Qocjg3iE9bmVhyqfYCmcMExhRDZkY4lG9O5xg8+AxAb+vs5sH j6zMMsqoLCNpGbDGlk+zlWQpvkWXE5QtuCe4Mi2yWoP7cttfvuzsxMWhjN8wxCHACDz5A9z/AEEr dLlKWsTm9VLdAh81bpxIR7OQ1eWYixWza2Rfh42mHZa2HrgJtHwHhkWUYoLRmZ4NpOx8+38+AQd/ 6IPI6RkN2cYs49c5SwRneW+Mdy055AYcXYopGSpZbmW9wg5RtYXHF6GVU2XaKNddjhMT8qQ7QMrO jW07PjJ/D81YUOwuEoW2AXxbr9cMUPD2ZwZAc9QPPBgmMaGju+j/AIu2AB9/P/5klgLY8pHpOxtO VzWRdkUxUrYv8kYK9cO16QU+YRw7Vw0O4GBkBgbgrSBtgzjHnEn/AH8fQfP+fFcyyHQoCW3fNGjY dLB6KU0d2Q4zEtgUNhPckT09kDmGSYQhwUOBdNOrayMF+TBmzfBz78/7AggH7qNtyGKDVgHbRfCZ koxJ2/t68WE4Jp6srGFbfMDLdwODJxvgbA+KvBhlXlHjg/NgiOg/2AAg4dCgYbOYxdclwuwkYMZj S6F491mhd+BXRllZJokjedJMDnGZQ7Sc5usMcseWfbwznDEAGyemdWdgXZfqFZyYLJEgKaZNqa/a j5S9I92k1dqXT6h7Ot6kDD4nv6HO7Pnwd2M3dCh0ZZB2jVxtH2DgP+rwDpbslgQ01Hh90M6SNQw5 uXGJO1f2a4yrG1Hi651UJ9kTLIMUPw+yUdD5aDW1lmKU2zM29hODn18Bbp9+Xz9RdM7vAUsGo74d wN8EtJZQ9TjCwWcyVf5Qo7vlXw19bMUPMT0PkgNDYLaCGOTq6vWfhDfB7dPn9/8APH+g/T22QndH zmPKrHTwNimI13UuTDv68yASl86c7k7X2Qh3wnvhghMgwLAnI4e8llXtAnb7xaPNnjYOP+3uA6WF iYxSO2yiTRh4YJbj08nOSBcVv454LUTXVqrs0q3DJhC/v5L5BP8Ahx/Vw/kn5XbiV5e7HA2201aH KP1B13i9hEVusAPukfIHOXob9LdT8gjm1haevVOyAls+h3tA2Fxz3DOyk9pdTeTLJo+Wsxl5fVEg erLAnOvJ6yb0qfS+2zquZNEesPH0D8mJkhCFK3RJTUctAWI/orkrLjLPrppuhBJcRxR2kL6xIkt8 MRDFQREjJxMQCkqVnTcP7Zv0dUTFfpnb8paYn+T5FH//AHCB/wCntTNpA7MAzPvAZE0S1bTVZ5qz XH46v/IOXJY2n/Jsu7uNzJdkJLvAJB2C2DFS6lsbGPLY8PMD7w4ckrn+QnLZO8vxmM+7O6Mfxt3D wAAAfh08XXenO42pDMp5KHV7GMuORtshTmCxaQrvie4B+YXYHW17lVSEKleHCoFl8VyaMd4T7oP3 5B+/AOgnTm65+pDBlGQaNCF7fagktHSaxq+vocpWuJyil7AMfqtslgf0+pVXxn33NmvBJ2TgNu4v 2GCDwEAzrMX1tjOElJu063Gt5qqbYav1FTLAXocopyiua343DMPt2ByF2I8C0La3gZxfbCXhEmqz 58BbvALdQUEBUcuw2AbJBStJ7dtFI20xtsqt+7JQfxfPTZAsrZOUzPuZzFHlyoFCKFLrm8i1XQqz 0pQ7RmTx5KyzNYxhtq5CS77xnSKnmOUVhq8qhjoaHMhp/MFqch3BWn+r7RyYnwnHEHsAA+wYn/AB NgENVGkGxDFQJrhUqemklKwqvaj2n8sngebq9y4L4e1HAPZEPEPg2/AanzxYt5Wfwm7gwH34B+p7 p2VnD0xuSmSsbW5cBvODV7Vzu0Lcyhy3PHKwjtSp4+kmRDfHzAgycD+f2rWSenOryfBki0cTn0F+ 8+fAdLF4qcO5UuhhothMjVFmG4iQHQ1+pw1IgZaHY1PVfDcDOm8xuC21gSAGx2QZWZRXJ/hM27Az /gMPbDf4TFqJHV88FxbF0ygeQcRuDb6bUbVPa1JgH8rl3LIljQIpT1EQuA9yKjcNHImIwy4IbJrx bjt6cwcWjz8tb0yMeopSZDJIap59zXK47xF0+1kBQ6rX63qtat8xZDBMOcwUoKG8jNrRmZHCbJ5/ H3Pn18/0bKcNkXKztruNnMlDq+TGs14GgKfiBz0V3lFHDmFV0myzK3X/AOQX6WnMhNGFFLfZnh2N 8H8BwE+hYoOKTrdoFmcvSjXJqhwlnZVb3HbKdDqZf+GBlXyLtB8ILb5ySaHXw+/OEA4h8ZuRXZsT nhAQDgGP/tAkCHKGRWq8oSQLgPXBJs1HMKyOXuADKpwor8gmLYeZVfMA9V2XaCiq7YzK4vcznCP7 /wDQfsHUKyoxkUueWLq8eAZxLJE7juf3bSnGuzgW3npjd4RWZGdaBdGytGigkjQrQrb3WUNkc/NL 46MI/r02LhSYGaKxtG7AS0g2EjkgKfDmoloMVilFt/2gPM/o6dArCfgyIwspj9485jv/AB/2PIOw LEfMrhIvtVi6lWWKA0tO0WLX11uOm+Hv8qIB4GPMJzInoUvFjtTGrp8JPw3R8eRrwb3s5z73wfvZ BQGcjnHhjRwLu+DY1zJqGSLcwAsEQOmxZe/B0CWYcDDg4OAb8gHoEMYsq6HUDMbdqudvv4DYAKCf 3+SX8ul4tNnlxDrFkfLWMakIjQYabf8AmW0BU0NDMMENwreYYT+HNW3zwkPbOLvIwG7Wib3/AH8+ AqLYNgZIGyXMYuXRGS7MM4oA5UMtuyapcshytcrWO40IMKotyq1bW5tYErVt/iHcCasGjYpA6dw8 NNtTO08VUk6S7CynYavK4G4Lw2c9pzXmj5hAO4WRMD2RX8ycpOCGD7ZvO1rLz92NgwP7/v8AiA67 I4exCinXwHNrfHOnzLRthH/iQ5EYrm5buuQCyL62HDmJgcehtXD/AJyGsvNXtAsYDCJJsGA38/yD f+iSyEev6rR85jF8bVQIEYWIHocdehNB4SB2cgY5JDZP9hsGMGYsjFcoTJ7IEdgePgNg+g9btRGY lUEYfGiy7ySUnvkbEmM49V7CyPlSlsPh08tuC2hmFtPwR+4Flg2TFmKFGZGBhEk3+rB/QP36CWJg KCNjUsSxLUk20FyVYlLyN7l5RXwsWORZRoVjAt2co6Or7T4Z4UQZYn80bAC2ByTQpnMjwr1e2Zyl cjh2lrSt+3oewnCt9PcOVbS9XMWt+BsheZNh7xBn2gBeIaysvgsmNeDZsI8c+fgHH6i+/Nogl1/l Ph5XSLsJVlWo0aw2hYTJZ9OWm4i9PbRFZON1At2oYhj1tV7wXS7w1nlO2M6OkpJvf+PnvvwDB+Rl 6ahUOeQSQxrJbXxSybRikFXOMKYZ8sa4wJ64CFjrZgxxBP2NuvA9XMxGWVf6Mc4TV3d0AAP7+eAd RxBsR858uCvmi5kCyKMmDYkfOtSp6cMVKeYXIAtuLJ2HhmE/h7U2p7bs/JnxXsz97uyj9/fwHsAw Pvyw8jGKaUppnLrJsyGKWOSMUELbkLZZc0AFx8HPIYtYxI0mJ3Yo8VacDbkSQ3kiG3xAsWec+3ha 5D1Or19ysysoCkhxrzsF2By2B8oHUBYU0XKrIAmrZ8PcFbuDInjw6PuGxoYx55Rxg4bCef8AAAN/ 2DpnVm8r6bl2ohnmq2nZoGxrCHB2m6F6YLFrwGJ/qQth6T+yAwNwfT+M2gU4Nwm0fff8F8ByA/j0 BtCG+Ntf39muSqNrEeq21YY8ZMES1ooeLXKLDj63MGE98W09k/iHT60tSHwZDwGLPNvZ44D/ANNg 6YVTvmYhsA5IV7ISSVl6b1thYK9pNfEoYsp/FA5cfpMOyMoeyKfT1V8r9Sag7NzxXGW/+E9PDxyB Aft/oTrKyTSNMhl3UEixyfUNFBq0khmhkZS0EKRp7QtiIWWuu0Dq4pY0k0yg7GoO40eQyj2zhTvJ xhn8DBvBs8X1Xts4X8gwuHsmyE9ymRZa/wDkCIyxVdhioYf8VOHzC7hDBvn9SkyfFyfOHbzj+AAA AB/FBP4RpgHYgZTD1ouX8bPZR64xP4YD16txT6RaBSGv44uCfDmEFu1FK8PnBxgxDwWd8STZs4AA fofft/xajAnuGUtsosDMk1jmgSVZODhalkO8zGm6nPRQ6+yU/DuDZ8Pg1L5x8J1nTbQU2PZTZx+Q f9v7/wBYvmKvcmDOgT6TNh9hCe1YnzDDMsY8WAlA/A29Dh6kIY+Z8/YYVb/tYyoObf2DYMcP3/oA MInJd3vCszeNEeP9b5/0H46zgBJQYEeTxhmu1uUVuuXqqF+eW6W6uDsjNKJ567r+si1BlnfET3wC rsM1XfBIt8ML8xbmODIYHzIMDfmoPwa5GjnJw2Edjn7Bz4Av9G18DylQZk2udSVSv1Y6h1UJbFoM mTqQdw7ketgC5QuHrnau4FtfMI54gBOe35QRkY47OwR44CfAfQefdJ9beFe6Y/xbBtR2uCLW62JX jK3W9OODRUrYrtDJX+K3T9cMifTzhcVD4tqPhudotCMz72b4OfQWA/4BBP8AVtK/W83WRYiSuWrD k2dzBkr1w7Vp9sPpRoE1fEMsG8LbJaj5YMz8gNqP7LOkt8eiYPezewoPIEF+PgH4/nlbZ1MItI6h T3viIOfApTuZ/rbxKA2xYU+NdzTBkkzmkl7gq5benNf8Qchs7XO3794M9bW3TqRDtHMDK6fxKwhp iVMk0jHMODhWXxXzT0UlmE9kMfRFtgtQ4Ar/AAOLaz/QxM5aJz/rwHfz/RWPsRLgC0OekGFLN+GS Ex0nJX1SZKV+ecksBbMGJnJB8ztKQxnY/wBL4+wRJCc+X9//AH8/i2tRFTzIpRPuQMkyQKbqQQLY tCjT1oO6HKi6j6vVw/MA5hbMJ7AhtSHcE+j5iMM9mZmBm/B7+ggH4Bz7gNS8swwWMyh9hDxmqA4E hK+tskgsYltFTi32HX4cwHcNnX2Q5ZY9S7kYVA0WgMWcPOHAGwcBPgOfH9ajCIXKjIeWdztlMaoV 3ZlrPytUPNmkMuUh7Nu3jTzleZIy8L4rx8/kddhiRlhqPmFA1kBEl3p/VFp7q8PeVgr0O+IqnQ5T cHBDZFvSXNT2TYWAC87YivlojBmx9kzgGogHd1Bfv1uAvj5ikh3NaCuh0mngdaS3E0j39WNr/MlR S13K7gwWRDZNGaeh/MVe0ClBsgmTV0OzMEc3slHnwFu7A/AMMX6tLYplHx0W7MfUNSas6n5Kmrw1 tHpxDq+xnem4u4WQH5gtwqv2OBV4EHgMWSj4zLPNv38/sAA+Aw388rPLmGWDOMgpkkxZeTGsK2AO lZGYWSxtQS9UrkHsBwMJ+oS1Fth7qT3Ch1X/AFkKLX5swdjiCAP0G/Px4+f6zPzgU8QsuEX/ALik GWPP/L2U2POQ7QfLAhXtzzfhiuOOMbUI3Js3uU5K0McCbOVCuk0owafj9M2/VTI2nnEmbiSKOfGC WHqYo27FMYPmU8n2pjX4exq0wUmpbJ4XIrswwHVxvfD4B/fgADYOnmlnA554t88BZKufLLslliL9 kV6Q+YKcpcWVZFH8DMGFtbT2SnSDABeO7+6Pmnonwn7wAPnz6CggPY+kzjYltrINAudejbgxcJLu 8WpW7REcHyLLaKvDsBiYYhsjJiyPF8WBdMFkp/gdoVnZjxvf9ffQaiAcBAM6HHdbW1GUnedyO1kW RKmVukB2TJr9hre0NX1ZSqvQ2APMcLgquYApPYWDfFsmUQnxm/e6ueP07unkAAfwkm4rZsqSIIcc 5FDSbkZBjRmsZbtvRoFMDw+XbI/bgO50mDrGvMksE9XKi/O3tcpfOY7l+W1Dpc4Gp+YBgQ1Jb2F/ YTBh2V+SASks8VDj5jJMp+GHIBziH8DttZizfDQTszCrrROe3u/VEfPgN/WItfMNpXBcigXZ8uQC ciMFbpIfH+IJpLIcXTen3BQ62HT3xfhnJ/LUfc9raLMeXhJ2MHUXd3nx/YAPXyY8UfZZBJFrmmNs yW1krdgre4KH0360bIlXJqEKWMn19D2iZMshPToL5YPzpjMs2gh0b7nAdXeAfj/aLgL91vAMmZPY KrPFOfrcC8m3Z4fH2yHV9jcxfHxxMcwmXCHIIc5CsCBzDbCgu31mq0jfAZ9+Pvz8A2BB6FJu0sXT BnZ2Ltt4WFYgDFsqjWR77eIwtd1ibH7c/wDwjyq+1b7xWUjRxj/5k/bRgcy8HxcsTOzc1PWwMBDr d3jw74H8wfPiWhq04fcNV88fA6+yI8Bwn1y4MyMr/jP6TaP4i9sH73t3o8ISFNSsCt56kyVvZzQe CWFp/WzFoUjcEUp2bctwp/TGYQ5neCHA4f8AAcFmzOL8mR0lJCfr9+v1BQQCCsct0eK+pbBcDXYb p9Iyaud6/cM7hEIoBxixbUwmXByTZx5hqUbgtq1Q9QLLQ+LPOEkI7+fP/QeA9WPR63bavT2WUiZN jy1aGgiKP/4ldZF20QnOdfRIreOT5tViLsfcLTVbKQHxrMWcLVxVZowV22MFgBfqj5+/88wYAItx o9mNpZolCVtCfGKOPeVu65Jtu0grjuXdPBIrLuPp0xmn242jUk54RiVpUUih43WW7NlboeAiLdfM ypMt8aD2SNMTw6TyglW8gTMFuVhHvh4GIeoRkcIdXhwc+j324tr7yK6NZhzmzs8bAeP1G/ddlN5g +wafs5ozXy0SSiB7IsFkIdficClS6cK5aZvzKfDzE9kx4O+N55HhLJPniy8vGyJIPfz/APYAHRVe C/DMvlAy8rOqUO0IY0TR8MPbEu7GhDsIWBZHAPdkOGtsi/DtTS0PgTkOzLfvhD2zZKu4OfAPz8fP /QcVuLS7QVzDsrq+ck5NI2EaLI8wbHs1DKIbFFrkyv8AbdDZEIPYAejzw89Orfa6HF4fSgmLyfwQ d/3/AOglIQVXEZPG6bgaffkiJ9s7yYJlt0cUwXMvea49xRbaSVMHEMiNjmuP1GJW4PJwzyW37wtD ta7E8YyEuvnyvA6Qt6b7PqAbSaQYr0bYBbgYFsKWzg48wmB3Cn0+ZBgD1JHmLIx8F2YzbIE4PsB/ wHQdcOoSr1ep85yMtVtGMnJUl6tyWm9opzdBbZFKsg/Z09kTw6/24ocgpKq2TswW0VmsnEg2E58A Qfvx9+6NylmSOcLZnngQO714S4/TLUvxPigV9XFh0+Y+Qw8wPPMQVJwQzkNG4GLGI2CTaJs6AX35 BP7Bz7qXswWr/SWNcT1KG5Z1S1kj2cq4RKrTalYXKL3QmB/hp/zw4OfR74DT1nDdHkYDwdt8/VCP PwHwAxKzmKOplaSyBDzlJce47DjHLtoc/PP4Sz9uatCESs2mF1kQVxH+xy58gf6G4tCHdVtlVmBs Y/N0y4MjvlZZtngapbR1yoNrC2TLiRBB2PPF6eSUqsyWROJC5B2eegerKKEWkuy4GcjKnR/X6es6 8kJ1rNtuRxjOM08R84lFyCgVlm1HDBq6lPJw2Y/JDZ+QGbnHNn5WGSjzlGAJlwXu2hBRWhLxSBYP qwmZqanZ0mpU7Y9WFRTSrtA4qCtC93mgKv55NeAdZmY8kgk+SYtLyfz/AMN1ZMeLW4FBuE9DcIyS GfLIEtGdpXpewnxypGIBpIxaCe4TLVfA48PqaQ6/rQHZFZExf5MBhHak3hBfkDfwPgEHI9b3QUS2 qK7mLAWyieRR3gbW6fbBjs3ccqUtkA8xktStw9oTAdZuEGCHRkWrydGswP8AfQHnwHAQHRfMy0My vuB6Lk3Yk5W9ltPFnTB8uHFsZIlKz4whw6fcENkcK3VZ4+BBMDGb+HNmZgenjZEffz+PID/sfiO7 FsK6OSeLBmX9qEY+f2F9qTxKEBA6mrGlGOYzKrsiGYT4femv9PEHAnb/ALVn/mk/iI/QaCAQe7vR XE2ZGBeEqZXd8M447vSgYsO2/wCWz5Hp9AQyBTltI3cErL1O3ccmx7+ztrgA8m+km4Q63bY5i2q+ zjdqSiSkJz7ITh7DMFvlZOQF8XzDIIZJgerw6rZa/Pp1xWRhRoJ7FzZ23/YOfH9/AdWVzGB8yWCk zS5Sem8lXzsk2wYo3RzV+zi6vbCib+NodkakJgdewggbAun5gxmQxfJgfhP3/FfP7AA6X2ZT7o5O hK2haeEmUjkkohgC1VvEMFJTDXJ4wQZYeNkQ4ZDZAKepI6eTrPTm+DEZHScUk4AxPvx8/iAx6Go6 XADD69Pcqf63zUKyCo9qzk9TmFLaSGiUn/MMcbQ0PeIPb898ys/obMTB4fR2D/Lz+waGETqVY3dc 3KtDi/4pY7ux7rqjVc2tJHVg2LivhWi5uvO7BL4vigPDXfFFYeGD3BPQ8pqvVJrR2shhDmLDDr0M qB7ccbcIdwuC3qEZGAOqwLQUp3BnkorrOHCfNn9/58/H+rUOgekzLrf0Btu1bs4KyDayX6ruCwVO H8oTLV63+yWQyXWn8wONq/AajCNUCsLWVl41D+cqLz/aIB4CompRsuwyDoehymctgU3TG7fIr3Tq oJAerxbZXMqGPiTHAxMcCE14xX7MVZjNWYsWzb4E5th9+xwx2Drkr9gq8DX9evgsbW9wW0HNtkdJ GOFezGimxMUX3QMMlD3AhsjhVbU+484MVmjd0OcvATGk+AoP9gAAD65A9xymTCZ3RIVxyPEsMjEm x8RqpFeGv7aJQLbyghMI0zZ3kwqqIAXFrysgmxQHg5cHYc4pq/8AguVhIbIHu7OQKyDwya+77DfC 9qClOC+Hp+ZMhmCK21QLQQzhhGJvmLzwZ19rUftgP9osMD7882B0fTzRXuXQUyNpjbUmtxK/QIGj 6yhORR3vipcPhWo+PkNDIfA3CpUdbZqgFq7MtPBu7KuOPwB/YP8Av1J5hxbMx1VSrkC716m2QybO YqtXXocqxncC5B2CyLIhh6rDpyHVdl0fypPrPa6v8G7BEkGe8+fQd/w6sIDqqt74wmVzpVv52Q7Q JRlOOnrlsVOyIQCXUotk5JM1OVvM3DtyhsCjcRgmjK5RZZvxc71XjsAA+/c+6GMCaRjJgIQh3Fke kMC0BCUrv8mnyXEn2NlQFnaM4A+2rP54U+PjxXn56rSPrMxdOZWNLAWrTNVYA+EYXjOv8gkPiaKs JDtpwX3yHDW7gZCHFXxfUp1Vk1lnaLMGA+EhLU4CfAL5/wABgVUeDH1UwZNQVfbS3bcpD08VlbF5 TE+nE+ULXgLTMHsifMxDshEOcPD1L6y8vgtZJ2p4XHE+ggD6CAxXwHG2ENSeWGzldIyX9kVxvcFw Y7rH6hK3fE3lG8WDDDuC2hw19PBttYPm8bZcm2Eke7DfOcfAANgAAMTBQfLRznt1MxdNVA2CBs6P 9qM57uhLDQpysFBfqxPtOyMETARg21fp5eGN5eMVcWsoxx2NY4nzzBgwH8McGTLKquHhfBaydGiO NmxaySRXdEDEnwbri63Mp8QwdzQVfb8i+SW45HNc31G3LTXarR+t5rS1LdnSj2oi4yA3OpdsT2gW WRBhgeY4et1XMYIc6tCNaWqyPPF0NZxqurvypv4Dz5/Hf5GlHiPbWWn1+90yNs7SNRtx05bB5IR6 9MagdT6Rp9TU+wOBob5MD/EeJ+n+lnjDg3vUBLEIDw90G+z4DkDBg/jauyWIpTD1fKSeyWQBMXqp p9S0baDY+K6bqaKNFqL6G4GdPb4hL6ej1oQn3guWYTtB8erMRwnnO0WwYANg2C0WoN4R7Ut2dFqv R2zaWFdcHRA9hBli429yiei2auLjpczC0k+nU3Cepv6krYPK20i0h6OnLsCnkL2xPr3/AC+k9HTP GGY7bruvp2hGzYIn0yTGYFilUXEUiSwyWVlRyqMKSUxK7QNjcKwSivfH5A/y+oI3+f48fnIUosgW rgVO4ANGVvJ0u1ySbVOwDFSp5aZYtXqZ60Jae+LcwOZ28xOodwgVwt/aOTc42R2R8D6CAA8B2BBd kx0sQWDG3dlWok5WoyjRtI1fUunUxDQwNnlhdoMtfp63MW5ignzEd8IWXTrIMZmi+CYyq0kJaPgP P9ot/wCmO2PkB80eDavfKfUqNt52NRLQybUX2xvlK1xi4vsn0ljMMWTaAYHQ9ovbwns4tWpp5x3t J2QCv4nkHH9T8aT0AW5pCiKzjbKSyuCxZdccnpqyKga1xntqI01g9DrtW5jHcM2e4bgfAwJpNlZx rusvNI2ilAscAGKDYHp9R48lY8lWMh49SCJZpHERzK1ubaxzSXHPa4uzLW2QEa2x0K38oZEmSRAj Ksn8U6AAEnA3tZGuBlbe3HlQENTE9crxvq/Nrak4QGY7cvSbCjl4h4ovW1Q4deZGTtY30mvslxcP 1D8b3MoUJjARsJqHtTYPPgOQbDO1ePIE7HSRgejQudPve7FPGztMbRcbihppbfjA+ZwMOYDD4gSt SBCCY+hlMBZw2E4O/AD4ABwHnwBt/wAvPOJ+VqWarspN3DrYmwE+ZU+0Ve5aj6HKPo8xMhwoafzz YSCic5yTV2jjPCTbt4AAfAHz/sAD1s+75zmZcarW1GJZ9NGlPBEMAGCZYzjYbPST4Qw41ZMIzX6e qIdn1qjGGYW03ItDDmFpG0c+/YoJ8+wc+6pNE0cWpbTqg1Ev1Goik1M0siQTvtZSlpXfZgWl9OPC GP7I1yNqXVkarSjVTTbUTxxvtLQOlA7laj9tqAeSQTwK67HCHqEUqTvJ7UodJ1LWjs22FondtOod gQz0S2MBbh3gmWphZMwgHeMWECDh4oz4TrPEGFdjX5eqMAA5BhiAraEufVHTFf2/jU1MqSHF1Aqb agNxIcqRE1yhxhb0St4xMqwPMYFtqguFaNAhn3S0Mec4cJOIOIDDkCAgYn7bOCep2W+GMLLo1SL6 lodo3JIs5bj6cA9S2Mwpr7M7wOC3ZEOZ/qWPgQXwozK/GRlV6h+yZxBfvAn8d/6SdT6sMzKvit0N SQ7ImVfahGJGyarV2FwV7lbAIGGPD2QtsiEtp5jtLaAH/a7RUBPhLsk+A9z/AD4+fxasEj6aWPWF NZLLM8gjSM6fCNscYSwebIrzTkLd8qPmF4vqc9I4iT6ZIFYyfUgyKe+asYsMu2k7uReXXHX1V0nZ dVp9NvmnuSki4d6iXCwtVA9s7xtFTq4tPcHCZvFJp6+YeDw+eccBnKOTb4EpL2P7+fAcB3/okODz IZLW5TvWMka5NSAkV/UrsrsKELq/fkN8IVBdmFkIfH2TlvwGpPWeLPgwZiku3n8f+wYdWEMNF8tG WeumuUMJScCq7jqdomB5FDbWBsLVABML+EQxDT2T+RfHC2gfBhgtXRlne/8AfwAAgr+GB/GqNsPk htOMjRYMw2eu4PJd7YuDOYFMxsJZxV7UITHCZZC24D5jxWlP7GycG7N7mj8IN4/X/wCvz770VNIC UzTT8Nw+EiyNWbyR4mtwBcRkaxayfijIB6mffJiCcfCRRwxxoRZ9uLG75DEV22ZjuAPzQ55SSK9q UPmp5KvSFbrZmWYaHK44oGGQDsj5vCGPT0fVLYCHOmclFtJTY3Z2SQgBBwQd/wDPgONYsBsgWwhn kOwthUgMmpzLtnBmDsjKpx8aMSCfDRLguyZw9WA474yM3eQVwXhKSk2p2i594DYEEwZDhyxl8+7q 4EIhvhhtiWQ4DZDEHigflFGRfT3CZMod8YN8bavgQa3GDOL9zAZtJdjqDgfP7B4DpbuDAr5MwPaE rO7MLjIyO4dPMVfLDvivQ2oupXz5gdb+Fe9oPnuQfDieM/oZGqt2djeL8B/Xn2wPyWCvE0YN5oUQ 1yJ2w2SBf6f5HPF9MUSBkmkgfA6lY3KHOkUUytQXiW1IP24eG6mEchT6SYW6WMqq3nRckbcYeHYS +7p4uVMlcDYIa2GlzGRgZK5Uk9DtTAYMKFKzqAH+LjgDHfvAAF/okruQ+IcxqbaMSSVBZo1tYaXy FuOkJ4torI9XLJ98/h7ZDC+n3EetFDeGSzKzabk4ycq4IEOHwFugcai7Q1F0VZY/UQZxdgO5VKqt Fbu/cGZnr6R8W0WwCLMMC3ZC3ZEO4CEzftH9SzjFmE1fTm8oyObSTfAe7tRffgHPljvi2BVxuVAZ LIsKxqrCL2ke1EOv0lwKFNQm1h2C4NPeoSk64W3BkOHq/padW6z344NZnNjYPz/AUHwHP42ZVkaP ccuyILA5TGzeLechxX7s3wsLHGwl9loj9vEgLqe1JL7K+Tg2XHiuTCpDlXhnACm5tP3ZDulJ5DcA eGwLy2etF3rkWyL8Ot6gpO1E+wYcG27QbVV8ZifPFmoAfNucH8EEBbp+okJC6FbsyuzZCZ/inpIE Dakn5DXTPHlsC+MLQr9r0OGh1u+ByFko8/VhUv1m3xZSs3kGESecW7/v5B2E+n6/sTaqyT5TvuTs BmJBZfqxbkWwyC5S+5Sgw/Cn3x8DGCExVtohQ9jbn71fuaPVwT9/QbdAH/AH56oiiGFHsh6pa3QL aq9VkxHBPDsFm88fIb4UWx8yyIa2yUO4c4AuDbO3N5q/nTz3Rq5IR9gfgHvi/dOj3GKs39RESQjv il2iQoik7fTTNqTE4Z+5suB7EpYyipxjHI2Eie0dy4nzf/Y9dlmNGoAWn21eaRhW4DTSS08WEHdq lsl3ZGgC2K75ajAycDW3x8p+YcfLB+DT6MzcCJkgbsk8HYD9RH/Pv+wGtzrdXn3DOxAy6C1Q6brU JMQ7crAmMjTbSnFPIagYMGbUuFOr8RqZA4KbUYWXpn5ytdr/AGxP8CPYP6Diefp87l1vnXIBW4sO yFWtLCSXfnkwh8NotosBFzF9DZJlJmHBfWwe4AWpk7v1f3fRkc3aKSb+/IPPt/3+tNk6jK7zaTMV y+VXerJqHdm2JIdr+X3fdE1soeUtuFpp4dbxmV+H+eQQ3f6N/oactGrqu7uoIA/sCD58pAjyKCHw T3CNN1JMsKXctMXjo5pi1F1N89RJHUOM0FyYYTNh7MeZYaayc7UZ9pDGzlxZCEntp60aHr4XU1bx J9cSogesaxslhtQmr6g+eYdtkMuxw8GBbBgT55rmDGd8KVCjYpWofFIAvz9i/YAD2B7jmD0dXfGo XPJVKHbUKrpY+sLIjiXBNQ2FX4ewJ5ih4fD/ALz3Q2Nkt8YUK2ZsZs3sbBz4+fP7/wBbbGSG3Toc yhlBtFKak60PVMAfwIxBU7HlJ0y97s0+4yqGvvCrIJL1YT7eh1UtYeumSnuC9VWmfU+nwXp9Hr5B 6cO0rIsjKiW1LoK1Alkab3a9V5gqTOeBVEezDbQuk2CkmSyNmmJ/wIBGAqwnmzMH3FYBhLs4Piff kHf8T78fSS8DYRpJnMiBBJIFgXS6e8GRVQRxSNvHCNI13aNuojA6mCTK5mDnacljLFEkgknxMcbP EibpfaemZRhXC956NsyHMd9N54A2wq3pnUOq2TLXyVkEEeZYxSJKctvDhzBiWY2dHPV/Ze8syzTY v23sIEOcf2E/z5BP9VvsSu5HNFWeGrFkhq54bEvAC7D6cvloTF4DpzmVeYcLhuxPQyAcHuHwZnbN ouTznCauOVEfAL6Dv5/oqSxaW+D3XiWqhtrEoHQLZV6f4+kJ5+0LNin63T4b5SZiqw9gOCruD5Vb ITxF2g8s2yAzewfqA8BsEw2ZlfrlsKtcrg0lWFqw6TLJ9boWndefIrRqEVzyGw4ofeCZajB85D4l amGKzte5g+bG0dB2AAf2BB2AkVoGfCXJFfUuqbm5j624RdLV7wANH2XXNA5G+odpZIkjdtuxH2xn CKKMYpzj/HZ7j7iPiz0pGlQ5cYDB5pVlg1WqzDTQMmVjQ13UwwJ6CWBM5cRkLubn6mZ4m04/oy1u Iuz0r1yZBpaPVJPrdwUiMQAyQl0FnRPn0XTeoLOmn5o7ZziIcbKmYV+1adWbYsZbKIjefiZIBt9T mEmZdeERgaUJyMit1D0QlAQN+AchRfWWZDU6ZnSzqkQlDrtsqcTHshsKxGOW4thaq6Fi+BZoxp4G pm0hZjRY7nk8Wa2zV0TVmrIvmxMWSn2g7uBJDr7UUEs9kAqSQPshJX6yD1zXOsVnqVPIQ9QtwWoy OFgGLGA3A24bYstBSs8dk1e9qwGO/wCJ8AAf+kktrdmNAvOsqoHZbD1fwBhtiYeHXHZCuriRauhk ENkmYsiG4MntqAbaPcOMixaMjd0fvB9BP+3PT/VzZhA5d3YcfXJgktns52rEOxkniwTAtoLRHKGv w6HfFtwqpwQzlSkLawTybzV/JnnhKSbB/X8bdx+g1FSdkrcmBeHYDV5IlkwKfW3dPmaaZC8HtByi NAuY4GNQhit2RkX3wG2j+VJ+57WLKA3bwb8g/qA+/H7j5VlSJFhheJoi43MrsMU9m3ItDGTvqz2n oZEaAsJN4TOjpIcZYPIXE+rGM8eeF8XRI4HT4o6o1M8l17clN2QtrcpVshTq+wjFbid+tCmyltQ6 /MTHvjb4Ph3FgPQ3j3rPa/ypsmJy3eQAOA+3UCt0HZFg1fbWVAhjc5Sm/L1UW1WxBhDq8lerlXcL AW4e8WRuAdHtshS0GY8kxdy7n+oRHAAD4D9/YAClfFup814DudS2RW+oSwc4avMMyk6nsJlFykdD PUN8xPviny7gnofzyCG8YlBloVejPNqfdng/4AAf5912Ols35UFgOGUUyXZq0qnjbZU7VpqyLYfJ UVeV2lkT3AP8xkwq6H8BP74Q+75QoT93Z3q54AVEf2Dnz91ZSfHH09ReqR6kTsjgBPYEyO66fYuU ednlceVs8LMql5Yc4WiDiXKR52ruR8VEe5XctN7R3Guu2r4epSoLEh6jLL43qu08LcZTj2ENsCwl spFthDcqfHuEMxDEbhvkBg+DtjMLaCazikm+DgPPn9/2AAUg0pgXE/OtVMMVck79H7Xnlsewhygt sKWMnjzFqB1vjZAxO4fiq7mTq8oTRjmO9nAFQnwH0H9exPZMtDr8PlyYdbtSbT6kJYJhJfsKt5Vj 05cnJGCHMD2rDW18Pv4A/O4ys2gLRvN1cb98OA+f8/A0mPpOxh/yqvarafJ55Sd3AwnI7Y4VzK4u LtQ+h/khkhp8OC+ETyr72Z+TKg3pJ7qIOwAD58+wYH2FVaOQCPaQPg0atcbYlcSi0NusiSLa7BsV 1cbZOrNI8rp/Gzn+Oypah85UAeRWNc9cZxXTxZStspNmcDfM5Sd18C4fL+LEiAD62wQ7IW4c0xhz mAnocExybtezYnHdJSf6BQX7wADqefEcgLIElyfYKTYVg1XUtex6TOh4j4eV9QiuL5A497E9PZCD hOUrAPPFkEyRQoss1V7IbeAAAAfAAPAHyQOQy7GH16kJodbuCfqQJO7BUpi0Het65lbomshBjW6r MXxMX2RIPD59coawTxaPaq7R72PH7BsB/YOg/MU2QCyWdlKRiStqTUgLyvMJc3T0xyLSgMwetrcO yQ/eBw5a4PiPMWeUC0UpwnwYAAAP7+A6EsZFVEdHcWyB2MecbVi4OLeaNiu2hzz0cYVKxzFPGXwf H1Iwc4z2m8cgQ3HuJx56ZC/gDaOePm8BE8XW9FLt8O28O6GeiyyjmYHwzFkQzEP4c7j9l1yt8Z2v jO9hPPoO/nwD9j0Hg7cKdr69i20NSbCF0yEYh+SHIL1wVy0MIGMHxMVv3U5i4B/xeB5IMZygvjLw bx2NBAef6G7Yr9LgKhJt00sjIyHgKSkK7I1WAJW3w9WRSVZDAHrcOYDvlgWoqnx88GnvItXKDOcb JsZ/2P8An9g6tEQtys7VUyUBoT7srHWlMf5ceHfzBcYe0N2q+UYIJ8NDhvjgPMVy+e6rD2z7NWYJ KSTfPn5Bfv7B1meOI7U0t6nZmjQSQ930t6U6YpIPmNMQ7TWPOOA93Wjc1MMewgjiWf10h1EUS7iP WLLKkaSGgDlutLWS4YgtkjVdHzWOn4aGmgWTVFqDD2jE4rYV4WFiKoiJQ8WYPZJtJmK3fPh0eBHt 1VoaMzFKvZhndEJaOH34+/eAAdQ9ZnF9jeHxotDloF3wrYs4ab7CT14OLx7oK8NfDobhs8zZ58D4 ECH9DF1mzG+1wRH4/wABfT/n+gOv7cvyvnDUVm18qVc+VfZyTET7Oqzt6YaIpauSkxfrfklV/DcG Sd3hrTZxnA0NZJvAQIkPGP1/wCDsEwpMDopZmTLtAkEdq5qtkXh9P3YwNlkK8pIFoa38Oq6fcDEx fmQTy+PVfd5QxfGTpu0TfgPoPWponD6hZVCsXSMSXebmKKWONVoCOMbpVFybCibOVDLv20LYwtso E/ion2mycjXiq5qj1x3BQdm2NX92GagTwjIBG1uJ75WFIE1u0JrZV55Q5JEsiZvC/wBxgNoTzu5L NoXJUCz4QIc37fz/APl0pVPi+VZBJjSEM5DnocYTHSSQ93cHKVWSuUiWAYDrfciyF8ucsun1LZ8R lNFCfBzZtJB7B5/f/AXLqOzB7kvh81jhjUOvs6yBNfn3Ae2d+ANmuUXkDgYmbOyDw7VP+ecD7Zug x57XHHZ4599fPn8OhC9KyfIoOvZ+aHjKtjHiUr/Gdh8MPKKMP08hDZPmGPrcFtHz1VwGborrDMcC JP7Av/2Df7kjZiEbtw8HzlkB8cVWP5PnpQkRVDZXl8Hiqr/W7v8AXQHV7Jbjvkfjl2JZN3aVhtsG KxmWxLhtFtfFTeH9yKTquEYcDOw87gsjM8k6v2w5wlJB4PyDv5/pkMFwWYkA8m0KqcIw1jLoCQPf IcesrIsZX3W2k8gn/DcGOYwTJwFwA2NyYZ9G8J+v7/wI+/cBFQ6mj5S/kwMmseSXdDW3cPn5xCwo blXNgq7SyD4YeyOH7h3U5hsbgT4uLWSeyec/397n9gjay095ltWxnVJKJSVUqhbsHdltXiTFYWW4 uyXByQxhvFgGAbawVKqh9saVdGJ/SQgPfwGG/wD64TBRRd8UHbnV4RihGlWLxtubFjiuOScXkGCS PJRVWS7k43HBy7c+zijWI5+RDjtUCvKzMkXm1Wk5OaYCV7YKq1R5cwCULlHLh4eZzEw4J0P6eBa1 sZuvOeD/AEkHi/fv+wP3Ta1cI98C3CmVdodqupm2q9q4sHfBtHrzIeKJEXkneAO+GIcP4c5SYAIM OMehTQMeXg2b8/4FB2AAA6CDhDMqVPmBU341hRbCIiqHaklHpGGUA2FXMVPcLIZJmD5ZHzYKHX6k cMI6y+U3UAyqwuybBv4A/wDof6nVZSpVSQFGWp1AxLhPPS4dgN1tWe1ONn42DZwsLPMVWx1bjjBi 2KDUVIKHHWc0DSWAB2ws/H0+kB6fev8AFh9a4pFCK7b2zxR05xlfhbxk52qsfa+V/bjyz6fueA+i 5cmQS9uEnaWjUWc8KFt2+4dv5F6v9fKENPMu7tgN22TsAG1B8twfFd3V94X1u4Jhit3DkgKh2CpV VD3N8tBZRng2bCHH4AA2DYACD04Msu4ARd2ccmJMyvhrsp0O7/jIPKixCibDYFsut1u4B+YNR5fb VX7MLtBGGHAnvsB9+9/7BAuDorqVwQ5VfGEqyEgPJ4uhuG09r5USxxdbj+Nvi2YhuEPcP0ZCayUt DHfPu1q/l48fQcd/6O2BHrdXrsOZFvkavb9fFtSthVWzEMO0AV5Nrn6finocxk+Z8+wJ7wuEyZQX cDyjVckhAb8A/oE/gf6ilZIoRHmfqEWSEumGaWtMBkx5/Hxx+R0bLiShaMvFUTKjZ1tgAMTQrOzQ o1R5PSImCx8CHTLHXy0tzJWdGluDINYK9ZHyS2IYFPIIeoSbDm2piyA/0OBybyrtHJvxdwj6Cgnw G/4dOD15YddD3Mhi69qW7JWoRS0tPDJMI3HW8WxomBQwwMkyYthw6+4NUBwbUcOMrNpKMyy8G6u2 NBfrdAPwA+A39G8sKZshqTrHzpNYqRiLLHmLCeFMw0Pi8U4e4mMP5yGQZJwFwPX8HJo3KCbNsmyP ADfz/tv/AB9wPCvszZW9jK7sk/4pJSSLYaphiWyIcUTdzRD/AKbcK3W8XCubMYAOLITrNofGZZOO wTwCCfP7Af38BH9Mr83fcvbItV7H5xv57TdD8dLdY3LSe+8UwAuR86Gyi/O5j3NfZh7WvhVpdbr8 Uw7FKlarRZLBvL8H5o2PYVbtEqwhfJKvvi7EO1A4f3gzyGINwRmfErUCyj7JiDAIPn2DfwB9zWBc BGn6rVYEqwnasUjOCfxAVu+B2ExFTeL3ItkGRP1IGDFb/DtTuA2/DWVndBgw54Q5wHwD8fPoHSBI L74kA/gHlBbMQFuMkbmSV7YhyoglyPWoQXEOHdlkWQnh52mnfpzIT8p5wIESePgN/wDbz/Q2jslF wJFhCzMwIRyoY1eDh2qrizJcoGJFF2RX63ageh+YD2Sq3xfwOMnOWj7NsnCfPnz/ACA+APgCmVnk LqrncreVFyzxIwvlQuNvXBu/iui7QgVnQ7SJHp4nbbG2p9okb0xjxZdksNwDzTmsyYvq4eyLBM1K khwNnJNZEFUDSAiYLqUS+REMiycwDzFtgD2MBo+y4P5fFq5P8o4Wjz7f/wB/4D0ziOY6KVkWdaGV xuYBZPlmA9StFOLavUooXbS38NPQ4dbhmDuMBT3xHQ+M/WWc4ECJINgPnwG/H2BB6p+DuwOeqfEN zxJmOS3V0St8mwiBdbQ1d3li4bgHmMhia+EMIM+ruKraNwMoz7GkhP6AAH0HpkVIj5QYWelJqTUt hVBp2QZfcGx63LOFItAnG2g7jNQ8LH7qDobV2/PPDgso1X7ZsZvhCMAPoOwPx/8AQZEcbcRO642o tQkg3ZHv+No0taAp8hZsFORXUjki5eNnSq+lnDYJFdbm4QG93ZjyKxJ89G1fpbplZS2pJqq7Ox75 NZV+YMSCwdoq+JXNNw+YTYdwTLIITQbangQVqE0ZDQ2ZGBuxvfNgAb+ffwABBZCun6f5+og8BtWp K3mV81MkvsOnp4mGe7e3JaKeQreHW5jgdgTIM/BuNsiy8tHk9lCHDnaLfwACotgP0zT19sY6Dzmg DZq3VeqUPqrXkeznD4jIm207pqunr7hW7ItskNwW/wD0vtkANub4r9sweITUPwF/38AAQfAOaOno W10nOd2qSHbdRRJhIHpiu2VWLaCyaBfCAdbsit5k1wQ2qAQbQbIzDPy//qibB/8Afz+GwTcncyHd 2x6mmEjGWCSXUdgxaKWBajHmORXfMF7VMRkQgUxEtA8tpp5md4fQh0+r2F0rmbM+pNJOUkiwAj21 OchcBUmQsjMpFwmLk8CSW3eEyWFW8P5C8tgSiRaOMNfW5i38yGQhgyDBWnw9sV3x5WXgJVzsc3/H f9/AdO1pZF93F1i7vgEJMP16kxKPzoa+kbpKtiUhmHAwHsd8T9wD1z575aMs+TJ/1t58AAftgAAO hpgmCyj4n/AmIMxda0mXZCqkXQvQ90sIWm8g2e4PmXxvCq2sFtHHBmKe+nomcCG3YHjwH37B9NoO +WpUupwPfpmnwZmuYepB3kOAEe2fF0+rwGuqrX+ecwmcgtRqtpfUgb5WfF1f+tu6NV8/QQHgD6EA jKjKHkV3dUeN2WaWHcjl2wynaZa9gosXrkCubEPHGkcUZSBC6sgcxNUcVFYxuwyXjmbZcD4BU8UN lCD4LtBp7P4O9Mu9e05wca4UvTr5Up53pwotEHxPT7Uh1u4PkECQfAe2W++Xw8//AAADYPoPQHXb RZGqWo0M7Aajbsx5NkLy/D1RMFhMgGxtPYqLM+YGrfvYyV+4Th9fz/mW+zCyqMzI5zvZv/5dP0Hv +wceXXdqWhQ5e6VeG7aV6DHNrDTAC68bCWotENsUooYJ7itskPb5mo1Dr881dy1hoKds/wBkxww3 /wAAfAdMhzrBHC3IyOQugWSvavW42mUPkVLaG8ABVZHsEMcYDzIcyYPm4qTAenOJP8Dk8UerUl2O P2wPx8A/Yvx+KNK3pNKh1JzUS6afcrCbTxz6addt9SuoX6iNpEy1G1QF+pfUb6kCSVVcRLjMA4CG OSXmNkA9N4xi2LxxQ7nNrajqPvkJdM96yINb/wDEKdqyz1VST0uzHCgWj1adReou31MBDC2BqBsd RcbNlS2u3GQpF9CU4WmJzc4FY0evwzFCnm8+RLYC2dXlUNTGmMctg/VbdnxK3ZiANenQItpMVGG2 ByVMF4VBVrNH5LhqCpkitrthB4UdlDqkKC7hQWXNzYwl49UXH0pqbnSPRXhILUUFO4BYFfGP6P8A 1/XTfo9TfeJy33f3bVeeP/a/fj/QfPHlYPR78V0OwpQvKJHs0wElPB6gUd3mAVesilIGCBgPDmGP viOBH1pajh+LiiOM5v8A2AAfAYbA/ALpLavcmbWbgVM1jGG2DSajU7wBsin6ctSVpfU5SH2/mLRi +Fu1POQOW6c+MvNyFVl6/T9/9jwA/v8A0sVsfMsGYhxQ1GoFzGe27DT9YochhcXPhCarsfbdbW4c xDH1Wj2WwKQP/S9DZqzRzZsIct3wB8+/AH5+h6rX6zXLQMMaQ4RqH7MElPlTSHd4fZHa+Sdk3x8s it2Oeh9y05D4eTGdr9sOJPCTnAbdPgACCfP9NlEbpJt4GsF1LLFKkcyNdRTPEk+Eb0bDA5kGiMT0 pJpEkhLSyO7ZYEvCXXERlsI5ZIty+C2LDEhb8i8sfRuCuDVpn2/Kdqv0i2CdsiXZGpuyKfsJP2Fe qa46g7jzNQlbp5kdMggcIBvk4zDHBmxdko3vx88f8CfxPqu1WDVgZQyVabwpHqvmVtTrAn5zBL4a +CbQrlw/1UmOAdf4rPIbGyM2BRXJsyObwSdg58A/YD/ViqD1AQ1JHretK0slbrdy0ureoSQBJI9s LYErfNX3LZCe+Q6rD1uHr8PAbSHwTFmE+LjFnmxv+vkH9D/2B2VcnuCblnQ1jGJOTmUPGr0gYr22 L55kLrJXKN94J/G3BD29bav4gJ9cwyYyryjw890QnOT4DgL8AAIPVaM6uRQmo0yRalHmggjieJtW I9PvkTrg80g+pjjikKSyPs5iPMyxzRrcwh08jSaZpn0+ALTBJWgjk1ccMMke7LHFYgkndclU7uzZ WLIVWORfliQCFeuTaNpPOr62hthGGNPXyyHFKO9oVJDHp63D2ett4Vjw/Txu6MsK4t5WQaS7JNVo O/n9/wCfHz/wYSTtP7+7WBpMtTTOYOutcHwIFbCmF29ilOOci4l0TabfcMRiAF6ebj5+upZMnWLN iUO2f67POAV6wV/1V8CYTuMdmQw9jVfbYsoBG50pwW4i+n5LjEmAcVO5DxhgDmK2+Yt1fNeMWCeD ZGfdBfJkdJSdPDwffvd+P1FwHrcyCqrykejdPHZ/sypKqkw3xqovhPs1btDadhh2hp7odPZK3ZHC GjwGBt40TRrk5xWfm3bCoj5/wHVTORJp9OrOfqv7rqEQRHYjSF5RqHVp45JI1wIYRxPjlbsvaHuM 4wSSGJPSjOphkUY57pGaFe6scFprN2TiOhWyGio59kO1jTxtJw65tSLZtHmXCp15DTUNhA2ghsG8 PlJzGQeYnNvA94JsyG9swzmwM2EAIO/gOP7BhaFToxPtq6GOoV3gNv2hW9xtchbGIBZOQ5d2ptTV WnTMLrqx8W4GIJtrCfiHZsHwXgN2NKu1HqJBwAAP0P4VkFuj4GDh0hShympXMJNOOGoTT28JC2Kq /nh6k2BkT7TD2mh0/DeKlHz7U3N5q/c98q60QhwBz7HtD7H+hsG8A6zr+7GOs6ltGHPshJl9nzyu Jh4lKnFxdwhmJiFZG4LfBLQ4OGWKzV2jjKP+tVW7boBf2B+fkDDQY3ZlcnN22omaqusgGqz+Txfn 556ESoFXcO4jchCMcZFxwcnuvHImq5smx1a50T7NFo9nVCGzpNpriHqZrJorCyGCWnuTkkfLrdfx shPDuAf4bx2PfK5ME8VfEZ5tJSdgAAD6CwIJ8AATK2rmMogqmbuW7aPC842WkNQ0hEMWNu1cyjA9 DDsiHZDIvmPn798PFn54sjN7Bm9/5Af/ALB1DrYuRAV2Q8BatSAem8pSpFpcDw8tDq8Wj2NK/G9q XwnmE8g4I/b/ALjS7yWeTrOxhDeCO/efPoOHv05Q5BYvi1dQemDTlpwtB8a0mpF9P0sMfe0OBqav WACn+myGMRCRJjC+I10U9bLSGW7eGVc8kcUnEKcfcV/1L5/0gT3qXClKkc+buMfURLyzlhj5XIY1 uA+45Uw489LbE5Osm154mkyBxikk7TitfxYtwbzB+KMQpthQCp8c5UNcJR4IJIUmHIJCerlLClAU 4fDmMifagef25bWCA8OCKsi2lm2PYwmwc+/z/UPjXBV4am08NfGTJDzyQ2IPalUwJhpp5tsYC4EI kNb4e4L6eq9r60+YMqDiyM8nLRCez8fQT4A+A98Fut0+8XwDJPgunxsOBZFkL0gPpvT2GY+WhEPN FVL/AMyYhzA4/FqxH8HW3lm2tZ/ZDZzf35+fgCC/Hz9q9OWnm8tTzfW2n4VYszT+MrfJOhQNmHUg JXFOMERFUjza+5mKe5qMloszVc0+m4sX61CaxZqOHx9HoYn43X4PMYPSbBP1YV8WaeTR/TOKng9N EK16Epsk7fG3J92T2grmQCYMF2YJtxI5FMqy8RsTjJHtSx5RyU2LNeWBoAA5CUNksTT6Y7qWWNdy TG1JMTECBcGEOeAu4u0IY6HQ61jMZF/8lVeeVVsYsobQMJ4YBDYRB/7Af6YVscsgCw7bVTKN7Snn aWnkUkhLMIjlTh6VDT4bIt1XT1qOEMGe4G1Vu81A+DOMo4Q2knKiP4c+P9I2ZVbw5J+/AZiBfwut wlTfDySFx4XcVbKbfTFgLdbmOHl6/mVz2vPdnxjyr1ezE0c4k7Gg7Af2DwAAw0/5cOe4bwrraS+W Eef2zh74PrKYLlRLGck8eGMMhjkhAM1PjABasSfFxaMjYu3NufIOGL8AfkE/1HdFK90ImjveiMt7 eWGDK+A7+GwfHtonE5cCyO1yNG7JK7OhddsclMgBbXXbZscE8dKsPzD/ABMmByqTDAnm1sYPhuCQ YaAKnzLj+C38xPZHCZ8Ageaw6ys7WtbGE5v7+Afv0PgE/qkkNkCjg5loZJIE8khVNXr5wV9PaeLr lsaCm30/Mp+bahj4ZwDeHavnFvlGi3vNm+Dn7dqLz/6L9xgBxTnpYHlucpQ7GDu0Roag+0zLurC2 BcqY4J9qGENbh/DsaeQn2Mt/lDc2be6uwOb/ALAA9mDDFSsliNClpjMaZIFepJivhwNTITANgCTF jOTC5RS9fwuBzDExgDtQBffHhjJ/fFlG+km/2AB0rHF12/U2pzE/GNR9haX7rxodnzl7hXJJ/G+4 yRZoSmbVk6FcYxQ+/I93214JNDRlkLIgNDIBgblqDPQ9SDYwXNZ1P/DaIolX+Z2TmMiHDW+B78Pb UeYTGFBYxZBhKu/ER/YAH0E+AmZgN0IMh7NTTqS1WNVaSp2gq92Wx8PAYlXoYZgZLUDshiHYDJie q7FquBm2vxhzzZw+Aw590jaTeF9jsAZX0AwyO1g5xJdjh8B/DxZQsU2dfriW4Q+N/wD4ftyqHWfq 4ys+bbJjsH37z/TyZB180i0HhcU87Pk9DjVlHVT+0w7k4Qe05si/2TMVWtw2Dip7tLBh7ntYwZsj sc/7Bv8AiBAFuq0rKGQTSaYyDTO+M+DYFGCUbyxaxfbQ5N9QBjGsjDFI7WQ3ljJahk+Lxod3zl4F ckg8gr2+PVa5stkjDagPMjvYGdgjqYdocrCPC4Y9bqtwWw7gPZAe3z2pwt8YL4yMBm/yp9+QfP47 BpbGFDiqdYgaHwk52cNrd37qLceW4NAGJdwtQ2e1A62HsneDnD7axmMyyL/Y9kN/5f8AYOmohtBQ yL1ONtlrY2zqqVUnuhfBIg2GEMpYRQpiwvi2YrcOnkIXbRgQzkx5t/gePuEdggM/77A/Hz/SMvvI h0w7zVdicNODU2gVykn/ALeLF2zbiq+18ZLkAWjMxDseLPDHQNvqU8MUenusUXAG6pWHswr5+3q/ YMGCo2JQmQh0GLyBNM7XvSVGZZAlDcsYWtrt/wCJs+2SghY5FGULbfqeK3cvt5sDH8i7+K5+vAdH Y0uGLrrJbVVXr2pUjlTUPLB+LqbRKcCBgwyOEwxwM2Bq7574jI3kxm9nKu/ER/8AYAHswrQmOEDM SWjKTglnZttMjCOfElo/mijDKTWXeLIhoeLjYEyDAq/ir4jIz4rjGY5dgQ2DQT6D9Bw38+h6/bP8 J0AlLGMsjKuJ8ZskAbIHiGQXqCLfEDWBMQ9PbhMT2CHAQ+7U5bWWflDN9JSXZH2B+4Cffn/qYBsE lDJ3M0WDW7a7BXwHbNT51hXQ8VWLAiXIXt8NPfKruCkiEyDdVwKQMO9LPF1l5Oc2CHf7/iAwAH1y QOBnu71O71uynHcCcXHJFR4FFg2VGgvNirxikcvFk6MC6VlgLKEZd8ZzG4tiwBz0S2K2Mkrm0oMS Nh6bauPNGTVYds+U5SxYtbH2OHrdkquYQcad1Sp89HZFkZzy3/OGzgM+g4oPd0Bv58vRyLQUhzba ih1vOdzxJhPsj5U7Yn1fFl1ye5AYuwxfFWLY9bVdPC8h/MrPHngwZ9JCVW/vz8fQX4/v/S3pq6JC 46ZM/FJW7PDOFkfHJcGEwpVXywNczF4OyTA8z+lUOwLa+s7XaBMYj2jV3n/3/C3cepceUIWr3ClJ tGhCTRnG2FPrGvXhTZPr1o3Jdi/dgdDDwqrIh1XUsPgAzHaApzlmRncIkvJ/6CggAB/kCJ58MtKk br2RuZiOx88iBGfuxxOR49w46csGZMryI+JmpUN1tbV2eOGzBArjE+b47ZDRWc9srwNbXG2rKrdt Xw4F2kUNDKdvnLUYtsHzHC1A9Jjw9jXz/Iw1lGKcGWeEm7RePoJ/YEHzwFIVMttsCn7Gyhq2HTZj tL0zpNzNGppPTTok9LQyNqLaH8QP8zCfR6lVcMYsoe2DOEm/Ae+/v2OHTskWRQ+U8qgFsydR9Atq 5UzuYZQ94zIeFSldSot7ATLIpMutVuuzMNPOmBSCTGV4Fk9tRgfCMQIHYfoHH/UCWDSdXxbAZBd0 38pJ9jKtbie5HB15baLar0DpfcB9kMq2+GHBf2NSr+BXIfk1X9oGY4buxJOAEF+3/E+APn7DxlXV BtPgZJVl08xO4MbZXcRxtndMInkwxUMRkpJGJlkErD6oN/FJFqIo8cMVTIRnUkhI5ZkGRTLdYj2F TpmU+l2WYzmjT4+c2tWwm0TX+cyWREmi2helC8SENOfIa2n+DnWhAVWQm8vgsZ4T+gQG/wDnwAA+ NociYhtm12hMk1K23NUpZfQpg/Z5X2i2n20GTExcD5W/D2pSQG1VMcG7yrJN4SdPH7/wDYD/AFdn Uoj6G8ripnT6SoExmkpQkeYT0eWt8DU0NyqtgmB3Bw5IPZJyGQPYQ0bEWieyO7Wj78+Pr4A/7nuk jYleSIGXDaCafY9Vq5inKceKZT7f+Gfu6zU0VXC/WxlvTzLIwGNhXx6rzrDEWzPJz6S8AV8CAQT6 CAP4MaSOSobdNz7nSgKrwMu73c8ihR5vhWLQsWEeeFcSnOwaFqcVw8c+6+3xVmiFqBobk+Ozkev6 SthnxJxDmKruCwthiqZ5DcB4ZDpNPZDFgWo8T0/YwwwnTdoLPBwgTg4AB/v7f+raEK3h0OpodaT1 tuA5qeS4O32RH40Bitkp8hkJhiYYZJhBksYDqQ4P/VCuzI1Vm97qt+4Cf39BQT3U9W6mYsBsJLia Nrc9dLjGl1+hw7AXpkXFePORi4A75Scy1PZkxQyHbkPWe1lCYvmxtJ1GIIDnwDgIBB6ajxvDHcj5 bUDJ2G1TEa2JCTDsBscHNNXotczWAPyWtrgfMU85AXx5wP2z7ydzEcJsiPUXgD6Cfw6YdRlMkAXF IxkzAQrIZCU2nR4oY8Nu3yVlkzyFFKOVGGREaZmDvLMrLAV7HeT+R3GRJ8JQrzfPPSxyylmXJpva dNx4bGzqNVH+YHQ7gTy3ZtNd3xoMWhdlqLfwzNwcHbXDY7IF2YrvhNGBu3uc4ChIIDz+/hLK8V/o oQqgnzs6xzNTZNBXxX+TcxmnQ4qVqaOoaIQW2Wh9SFJy39l2D4FpreKOhXuTeTgQ5iDfj1RMGHAT 7Af05+n+p7HdKxbYlkKRKA4EuUAT1blmSMhpJ5NwcIcOyLI3hPY1UCwAK5W9zvgWs75dgQJsHviA AIOADrsIK6XLIEjMXOCckQ0lsV69+OWh2hTbZ3GcB6HDZKHcE6v6rncPfON+wt8swm8WjsgPtF// AH5IgiIZcNMULiQIunwxkaWCWRidw5Z7KKBQwonnx0Y1U8U8Uunk1IdYzEWfUZ4OIpIZQPSH9Od1 u/uB+Oq5ZOj9/sXI9DAwWeiVxP8ATmzh+ZWvqebuFwq5kxiU3MMo4TJqFyzU7MXV1ikGYID1x8zN z8gV6IsDLz5Q2GOl5+dWS9QQZYQBMIFEjTGeHLSz6a9ThlmqT1dphGRa+OHFJURRDlWKmiAcFwGL FZeaOgz61rs/nyJ04+TCsGByPYbtnR5ae+54Sb5OwBZtbNZn9/J+f31YecgH6mfwD7/9P1+j/wBT 1BWJmA+BzFd8GpOc2krIEkYbIjy3AUmqUWUyd4Lgh1uthl/4L4PA1zNZnkp7jEe7AgRHPgAGKDhf uwoOiz0DLPlC9LB0l+1CJJ8GwEIlqZ9Z4jCbXXRRwXzFKPgYQZHQrigv90I4fH2fcXfDFJq44fxx wPAWDj/TPT8xHzbgJJq5kkk+mxtkO7hwOyF4xV6YJrmxg7DakKq0O1YbBZBz8lnDBPgYtZWTlo7I jgeAgD/7AA419LLtFwEsp8yW3ULYIckp6ZpgGv2xwV4tsJsvh8OyE9PhJ7BT7wh2hPp1OrPT0UKL Kzwm0aTBW6f7RIO/8/fiVlSKVgsJchQ7TH3+axFcVzfJux+OgDNIyxNuND/y0XKvHlsl81xx+a8D rS6Q1splpK472otnly1H+stP/wAOnxKfcloO74+cfhh4adqDcNnR6WuD4C3WYxoF6hRm+YJIN+t2 oj9ur4DYD6rvBH1UUjD4u+JJsDYw2Swjr41FWBE5lFtjV+eT/mLdVzHAOQmVzAntvMCaMTaBlmA3 Z2Cfl3gID8RIKCVOmmCaj0nkqT4hyXykWokvWvQKGQs2GermvbFAmCEyHw8PuC3BfGCpUcz2ztBo ediNhN8AID8f4CAAdWWkEKzzUsDUDRQ+ocDAW71U2BP1IK7D8VydiguH8O7HDUJT8ywJirBvA9QO JNZKfo8b2EOVF+iCA/TpBkMVSsn1KJNtyCBs5IY+A0rpQ5jobyZDbLL3NlwcabtxB00ztCHUyt2S Tir0ufFPyMDidy2OK40a9mB1TtrRamUuc/W20OpU2Yz7UsiJMlPlZXdKZK/T9SEwwtmGFbsa2h4+ d4xXQybN7drgb8fAH/AY7/O2JSdiHrVre5K006sky6Rsa2dOx+jcivTH8PuAtXDr9Ph0OqzGKeyP F0j+D8mRnwpZiyEdgl2doj79/QO/n6+zHyZlWXNrpcre25soCEU2i6yRCIYxaCwr4ZCGhmFvga+4 NQ+v59VmHlmZ0J4ZkcIlGwmOwb97bAfszVDVfVMH6MJoFmXXUNXVugyTSekGcA8spTjBqUEkDZZ+ qpDmp/21Asn1rTx6hPqF75j6Ut3wYF/FAYMD2/mA2nUFS8+PzIYlcix7njhTLweWU18VZtlrJ6RE cbvWAQSnKioa9yaSsRVY15N3xW8hWCnwin3t4I07SdGYNleaL3adX9hBWi2dOMZ9DwG/Fve1sxAh 0ieAVkbLkuetBT0+l1SUlJfee4sIA/6l9eTOotgvDT7qLfK6u5vCFymnV2rHT/WWQkMMsXGEJpWq yCG4WmZh4APUb97LBsncvFoZSnt3SeDyCffsevsgevhkOsZS5yTlBIGw1fqjSbA/HKavOXG+eVuy GIb5YEydZdoWYjrYy38FcYsnMQl2HPAH9+P1FUXUkHU67KZucLstktGt80dJthfTyVsJMyKhpFI1 zSZAxDQ1vjQ8xPQ2DnK2zFOB4rOARJ4OfPv39fb/ANGNyU8+xHZGf/DQjo185WeLFUTZvjOEx9mA /Oce54qqthXg35sn9UW/qstDMinJmU75xtV5Ut1lHT8hPSE/YZabFMOENDmVXDW2Bb+evz/hjCdo adEZZ7XO1o7+AP8AgMfsCCW6LTxbQSn5VhSSWnhkZBMfJtSOWvipWheA20nj5i3DT0Iw4LbUQT58 4Nj4rjJw4ExBfr+IvAYuYXZCmazFXKA1iyab2glJiDzxgPLmPqbXqa5OLhMT+IMjgQhtSGv91Iaz teAwmcCb28AD6DsG/wCwdbUoxMAuBgoUyUmyBdm1KkV/qip9PsJbq9DdyiG4EJhiq2SHMXzHZWwF JqDsyzjijI29G3bz6DsD8/c+6HTyuIZVCPGkcm2qMLd68vCooSIeMXGPHx0UkcUrxK8kbPNt7Yg9 KOPMdyzyDMJIuKdmJok8/ietRDYANHtVvgST/MM6exumVfpO1PiQ9OZWIh10uEJtb3A+B09gD2NW n/pYicZq8nWaz7WgE/r4Afw3/f6OI9BqaRYFWT221DZ/TmebZbfkqtTNi20SndDlIZAOyfMh2QQD 1zA1ATzn9UNCNsbt2uBv2DB2i2DYOnxl3rCV47UGPIdb0yx167Ni/UkMgWW7HFqcopaloWohTDEw yvp9xdjz3w2ZGfFdmJ2pza66rQd/AAKiP7B1PGEyGertPilKrq6yExjCS6nqWYnlpiueuM9KMcws hkDh0/6PAcOVOCystGIxG3v9UHwD9wHA+AkxDKIw7wzPzAzrEtOoU5gSzxZYZiwD8gkjiyQKkhnX CesQ8auTG0bAZpIMTedAqftomjfG4WDR65p9kU0hqU2TKAv7EwUaBIezk0S65V8CKG+B2QzMHhoM 9Pno1PkybQr1msvHsE8/v/AT6+fP7ygd8KJYZtCvhK1FdPf17Gwg5D5hQ8pvltwx7K+WQY+vsldH iB6xoaN7PdZs3CbsN7+/cBAAAB/3FGQhYDRhnMaQeCKmahsksfNfE/uR8VIfP2eFZG8TCD5sI+ej uDyzC1cYTObJseL9+/gAGwMFPKFE2GBXCgdTD1pYTapL8xwX2xbTabd/ih+YUnjMhwyC3VZ4hAtR k3PBoeWY5gk72f8AoJ/f9gACUdGEjm8nRAKqsvJuz4rxQ+eeOg+oR+xGeLLyyP5qqvtH7r/U/nqN mAktIoPvdLuAk7uVYsi8QloavzCU+Vkrq6fxtDxfIfIOKz3CyzhhZGfWVh4OBN8AAO7p8B7HsRZs HlLGy08AemNoEWYNqhBww4kHAnkho42QmOFJ4p62R4qpL57EwTZmgoM3w3+wMCCf38BsHUOUQjHa M8BM16ScJUxSiGPhh5YeLFlnq5XPh2oHZHBwHuFjYsD4dp8YTFtG5o/5RBn0HgPn34AAnleQttEN PFi5jb3VD8eMVu4XRzw9hLjSpg8xitzFtbX+1d8WBPBuHGSm5vKOEN+2P37fz+HTSzRvbO6vG7LP JE1I9Y4FWq3+8UQMb+bAAnuw07IA7IjxozZSDI8iSWhuAUtemlGzXdwBTKyW56/k2rAWxoeVMtGv dO8NqIsLILtBesauU8e4Miehh0MfDg4p7bXLgjk1coM2O0f+qBiv/wBgYRTMquUYyaHsYYt1vdzU NYZBgkn8wQ00Tw1PIMlbmIcLmBhVgWi2g2QYzFBZNG3urrsBnkE+AAfv3Um6ZmYLsB8Q3evUmt3K Z4eYSDr1VuQHfgLIPhhmSn94X8a5nsKGj2QjDGj/AFxd7R9wB9+fkLnwAB05rYr/AGaqrU2Gt1K7 Kf20TQ6rMsiWnoZ4SBlGF9DDmJhiGvmK5odwrQ4HWbxF1cMZgbs7JOwH9/8AP7B0BkzpN3z3K7Ll IJFxwd3JGeFtS0oskX0alYAXC3VWLq+QPNH/AF8eSeqc6qA7hYwxxlD0NlJVe1Rqcjuw2PXrIh4b +BMD0/ups5hPcDmni0PD/aKHKMxwHik/fsd/PYbAfc1Xg49lq9Mrgagaul5STTl3D9NNkaf1Nkcn JstCUXr7gYeyFtkTw9qdj4EGt2YZ+M0Z4NJJt4Ac+4+A5+f6WItXj1yDs6AGZLkGvjIgO8fJDuBb htSu7RXMMeyTFtwW0PjYMDwNqhjHpX5ysvAQ2beMAHgN/wCfY3GtSYYA1XTN+03qWJUnqMcObj3C sq3xQxfExdjLbAhuHG4dkMAcGpMH84zcXxebM+7Xac+g+fxwPgHyahVVVEZSWZJEi1Bekb+PMv2+ njkuIybLJuVK8rGnzP1AkRnR45G0ynKeN0BEbFLF3bgDj5/V1X1GWIyc0zlyfQ9bvb41O3ehwzh1 hXALcrCq9pW6/tRP0xuFV1WQD9tLQ+CYJorOUWd8N4c4AH/bu5gA388rPWJrN1hp9J6cwNeqVP1B UqlfE/Jr0x2fQ+PJtjchW09kW7ItRgmQXxwodH5ysob5wYI7G3bfz78APn/P9KRQXrnDuatqG0rV iSrFn0pP1ULwFjIL34bSGix4bAHmocOt7I+FBxHvjUYGPO6f7J/r4/5/790txEgPGtcRaF51XKTq gZDeMiwtNQZ3fERXtcDFcOebyHhiG9lgHoFl2MHs1ZaODrB3A2lb/iB9/Pn+q2kZgAs5dEjdX/l2 Z2NEUcbMVfkB7HC482jTGQRgRhJXeSymykqNhg0b2+5VNlwoQkcnKhcdxZFe7mSzrVsYlbVzVfcz svV8huGmeWybpYVyVft8wOHmrcNwmvGJADVYcmzK5QYz/wBbA/3/ANz4DquzReGqTJmJK4m2cEaq +mamu+DTs4lPFvlOXIhmF8P8P8kMCfv1wQDk0Y8i8Bgw5shs5+h/+wdMFbXqv3DJsYynuz4uB7+l /wCDDV2GZXNOCdNB6b3UWw9buAfeOWjkNVh1n2v+zb2E9+0X+Z/rjESQaRfDVaukHUhhkz+W3Ivh z1fqaeCsaJXKaHX5i3MuAQHT1o4pL56uXAmMF2hii7I7cH+wAN/Ac+6SI5os/T+o2BHNpoZmx08O xFHGiq1Ns+CzHF87ApcLY3f+JxMYtyFo9RPHJuySSdnqynFLsklU+3u7jfWA1dfFnGrUFfBipba7 Ym7CH2PRuoC7nBD7sJr5ZA58MfMmMpB7gz2ADY1wMzyUKo3B/wAXI58AfQWA/wCfQYGwEPLSNPdP wJdkEg4FkJWE0JLIHX1q5Pviu4EPwmYZDDAYtTs9Wk6Y8o1oWgT9gmKSdQfvx8B0eUXV96Ma3DSa 0oF/ZGNJN07HrHOkWFMVzynv0xxT5geGYY7RDg9uAz3AYzU20cmB727HOA7+APn+QPyfqtDKVVH1 OJrdk21WCQqv8tX1IJ8d3h8NLW0r2QwLYdwe4cxxZLGA1/sZhnZSgtaKHHYJzh/fvP7AAP8ARGF3 ErI9YzTWK87kLRjnIcjcJHBuq4uxQmjVRGylkkhWKOZhFGg2pYZWZzFEuN4KoBz8khhiVL+78Ibv YFkapU3THV1kJE0ZdxBVVpF3TFdXh4HnBgtSt4a2ycfw4k37GhkyaGhsxP8AZDj8/AAHAV8AggBW n7QuS1cxVzbVs5tcANbjXdPqtkYG1bigdhira+4VXMT7UZLBfOedpTm2PLQhjFk46pKScAH/AGAb Afx63Mg9PqCl7OMu9hSaf5UpQ63rE9IXlsWmlvih6fmB4Yean/Dg0s4AQd8DWb+KBmWXkJdiS8b+ vv3/AE62xmySLr8Or3Sn3HW7QAuSsgwG/iC9sKGkcyqtgmQ3CyA+I9beP2MPzkXaH0c27VccPnwA Dfz/AJ+2eLFmUJLg5QhlHFFOQbNZWbFfA5vwMZlVXiCw6YjG5GNSTAkdpahuSA3tpxeTix1JVAKj 6lqQPJEW5tJh6BDf6dpCHWLgkrcrU+7IlyXAPuBkL1xT5iAhKoK8QTxiz4oVoE8AnpdqTA+7AAQM V/A/isswPQdy0nkwEivbIG0/C1aJDxnDR8sOhymx8Q0/h8yG4MnHjJwCwXxXJjgqHpyWdQuyBHaq 34/v4BAPoOwM2TmK+LAH+eh6eLaQ0M5bA+t5lbyrsTbQs09KD2AYp+1FuGH/AJ5t+eCcBiNV9NrL N924OAP7+g/fwHX0xV9brF4AYqRkqUPNJDUiwCUNplmJQFhlC7s5gt8kidn3CnYFwT/mExhRX8Gb 8H9BPnz/ALoOORg8cpZDNDjMJoyoxj5rJUf+r4AY4qEscHLjSJKAOWOUO17Ih4x7riiiur8Nl4sE c2jbchWzPZ7mA1UnoDJpufLaU+B1LaNZMiETLC9PtqfD3gwGDfMOIZDfU8ms3ILGIyOECdq9gfsO fAEHqy0e+flXBYUqwKxGodX2QyS3DJ09o9sGK5F1khy1tgDmKrW3yHV62cfKvPWNW6M8+ywio5vm 3PtgAP5/36ZDZX+ZYy3fGuvKz2RcXA7Ip1/c1/cemRbGrKxmgxyRkuCt63Q2BwOT1/BHuCoBnF3p ZOG/B4P+HPj+/gAClCMiG0WJMgFGp/vJSrF/dyHAzAlDld7qbAoe8YGIcwOPMToC++HGQZ7oe2f1 sE4CffsQD9v/AFdBjKsLbTumASMbTm/mVLaqrt5N23IA6GPdj+nzXcSGaMtNKdyBcv8ADMw3DeJy zaQ2Bjjze5f5JkZBKFOhhSBOOcMTi2FZURZdjV+PKNU3Md5oxSMIxlOyIQiJnM/qw9A1kBDWvOke uQdKBVKObgJKznQIQtGsq7aHtXXrGvWlErF5ZWpDrkFptJN4MCq2LOxsaPkATXpvsTIzFz0k2wpl K+RN9EvPyFnJEYZWfGg+qGJG502lPkWfk8cn8+Ok7jDgcAcAWTQ/1sf+Oq0HHyZfD6ku6GtxaTQ+ 6IlfJXlyFwpGpd0iTCAeq63hh1uwO4wFfpZqcFkYrtAyzDiTzYGg/wBAoOwdW09fdRXMQ2iKY0uP ltaY41ZV+Ntqv2GGmlGFyira+yIa2GDp9gTAfnsK3ZllpfKg/vgI+BfvPgD5/oPh5jhaCGSDNuTU teoY1bE1uhzF+snByq8TEF4kFrAxDD2RvCqeHeYWCau0IyMDCJPOPP7AAAdcZhOeBbQn5rkq1vai 4NUl6n+1afEcEOK7s74t9k3AOHZOPhzk8g+TeM9+FcZsdXOrtv8AwHwHTJysm4ZAkvoy7kB3dx4J MMdvamisylDnkDhgtXkaKKQwXw66hJpJBIg0zQLIBqdNIDpdTpNT/eF7JBqUmjuyrRGlZVvHj5Vg 5i3pplV4/h59zLdsXRW7s72En02UYbulTB9b6kNPYcOGq/2UrAbdnrMYUFsxPwloo+//AOT8f6PJ 9qL+TImNFtDbRZLfyZPyOYPBaYKTUh8AzHBDQ63vgPMxDwVJggI8Pym2Mxw3ibR0HsGAQUEAePn3 xYGZS93Xo60hmuNS1u7zNTNmo9e1vX66HfLa09nq5mJ/JA/w4ZCZ34cLa+YzUarlBhNH+78BPgD5 8+AQQADjkWQ6QKzuAe+VjaNhSiSTYRiZW4/gZQWWfFfh6GyIThjZBAw1VLjWnG9r7NrJN4N1cbCW 6Aw2B+Pn37pYCtGoCPvZqlsuG1nQqrbdR8e9PTsqvd0To2RLOiIyM7RRvNLH2YUY1llbYkGfa65e eVPFG6PWeoC1XhJUharGW+3oN4q+vXxos2Grvks9Kqv5jgyIb5W7B7gbQREen3mzKbq95GVW7BAm /oL9v/sffuqrUWnyEggGXLaW+6laGJLZtwcfLcCl3CU18h1eHMLftDHp87kCHanBkYWUJvPCTbv9 BfgB8/8AriyFOh67Pj2+K0Hqchob4tlmDTq1EKcMHgIlyAhx5iZT8MPMT1uxlKrm2q4ZPug0PPOE mrsAYB+PnwGCDsHUOLZLwQ2TOn6aQ5LJY6rf94h20ru8Kxk1TilJi/MW4eAdbtBbB4r885Mo0W0V fZm+BAex8/AAH7YT4Dq0XPcEOy+4U22haUOcbunklnwFMvgc85eBVPatG2Miwx5KyyNFJEjnDNWW KCDPGhRYi77QCTYrIaAeU0ZMqyw9tWdb+SN28lvDu4yosuLKp8hai2yMjJw+ZB++Kq3cCN2bZiYN 3NpJzHgB/wDEfnzZbH5dfB09klVjGAhskaXDGLCYBLIeQ6yPRQ+8cwhzMGBwgz0/BVmjbMxfBjN5 tJB/19/t8+H6n19fukO7O7Gqya9PEtpcEO5pCOYPW0vOTRDYeSJ8xkQx8wH9tamQmzFENlrMGku1 XcBPgNgPn2DYDVGhWfKcKlPAXx2L2DlG1QAHyZ/AicphjaX09wxrirFu1GRgMfAYIOIcoUrBXt8m DNu2OLBUW/sABgAbAaurQxiCN48ssBKMHhrC805vO7HcKxvm+AK4yM7ncwxrGDdQ5VeD7i+Pnt/H XJaDQUFujhRkqq2S1E2vUCnLYT2qMJW3LUYkbpuD58wwyQ18wjntN56Djtiuh4kzn0nABi/AOfeA QtNd4L6kyVi5W0kySUUxJiVe7Eg9hQ0I9wOLMvD6eyOAev2ScBIYA1sZumFmDAn+lZ/gP7/ieAFT WvtGbDPVUkOrvnDyRJ3/AMaG4WFMfFdIcvhj5iEHT6rMD3AHA4kq2TZnsr+c3ukzmwfv+wYvyrre 1HwADyQwsaEs5ImLcveLUR3dkcorY+NEMfDM3Ah4LbgHOTyAJVMcG4uTJfSfPoOIE+/b+f6kZKhU BxdETdXz4Jaef/75GZylcZ45H3EWVciwV9lv4g64VVZ/LWfaD4oUOb4Ox9bq9q1PVenO6clAGik9 tXmAlbauvb80MKa+Q94rd85gHTpk5TQK0BcZZtrGLIMJaLtv+wHwPuwIKCLTGRPnq56AZJDHbKJK TCr0y1I93GJQASLF2o4GO6lJh+QBwdLOD4D4yTFq254/dge//wBQHz4EBx2g2dguSXTRmrpJya0V Qleq8Ozh6RMGShIFomL5hwZafQ5g/wA8wITvue6C/Y54QHv4ABv4A/07LMh0PXw/4DRqo08TLafU CJaLIByJYdNsZTF2hgQmBw9kbxaENHbWBSgp6wzbosoqO7BcN/7ugOPvwHpK6mNGhR5Uz1r6iXTq 8WRlk3RLPgpdJIY03ogiSR8ckMwLBXfTA7srB0TTJDHKUatqMZbKng5cCQg9vj99D7ws1cV0e1nf 6lkZD5qNX7zkZLjXBl0jK1iRMKoxJt+EJNrqGuhxxH1HtjGrQ0j6R2Pqs40d9GIM96MM02weoXcB gOkYdM2WZcFE8Luxbr1Xpmvaf1CGavilq51BTCDKhzLssgPR5jltwVK1B8EYor/o7hNiAPwA/wDX z+wKfUownbBt4FrfO6hBkw9njofqEY8clAS262KxgUIMyQoiGOtSG9rwL/mR/wDmZiS1h6fUFNr2 KHgwYrx0/hb1w031IuSElNrpqf6rfIY2ZdF/ZOsivYYGpYlntAdfmXu4p7ItjoSrWdoKbutrAzF8 Gc5CGucgAB/E+AQfcAyBZI29SeaZJZp5ADHuSBJJd1InkzXLbMhUNiMrJxXpbtHNJNKUhiWLaikC kh5HjjjiaVErvzEYLLkNu6yfKweq/D7LUyWw2cyNTGq1cvVv8xwr1baIrDY/JPmLe8dkx9qQf4sP 4jHzBZFtDw8nObOzyg8f93722CsZSq74Rw6Gk1zVa2ebc6NL/wAFkR0hD+VEsauQ49PWzDIYDj6r g8gAtTITGNH1lH5sb58AQQD9bvn8Y28Ecdcld17aGaBN1iTW7As2pySfU68IAyq9KFHBfvhPT3Bb mD63BTyB6cybmrtCz5urgmwP2HgH4AAAWKSx+oS8ymdXObnb9FshbLDzyTfCnZEqm14CruDhfDh3 4MOBDlSGQA2pDZvF8mR3Z3Sfv2P7Af6GLEIqK6epkriRtuSKSGV43Ro6a/aCDkPcRXbZkuW9uPFM ryJHJxHUbRuexkjyqO6axbXS/jlVh5At3OJNlqS3xszxJ3IOyTyExKtuXYxT8J1u+Id8TMFuehp6 HeC2ss1X03uf3bz/AP1fvcABrdF2RcEg+Lys42BzbIuOvQ6HcweXDqWuWE8eT2BPMVXZDIYIcV7g cqTyaz2v+j2ib+gv37+A4D01MzTnDXKbY5V0nuK21YRthq+2qNreLMFxSz4rw2CZW9kOEyHYENHP fAhLazjV+2LLwECJLxv/AN+PoOwdJ9taNUDG8WplRc6rSQG1BlOZ+TTKO2YuSbqaF6jFsfpvT2RP D3wPMA60uF8VU/bLkfWZZB3YkhDmwAD6CwHwAA+cSojGPchlmGmZJISYpETZC7rOXljilwDoRtSP 7jlha5grZNDupKqI4jB07dkcbY7aiPHjHFrJbvvwtcyQqrNQFdI4eeFziIdIs0LZsdcvLPiB4qvZ h/FOf1x8DTUOyGFwOfltpxJLT4rec97rqxAYAFugAD9sGMllg1+UUocM72FRVelLItp3rYxbVLu9 byjynbVX8gY8GRkT1vGacn1/ypwJsyx3fRnfD6Og7Af8+gdPfU+O9CtbZcVBrJ3pWNTDGpcr0+LD uGvhE0+AUIOOtQPiiGG8/LVJ+LBYz4z4q9XrCxhhg7pHAMMDy+f4+ATUhTW3G2APtknEmgrCQHdo ZLOYF4OUixHLjfzFsuyGGRfmHFLibVxndBlmE3j/AFUAIP8AQP2BguNp3jcNH9O8qSJHJlu45xvE x22VY3rcDVIjeKGNk9Nk2A6iJ91BjuKVxvGWGVecmr+Jh4PuJ+KIohw7FqV4aoDmeJXNpLh207mK rqu2C3A64tg8BhuDJMT3yGydyIFaEHw4hLL1V6GzbFve9gAADYOfdb7ImHa5zM7NtDO+ZAmcTvgl Z1btkOLtDR8wfD4eY5hxsHB4HOfCbyLtAZ7b2bOn0E/5/HE/0wo7I6Zws9Xxm4H/AOek2ku2A+Dr JiLb4mrzRKTyIdkcIcOYnuE5SuADOh8ZF4o2+cKq79g3/wA/0pZGOUGtyG+McyNui2bU2BbziCR3 GTe428EWRDQ7IDQx/nqPIQec/aFnE4ESLRR6ifgG/wDnwHQkqJZpMacQx54vLtttA1hC8jxQ3uG9 pVyoZ5YriUHqGOIdqPMcR7sN3AH8ZViPxZvx02ocx5Frd2IbbXoQlXyTaKQ8OyePh3BxeJz1DT+B snzJY8wqwGE9BME0ah7k/rbulhsB8Af9uP8AS95BCcjjIpUiBk5OUkuy9V57JqBhLi2hITYvME8w YhOCJw8G2j3ydM/a2Zm+7bJsGKCfPv3gJJHOajG23LJdzNnSZkXV0S3BwD1vdyfYwtsxaLs2dPrd 8hp6fNeKWYENqcNzq9Xedj7pBEc+g7+A4DwLrTMdJrat9qotPNuF3EtSDDX+cSX7YtVNu6skPnlf 4h9MbJSZn4e/YNtqGLMeavfO5jwb7pI5/oUfKJ9xt2Y4mMQTVo5o7xzEeBBqRZY6LEdl33UsZanj bJ4Mr9cx1JDQj7lOfEZupX+3s7WviHaF+2KH1AV6xmRuJ5pDjVPcnaOJfE0BLu5NZF987qWpW918 bsbvBPVQ6MTaFcYLB8JdufW79+2ABj0n4Zy3CjJnGaqMVuYPTJMsPZAFH4eUtphi/D424THCYHHz J1lr6i1B+c90ODPBvhJw+/b/AFFv/IAF6pAezNOdsDLubZi3p7q98ktqO7ZweIttDQvSleq2Bw7V zKrMD/gz9SGANQWUZoaBn+9jiCAfj59+ftg6SbJmUWpL9VocVVjW1qgmXGJsi2s6RcYepa51CaX3 wPaExPhoZd8YA7x3QPYLayMV9zGHNjdkd+AfoAftgt0NJJBMjajTSzTQvgoeGTP1IzjMjDEVtyBo wwJzxLUtY9TUrPG0MMsCZruhg0PrsXl31Y9/ru0cqNI9x1kvab6FbEF0m22pT6lQ9ekhtlnkCspA 2vU+VgUaBJQpVae+sjhSaHD558BAbZ1kExituayc7o1dgf4Cvn/Y/v6rkZcNDQxuU0TH/HKyUBeq ca1EHcO0OSnUvJE9xiUmYmMpCYqga/RPJk6v4MjA7RSTbx/X4Dz9RAHYU2OquzNZprtvzuHdqnsD WAtmEgxXNoUg0HqrHh7Ip4xcHIIdjceAznwmMF1esjDjtzYHi/eAqMBsHUbI+PbS+BpKBMCXAuNS lMtAbDr9HmafZRYXV6e4LbIGmskIgyHANgNoMPWbPclX8mBpNXBPvwAAf58f61bnpwRu288WeEzC pBnt5Z8nP2rj7caPm+EqOdThwHdFMX/M27o52MazPGJ8+b56nhdqPjHUde1KnVXpL066oA5u+bYP Xwr3GnnrGmaQFdkcDDhW7JMhkIeLbqArOd953QYzc2CJNV4n0EBsB8/7KW0LYsS+XAOUzVsbZ2bD W4iuSs7TvU8yLKXkIX/JzGQwn9r6eakMhAOYrNvtDSzI1VpPa44AAH37/wA+cEeu5FLWxZ0WUeJc jyJNe2DeVPtAlku6KplKHtQeydh2QN8AxB2+BB4N+ZOTfdqTOfv/AGiAP+HRHT90U/3s1QwFca/q upskt1lT4ft/YTJKV2zSq0GR0O0w4eG4J63ObV98eDHiyjMipBukwfn363d/AffkSYaYTSNvOgeF I1j/AJFzyLBpebjWhsx4DbJfubLg4y+pIjiiUOEllmcjNBHFGZC0cXbt1gQwzYMGU2MKeC1AVHej Rp7AUvb8Mk4bMNEWBDd6vE4/FYUOrzDiYmUOYDh7AZK5rSwICraizxe0FoY8d7eDoPPrd8Af391w G3U3gdvioH3PWrTKaIwunAvad2WDXy1p8PJKxbS0nsweWXp+aoN/bUht729Vo+PmHdQ3aKQbt7Hg OO/efpRV9D1PY0NkrmKh6kKrq88SSK/3IfYVcRQNm7CtpxiF4dPr9bBcwP2NM/F5Xa3g3/QPn8D5 8A/gLOB6juOBRdcakQucSZfmKdhBhx7uaYpHUZcVNgXBeqyZMMMkxwtRHuhgntJkYMwF2YzAjYW7 MV9/AANgQffpbRKZQpeFJotVJKjSLqpYxHrsFGEk7CJpBFDKkscDvt7iNIwGCto3nkjLR7xSaHTa eZIvpVAfRxLGHP0mMYgSQpqDNtR4QxzNg+B6p8ZaA+oYqRfVX/h/N18BcidNXYbjXxXOqRLDRxkv OkQq7W1A2p3QQyxFcDZ8JOgkfQ+TQ02MJyuLDg6nlAx2RnTcyCeqt3Fg8yuKyqnNTlUPERwcZMVd U3E4MBZxzYkL0rk9ZbQK6WDFIXrjMQ6WEBBRkOKaywcQXCyxGGT6c66BfVMbWLJSbU5AWDjRrE1f HH7P5HXElYLLIsg0m4sjq+WkDNmrYtbb4s3dmhfcaHFbbYZAbkLMWNPQ6lcLGzqBqe+KTAo7u4K8 VsZ4r44WnZBhlcIbhMau6Fl1X9ZwfCbMDSdUTtVeCCeAH7dxQetxCn148HmARdpkqZ1BQ1uwsEms DHvqMPMMpnWx5gwxw3DmGAQ84IhtwWVlWtDAm8BLR/7AfYKiAP3VnFZskSqnMZVfDKuuDudpveCH +CYLOFcuTBSNc3Ynww/JNnq8PBAELaarUWXkoUvIZgb2T78ffgB8/wAgwQ+MyqzzIBV1dDjZLc7P +I9P4OWDlHy2N04fMWw62t7gH+BpvvjEztjQURucc2/QBz7/AHB1h0k27Gjp27XokFonywAIa4pX xu/B8fBbnHsarT7TMFVzDI7PEVMsQF4ZD1YVzq15HjmxyOq92AvuikL0xtoYaEybkqWNfK/atwVu JfENod7GTofezF87qQx5gH3AQ2oPyYoLGE+bf5/XwAA+APnyS3LIZJRAOLfNPZvT2+Xxx60JlkWB LZJSuWptyWyHA7thh09xcO9K/AnWQsMuozuZZtqXZ/Xx8+f8Af6xkMTKqONVagSbIt7CS+OYmJ9h MhR8EOVc4sFbraGYmMjAH+AQgQcO2ZTdCRw3vYM/z4+fAbBsFqF/LqSfD2GVqcJWdFJSWG+CQG8E jADYy85Sg/GzCfMMMhCZ+L8Hhk8oU5Mcq427YgNg38/7bBrYyx6qA9wSOGSAs+7LhH6e2AiQyRkr 32JUN2MMe68ymNIZHjjh733HuLFBI9ZM75HHKhiMT4PSZQnmO0Q69XBdM1KnpoEIJR7IyrYvnmSH LlAZg+Gn2QhvlkMCGcUh6kq3Yzdr7kZlo4E84goJ9+t3YAGwGpQxlu9uPi5PGkk+VMW2wwquxhIf ClSsIs8yMBhDrek2Snx4eah8SR4ZPgb5xk54TfwGwbB5/qT4utHk/JbWMwgWE7n41e1+4WF292vk IFNW2CGY09uH18PBPME8Hhp6ZuBrP73i87+/ff8ApSrcxCXEMwuT9yASoaQJT2Q8HXlw8h90Dz4v zORzIfH4bVAsA8D2xZ/GZOq//IPv3H/P4yyRyMIhgnaBHBEFjQg81GsgjS7HsRMvuugV1rI9BZBk 7I6GVjcj5GM27sDI+NcCSRqJOONtkeIeZYDHW54g+reDVV8xkU6fJXAvy4dIgacPAZifDZLgh1un r4dHx03oc4wsszRaCz5sJ7YbB4B+6kmysng88E/+HhQ9wU5ZzQHbRIdJhtMQwUoewhYDTfYFwTLI MMktgho8Bf007PwZoV/7JaP5dQUHf8eAgAmO0EHJwdnx8fHdVtAkyWEHSXztlz2pVNXihwC3vAdk D/MrkCwNtcrQxZ4GTrMHV3CarAIOPHz4ABsAGHru2Fev7apZDdn9VSLOqWIn0PM1EFltyOr0UWYH 1uHsik2QPaAfgZCfOD9jWi0NsBhMMcNgPgAC/v8Ah1qni2I4XEaZ1G0emdc9uSSgpMtj1IMS80eA xiDyZHbxbNE6s7BjeUIlE3JMn+XD4xv3ZNeVUKrq0QiOYn2QeXNhdjD5pdtGvU48Nj2En21dzxfE pPIbOZZLUhuEyceTz1qJ6yTaKvqDfDYRKOAD5/8AoE/j0mVdsT4zJYRRcyWTCtDwSvXBqhyJcKUL iSmgOoTLIDp5iYvrUH6G8bmMKNFZk98N1d9+P7+A58fAGDBVYPTSl1UuXxMNnmRJf4lXkr+q+wkI CrLzRV63aHeAPW6e+OCccA2h85bZifF3nY+bXZz7YPdC4Cf6kcuyO0tuZItcUHb5WcNbI4cOrsNP uUosmi7gXzBhwW2VDHzFXcHw4n0b4uoGZ582Dx/oH+/qjhY59zyKmFLp2uqvYLmuNn1MeDnmfbjz RbcpHVHy7ULrkdw1ii8ityjZ5rHgE9QWa6A4tZ51IpC2pGLBz4zuHApFgFob4mu55XtRwtSt2Sk3 wxX/AIBgn1zgzLKHqMWRhzzaOggN/Ab/AL/0EpbRSdc0GYsEo+US4ZphblkNOqTaCRZG/CHJDcHG HD+HfAer+K2WwUt8wneZRD8HvZvtHsFu+AP7+1DDALpvMpmLzy2rOsamba7PodV8hT8a5K1zaHcD upDZPx+HsbFOgcb3MWLJ7HshwHyAB/X3gFLHt2v0jT+SqV3Drct8VYzDIs488MIcoBYSj44WA4If 4rZPhvFaWApVWh1msi3zbNkdsMT6Dv5/nwDrRGz2dwuiDUxuXR8aDhqBXHuPbxyOifnEDl9nYiX8 xqVxGX+Tn45LE9oHQHMj6kKqqv5WbDQM8yyah0jvMS8MBqX+HSUnp9PrfdQO4L7IjoZ/uoyE3nnh NmeXbZHjn4BB4Dh1aKY6Mi5NZD3JFJkY3AbYSPqEMNFesgBN+XYwciyIdqVWh7gHnASECDW6M81f cnGQbsb33339BAe5/pevi2wLrhMDMd5qVnC6frcsr5z7Hdy9oCmEDF28wtobInzR4fnlf8VmE8EM XZntaPCfoO/7AhYn+rWkhFEKJNO01T7q04oraYp11f8AJzX6py1yPpVnfRI4NjpZZe1vq9Lxx1eg TVqzqdfGZa31JB+lgwOoDF6gB70455GilaMOyQJKgdhpXpyTVLuV2Y2SDi12eBXLIYnHfCvrI+2Z b5d1i06RqE+NwRufccfHd5688pFbvFgyBsU8NNl7BDkpZBks5XxDlCjDFFzPhp8x8Q5g9ctRSYJ4 OEzfff3v38B+gDYNgfC+jQz1b5zIr5PG1d2CKZA8eX7YZLupGX8WyO2ye4WQYMD5kBScYAP6yUGE yfNgiT5894Dfz/SlHvke1QeUUrmZZBhIW1tIaCRjj33KhnyVMsCHadVmGTh/wXxf/nFhGV0NZJ9r sXc5v/4j2DYEF8V2vzLHS7gbXKZGZA1etteyNXTvS5YOAtBUi20YXzFDviehp4/5z4QfOBsyy0U3 +9728Pz8/AH7wHTZFxs37yPSngt5scWW5d0fxSbb+w3Vdt2M8MzDEqMtzztT1jiQe47Zu748VR8/ A44L48NMAlGiwpDIhpDs2K7tnL/zK5PFgNc8vDzMZi3DX7gB1KOfDnB1lDfKzKcJSQhxB2A/9+fu oxgrewVLMJ1emrYwxk3MNSJFtAVdImi0O40OLuHA3xkcLUX+VcefOYDLM4GMWarSQgSqwDAAQfoI Dpy6pZAtjqutwNczBx7BbpwSPmZ3b1wjHWxDsZw+YyGHu1Ia+YeABCfBZOc1eLZhhxJq7YwGwf8A Woj6m0/5ZieUtq1ClVyVVt06qImQBJGGwMhnogu0A7gHoZw3ityExqPWhdM7k15K+2IxxJNuwM+A AAEFAfvfrPNOzQK4R5sskQIZVwrHZhO3LHeVv3tftNJ8F0KpuMmSR+1WLty8bVmgFfNAk2aIujdd DZys0NNzM5cAocbNngfMW04ODCYu4pMuRDZCG8Pn1vEw1AV8D8zc+UEvN/ePPf5P3IDA4cD4NhKK ZmKL4uDRrCrjUOyCxgWsMKHKDp6HDZKTMQsA4Oy/gKvBhgsoT2Pe6uBnwB/+n37phR49qttD0CGq BkoqHZa3GbNP4GjY4lPaLasIDYwdwmWpyQPyDY7LX/dP5NV74zDEfZN8+g7/AOfwPqQfmpykhy7o WLgHAMqmkikrZzpph2UKlu1de3KGnYVxMqCJ+9tkCBBqwnWYsmNetl9SQcYEHABjvwE/1od42UCQ vUm9EIlfDPExWxcqwGNihifJ56FWOeCsnZsTWkQjuw9KRk1+3hr4/H5f6upyJ9gTNPrHXo2Grvhq vUckYviJMA0kJ4bDI+y3MtNbsBwVYCe2gw7NxdoWazOcJNo4D28A+n9gqvdGZXdyOFtZtaTGShw1 tKUOOTr2v20wLFyyibMH2Qt1u+GJjB8Gy/gNUzkyELZkbuibCG/xF1YoWh6IItRzDzvalf5+rQlf +nyhlAbS8X+IvS/hugZPZO9reySyDh/Et8CDDZWa5GhZZ8OE2hwIAfqIAfwXzx9P2BU8fNyyR5WM 2QSnzKK7gMmS0CQ9XuVZFKlRHAwn91FsOQ4q+VepVXxm3/syy8ah/wDqAPn/AO/1E6Fy0JfHONoW dMMcLDFBk2aPkMJLX2kY/gZI14V1Qvg6NNFJchzCcq2HpgY8juzJ5rEW5g7RbivR9YoZ6wrRzk6p G2IQQxpASn2MerIDF28xDtRbZOPuFqPlfb44M21q7NZlqcJdvcBwHtCA38BV1xT7EMsmSm5tkMjt lDYy9V9b2Q4MNkNDl2vKPnchDmGOeDpmCIvoZwOT/wB873vhzf8AYEEBsC/0wijAUocWZXZ4Bbhr bsEr2v3yt5Esw+AWFo+GwMaHcExkQyCGDfU+fOcCdmIauTGbIbSAaCBfqEwPgOegLFVXYGZQVbh9 UsowSPZo1Ss2v4bsHlh/5vUDbSePmQ+H8bIOAM9XzajiFlZVyjMzeENvHPgHAQCCfw6QZjQMkTd7 okmYx3S3tYcGsO7jm8hRFDp2ywYqs5Wu1mjekSQe8O39OWOxsyU3LSdvHVM3BgshttAw+NEMaeaB ra2ELOVbQlsktNYHJo4+t1u9uEOq9nNqXwDYcYzbWMWQaT+m/n9g/YOo14rpLcjA356rXFbmT0nu xnGCMvnh6zXKKYT/AKeh6kMWCt0aA4Ad4WWZX7mEwZvZAXPvbf373PuDVo6A1KxE8zVWdq9PBrCU kgzpv1OvC8tpp7mSG4p8O1FuYYWyENIn1/PrjBGwQ33H8o+c2B+59gAQX5BWIMgV08OB+UUGjVrh MlhjzKfMNheLVyRaDQt2hDQ3xPW4ZAxzyBUsFw2ztezE9ktFJeOfAMEHwGwakAECJAm3CbISGCXf kkJUTO0MqxZwTRFo1VZDnkzErgA6mSZZi8w3nimEJb2FyaKNXfjjIkcmNm8KyF5B2V3XdN1VYlwX TFfGPJvM83THm1GV4EuF8VKJFoYcfwNkmTDDAYxbcLa3d5GK9yLTMcwSAm/0GfAc+fkJ+6TMyzHz NpdkMgclAre2tOpsTIsIC4JCHUp6wnxomV/MT2TGyJt4Pm/YobXyZFxKVmso4QJV2KDv78APv3Vj wWnDVHRFZ46lq9BKKtVWqZTvlWXM6pqnreubQuKiGlawfWQvaqGXsBw7Z1AeVKsWGgozrLM8HEkF j6f0w5DgAYKvSOcUO4WFX1g8bT1w8/qYC04dkWEhyiktNcjC/wBh+5DHW7BaiO908pI7Kzk7kuRG GA97SQfH78AH/YB0lFDRnHCeGKoGWMxRxnSRcSBUihXbxkLpy0mWIYYWVIsZmKK2cM3NZIOZ3xuh Yvdx5H2FB7r4sUpoepAWDGu75bVXNQtpUrNtAbwdIW2ixpYur8V8P3U2dDr9k98J7wyWbWb4UJkz gTE3/wDuDf8AqSgUeQtq5E+vq5uCyBuaeoqXfBL7DwMA7q7kH5gyJweZMIB1We4wAbJ71erk+DhP 7/bu/gAD8AAQMys4eVbGzQBqAHbYdWqY/THbQaIyK8WwpQsPxsxCreGHsBbB3Sn3wcmdjWi5FlZR wlo7H3dYOAoNunz/AE7GSPXbbYFkHoqStja+cBrvfAYNUCm4FEPTgeFwx8PeJhgOPT657gIljTNz V3zFmRwiSE2A/gAP7Afx6kZaNICVyyUF1ghxjMdpsxhMzht2/dbbmXtTHlrkI7K60hplDHJ2ckbs jvS5Z0lLiMAG5N8VLHp8Iqn1v+Wo1nVpnVc72BW4ej1NbKPkQCBcGBPcJlqckr9bx08b68LbwzFC gx5OJKSkg9/qI/h2iQj/AFuV1Nnq9XJSq+shbW2iYSu6Qq6kK3dzBRWli2gPX8yZ4cwQl+PA6jIa zujQjMxzzaO/H37ABz/7AbR8u2KqkEqbH/Gs4WSNiTGc7OFeuBQ8plDzi4VuY+ZdgdP5V2v2PAZw PcyQNJdwnPj4DD78fQeoGZfK/mnFUWxku2KGhv6lHA1Wjyw74r6ZSiHah9wMMlbvi24OGqitGE81 GBmoUoLWSe972DAIAABbuIDqmkpWbZSS3Mqh+bjcJhga/kkwbFPuxvIV0UUKs6nfmR19jZ3yACOK HiRI5PPOGPF5Cq2rRvtdtaKwcke6aQpYa7UwqPE6Gq6nylJ+l9JuZ1sZ8bCY4R90MTLHc5wwqMWG u3sM2L6nowqSZJCJgahlJMnOvRxZqKrLrREB2O2PUsqBmrs2AmzmVezobSYSMhtZ5QBnZhGFXgDg kw5+mbIcszB0jS3g7FPxG5oKECTFmSPVnXOT+2Y4lWPZvABL+p0ougBdbxq/NWf9fNaJP7MiaR2Q 0rMWUbOqNAkEDnT/AKHSwmKdkafbYMVfSztJrKwQMksQyWSmLuDOQEsmylse4dt2RwW2Bb37CfB/ 2uTGA6T/AM8QCDjsAEB1VEhX4dyU6xss8Nq64M3OpSJaFhViwNgeubQmW0BuCv8AT3yRjwDr0yuY DhAnQlkYrq7MzVX9JOe2/n+mQwHV8OLyQy5T+ngwL06u7YrslhK9hWRcibqEAnmQgXhzQ4f6fBQ6 uAnMWYmr7Z4PELsHPn7fwG/9XY076U3wrp/tW/f4qGTS7eaqgc4tRbsBemJqu2aVSiGPmLbgH9vh 88o88D8Yh7mTOVdV/BwCCfX+fAPAdCWX6YPOghhlaYQbs8W3G8n9MFs2xvu+DX76XGAzIjl5FKI8 Y072Y8j3BzjzeK4njw3Hx1VGsw6e0R2R3qqpdnXIdgcwWzFTsJf6RbVSB+eB3yGt1WQmcTr98g8G eUN8ZlkGkmknwHPuA/r1PJ7A0am18bQ4Gq7IsJoW3+zQ7JqQHu5ix65bIt8GLQuH7gHmbPBgYd1L HGPO10bZm9u30Hf+Qfr0gaXmR5UfOFq4G41t3hya9eGri9ZIcrdmhNXB5i4GXh62wvgOfv1VoZMY hqywM+k7Hv58Bv4DpkSGBgyhcOUm3AyadcrmpYxnWEviQ9cxmxNKTK+Ww7gtw4fw2ptXzzUHGcXV 2ZGObJvu/gT4D+wVqF+pZZL/ALzC6nSqZthGjU8wyy4SdntyGHfx7ceU6eVEKB3cadgd8xxbsgxx CYxZpndtfetfu+rOWRbkjTmpuBnVAHGkor4SlyD1qWRgYqWxqytCN9PDrbJDh8DBHp/B2R5ZlcX2 zOO2yO4A+/AP0AdNQJVC2eH9tAy1RS2esJbs28A56wL5m0Ohy9PoFcX4a2hp8vbpiOBYa0nWojM1 YNKys8JtGrngAwY8BXz7+BAV1aFqyNdaHYSbqWyVtkQ0O7EhouB2MCeGtES0LGrev63Qk7h9br75 Yz4wQAYf9RdQfSMLR3/n3uAAb/0mVPlAvWWt2M7jQlkHhslTp+pSWpBIMVKelpqaHn1Wnp5in63o 8P20+qh/KIfnDex7/wCfPvx8BsBwLGiPJG6CWFMp42jExj8BAIs03s6ezlHgR4fPtfIiExKiSrpJ XCRBjsyN7ci6U+ONjEZEnI8iuSogyZYsOBaEh2CQ8owt1k0DbIHiZYFoU/lMlgBzFJ3yH5h9SHqQ OZyb7MTOWjvfAV9Bfn7wB9+h4ZDMlUPYS2rgX8a5HjfyLIqWjpa2r1evIZSHV8OH8NPuBgmI9t/x DzrIZrg4vUCNvaSbxPgD6CA4D1ZWetPh1Js1oU0Rcr7uER1NT75XZInCJouXygB8IahEMQoWotDp cFSUCFOrbNWhXkpIFdaTaXv7IAAAwIHVRROsJ8pO/wCJqApLSKOzcyRcSSOqsaqt1q2dMoUWnMZG WZT5UV6JemvLYYb4VTBRGw9TIURjgM4j8gQMV9/Xz2PTlPcx2N8rKty4Bs9r/LfZef8Aib8eOuZV MkbuNPSLIYzLjhGSNyQNh6sYpcGxTKzwK5grosRTDUeqoZmsVusTyeMsKtmSHZFmrYu2rYTXJ8r/ AIeGcE9kHh65rS0alRuM8XKPAwH3RCVX+/8A/gNuqTh2JZdh0/m1zLtEC+VWEE0+tmGCWyAVeXw2 FYAdPcHxbtTkiOpV/wAqQyZNXpsaT/0TB26ggD799B2DMrUZqDsVCs7UhqLdlJVA6kG27ldOARiy GUPWaK1BTK/h9hi9bp7hjakDgdcoQxZq8m8k9j/f9/Xz/gD/AFueK7aKgtCGkNnyaxclUlp7qdqf LgYXBypuIeFw2AxDQ7UcOY9nIFPqSq4VBZunNWZlg5aKS7nD4Du6A4+fAP2R23IJIpSjTBDG6I4l haNsfqo5DSb0aBYg60mWQ5WudkIeKVdRGHVFaNopyu28eoW9raNsUkJLU/ONDta+2pZB8eK5vC5k gyNr+yAyTGYV+wjzAJMajIrDKKMhBP1Ifs3zPgEPnB7MRkMo81mDCGzaPv8AwDwHVtLQ5RFy4djV fWMnOtomgCY9PpKe2B5UVhA3Itj7U42YMTB5hV248DmeywLRhmPez9OfAAHAdg68/qIaQ+mB0tRY Tr/rdKn6qGxr0/WpW4CZNFprCTTHtge8LImB4ZAy1AV/DANgiq74MWfuqQ8b97H9/wCrxyNXinSJ hVK2gYkp89kCKa/MiaZ6nMSlep4sWGPhmA+EMwwYNQ/lvw+MVdtn7Ib59+It/wAbdPgDklxMSLnE 8TiRo43xjaM1tMqYnDMh75bwOoJFkjkaRkkRkwjSaPKeIt7t1i4yypcbA9p56XtfsEcMnmADlnDc k9CUmxHfBrxEDnotTnpS3V9V7xaieyD0Nq7XwEbbFmm1dZ4O7JLsbP8Atv8Aigv3RhX9NaiKqvit 3zJhm4bxslOB6ffGheh6gikQWUmMBhbW3x77wQ4J4fANzBnF3z/e3gUE+AAAP38Jh3Q4XLU7JFsa YEG1oB3ZHMDWAsYrlzvnmcxf5hDuB8mD/wAlj0O1FtYwQyiyT3vmxw/v4DAB+/2Vqd0U6vcK3ikM iNSem58G3GvXkq7SHFi2Ha7I/nGQO4frOn1/3HT+Mi/Kd0UkJv8A9+ft/AAABI+GmlKwb6LnPSpu IkYKiQRS2Nxz2kJgmZHla6YY4tTqYiHwrbQOy+pLIhtEeLIbWVtRzk8HjjqOIR7gi1vDd2M8tJ8u zmS419qs6REWnKudUt8DLg/idTk9b03zMVt4beewWQnUDRQ6yjcJ4Thifxt1+AH34+A8/WRg1ANt gEtUAZJSYYGyHZ4ockeT1NPTalr080Q7QMIaGtrcwhxU9YAEFg89m2hmGnTlXG/PgD/7Dv74uBfT +6lqMdBc+uatGQ22R63r13LSz0r5V8TF+ZvC2nvg+YDxYLLnIYza2hZeXi0jiSj8Bt1BwAP2wAI1 4qrVpQUuyaWTXCroYuwo1e2g7ae5DYtNFXrzRYyIPD91IYd8HGFWA4QPh8ZfChNm+7OzxsG/vx/o 5FjbuNzvK7ySBu2R4wUyaSTuLbNjEYC9w8jnrFJuKpSJnKRQiEKzZVmF9QmhhGoXvajj2+erLL9b x23TvUrm+GDZ61bCJyzA2t63iMkpXXgMqHiyGLIZIbh8yCh/P3gnyho2z3NhDfPj/wC/n0EBpVg8 yjbwaVcW7INeJuMlTTx2rOmIqE0RcFcCnsER8b1BkDDzN4T1+2vh1mzbXhjjSVXO3PvA/wBAvwFJ 1nZHZHTJZ1JC0MmNihjVe2BzYepzVdyLRav9rgQ6HmWRMX4cCARno8xlJIe6DPd2N++G/n/fgPWn UoUB188OxkWnqVSriq2pC+H0Zh7jtSnLkXgLlDIMjJ3UmJ7B87h7a8GCZMpyZmR/NvADgG/7B59O oVxGyxSCR82UZLhH2YAl5LbDLLgYm6Jv46eFV1jKx+tgheXLhklC5R448XiO7I+Ca6h09806JBRb aJ7I7HosN2EuDUYDiZiHY6RUsWav1uHMVuYhsCG1T7AwVVsXxcXznZOE+A2B+4CeAHljqIIJ/wAy vbQTa3CLdVDW1tshPzpGzyrlE02U1CMG8cw3ggtvDbaClyQX+L6gGbIk1dx/YN/38+fAMhDq+wJe W7afAwfnYZDZIg/JrfhEzdJaurshGHDrf7J9HQ08FyR5Zyj4828j90at38Bv+B8+AAIJspx9Ocvv wxkFWyDDkeoqIj0/VZh3mNCJXr5Yy2P+G4h5gdg7qgV/e/Jq/OcLUSUmrcD/AL/l38QnyZywRpg6 udiExom4EykjjyLZJ53cguP2EXzYEwsygKyYI7agO5xzx27QCmrxy1mr9t8dVK/xNMGkHVnnY6ag ITVPWDs2sLghgXgt/MtgyKhj5iGH1H0m+V+nQoDAeuJbZxgvHawWOP8A7AMf0P3YslgtStJGo+Ba tY1dYWUtY04vmHut2FOi6fdKNSlIQAvDQqHMOKdNR21PwhMiNp7uTHAo8HPd3ffcAwYe+DAlCOnN bgZRK1cpVQE5zPYCWAl78kaAJaV+PxEzZ1vH5ljcfgPGFmM/jCYI394AHz4DfwCD7GxiRHDVPVd3 HraW0Or+0uNXhzAZ3cOBy/iOFgTFsxdifW69DgqQ9DnJ7NWaurE/uxtJwAbB5/fz/VmRXkjKn2ZB 2FpIshChkQgCOPGwSY4lzsZDtFaIEWOBhbl496J4pDFLGTJGYlZlkiawMyQoK3iVJN2GccmZh4xi h5ucSJNFhpLZZENDaIhi0LaltKuH+HDhzN4YJjU+Ve20DDGM4t8szYwlXhDn/wBAAbBW+HXcwNWa TYwEx8POmSVMwBmWgJQ4ibukVk+IH90+Gvw1VtXyE7k1ZiyhRZ837cBfj/uA4Af7AZRbAq6oZDHj ZIySrdTMd2jHD0P5YE8t2AYslPT3BPATPweeamRnZsRZNm82EeAADYN/wP7Bi37NFZ38Ust2N5wY kNXlfIzkeWyPkoS+NEMgY+GyGJjgtg8PgVzCJ2+hq/nUnwe/oID3AefODcFen/Jytt/T+xzx99nj 4x8m+s7csxzy7GesarHAV5PnP/bEijd9WWqBMtjUznrdfWY9hc4o1VNqZRs2pdQ7AoLCdp7xmTcG 5ktSq8FlOEY1Lb4EHT4t5xxxrO1MDKRyD1erFA9L7ifwq4RYbst2y6V09aYL4tPKktz9FtmpVXPK RK8WVPV6dTq/cTJcL6WJexsgGgqVprWFmISreArH1YhQZ63F9fxQvbB+K0uv6fFUf/iwLIZLOtAP GUzFhNThXtkOUpdjSpjBVdkMhiYtuCFy0h9P5MUV1lmBmwuni1D+GwW6f8+AT9iIce36Xs98tC2l sMGT7sqdfGoa9K5ldzY0IZjtu+WRD4ds5w8QqXmH7UMGebOf/wCvv3V1pi4Cqn0z8aWORLeNzVq4 sY7vHNn2HgjjqsWCKWYFo3WWSSCW0kjQUzBse7CxQoe6uOlLR9gSHdwGxNaWq7bc6pRt8yM5bHqc yxjxZovmyWCHcFbzKHcLAWwf5peA4wYU7Po+yGwhwB4Dr0aW3nm48OxoRjhOox8uwSQSdPbwwvnd BerlEZF9wDmA92LZGY8QGBtasBmnq0KvqAni7cJtXz+wYVF79VFS0ewKQzKx1c95glhWCHsiIPSX ZfYVuxpQmVFMEIi3yNbmEHEJt8A4h9zN0GLLwE+8b+A3/p8C7Qy2Mm4H01VUpgbuREvDJajEuZKs aXY13OA8OyJ8y1GQgY+v84cdsfODPPhDaP8AYD4BgAc+wRIYpJGeJ0WFqThs41AreheShhdx4vib pu0Y8tjWVUIdXz2ZWxfdj9NjHtuDHKmWdNww7aAB7yetGYvg81DW021VZtA5uTX7COLpJgt4FTKN D5s6fDp9bTyH8hV88HuYwXydZBm/9v4IH7/1yC7oMUijtXIw8k8pHq3qd4DrTRE/F9xpkWyGAzDW 7IW9wDnLMT+KmOcCygxZ4Sb/AH/wGH0EAziFbyIC+HM2XDG6b0jhJatzDteGHA+JlNnIrdbvktDm r8y1B6+eag4zte0DEZ4CGzbx5+3T/UPTen9bcnjOgRXBJtS7mtksIhbVY1/L5QerICr4j63DsiGh spBwsZttCBYxjuYLQ/6J2T3f/Pr+wAAC9tAmcxwviMVeTmiEPIrL888fBvoRuKzFVSZFQiUyJjJB G2FyNHbV7eFy76JyWuilTOaZ2i6CVyO+S/1WLh1LLHZLUHLB9QUVeA1LMAc8mMjhCTqrajyeB+YU GcX8Gk+DPYn18/sCD0oFcfDMlA6a52RKZKlzrId8XyG4WFDrloloaYY7qXBW4dk1IfDBtuPbkxyZ oVxgzhOybAfAef8AP9DY9LcM5wam1SG2RXr5nMlx1Otnl9dTygsSBKGPh/DDzFCr085/INRkYzFE MmzHEkIbOH9gPgD/AIDBV1uYOWM4TAzvnabxoGvVt3kNWlfURvD5SKQ0NCdaKGHDB1uY4Q/nr/Bw /fJYuRGZnjzZwCA8Af3/AGByRNDul5M0SFI8qx25PslrI3Vt22PPuHnqAxkRssXYzq6tmLbbxsUF Fe8G7PPNfHVjHBOTaCcmqrj6UlMcgCWy5MKQnXBSdiCYAk2KGmhon1tTYQHYzZsOPPw9WfHWAa0k j/RnZUFTWwgmPkwcrOudauWh67iEqyZNEumm/Myt2ZsVBlwAtY94iFd8H+hlKGs44mDAOSrhR6Rn GTJfLToUGKTzYa3lDYxhhOMGUWn5udA8gDsG0+RDkFvp6sgqLrcNXfiz/wCb1JEzKrCaFQQCBmTQ OPF8XWX4Hjqsd6tEMpQ8OexgbRAwLHSVMhajtV+o+HGPO75K2+yA+LJVb5/PT7AAnE9GeSgv+yef fkAAAAHwD91ajUbYF6ZofuXEakm4IGm/Srp7p+q08xETwB7CMUW7RT4bIHshbIOEI8P5VMWSfFxm xu92cHQf0+g7/jDvD5DpDT/fy5fCS7NWoyvhtOGKZPB1OHFTZabzAgnmIdkGGTzlaEFKueCvIt8Z lhH/ABcD4CA59USC/H35/aiKPbF2xE9civlJnoGdTgkOk50B37tVzYSa0cfmIafVZdlH4Tj1gPuJ hZRlfEmT9kkIDPsADHtFsABBBm0m7BAWQTTI8iRTxRJI8cUukjmmhEQj3IIxqEZ5SfJQKosnpCCV opZTIyVgHVGoo7WYkuu4SU4BoY4+Gy4SaAQF6ka7sI8nQwlPzxtXFu3unsOJcLuFy8ANw4W+nrfz DBBb36v54P6zzwmT/wA7UAAO0WwAPPw7jDj5rrMfLGQ4yfSMwbxdDo1XrLi5SspUoOP+h1u+ByKG jgV/4LgzYoavzlG3s3gf5Af/AGDYYdLX63SJAFDd3aNSeV2cteOBu0O73YBKMNoPj5X7IHhw+yfJ AdLEIFV85RmgqzLJyrgjs8Yb+BP7/wBaVs5aF0w85cyhpJqypqBZtwDciQ2GCiGw1zGW6v5LwOGn /VT1f1o8TGblFoE9jNhPP7AAqL/f2qJolWZQ+qk23QK0jmN5IxHDHHIWpss9pmxr0zYye76JllaO As6DLOliOUa0Y/alLgTfPJyFDiupjT2vslckQ+r7TdcFSPlv1j3CreZW5hTZHvVBXtDgHzZ4bI+L cwhZBxSYG2uYfGforzvaRVzw/cBP/Xz/ALL1gfLQMsCe+NDI/gbauB2s1fPEseYW0LUzz4yj3Cq2 Sq3C1HAw1dn56otjCfPHkZveyPGwf2DkHWRGtk0e2olaoK0xC5LbWNkafHc7pvsCwbTTpTY+NGm9 wDWQ+ImIge+NTYPsq0zD08vgwYSx4TV5vj79hx9+xxwmFMwbvOOHsFnT6uyTFhSbYMWr+TTD5V7Y 5NDJYD38x8p/j9qNWnjT/P54MGIauM8J4M+/L5/3590Ikkj1UqvppBDhDWsVs86zuJ4sRUkFjKbc 9fcvbi2+9DRoUK7yLMjsFjft3I+0JIGs1lRtcTXHcb6ku75Dj55XlGLRtqh69ZGuyK9ifW5SJX1o HlseI7qKBhP2d4AMCHBXBvA2fawdXBMcX7gL8AP47+f4hYbVfUCo30SBobBwrW6yNO6hw9KNMOE0 Poi4yyhP4hZC0yJ58PY/z8WtZZSZVCGf6X4m8PfABjhgwH2rW+le7DIDOlUEeJB60p+46nqd2s6v 5aeeKLyG5Mg9DQ7UqtwcCEMHPX60tRPJrLQLWSYPY0kHv78g7+fP4ACQ5alb3c6Pmwsjtf8AqCyX awk92PXAvGFh8UqlqWGwMi3ZCeyJ5CaqtvLYK33fV1cZj/Yz/wD/ABC/ADk242aSG1hkdmEg59c4 fTivyPU5vnjjqsXkgGcrnBEjKg1HIh/kWROcsu0qchhTcNl21XW46Wh1HcCQ5ZJtw1Ap8ZTz6rto gwvljPi9V9cuJCyLIrdPQsXCZBgONtU7MZuUboT+7VcD/YNg8/1aiv8Ag55cVUNXA36qlHZtYY9V qtsV6XchcuUeDsDg4p/zXDAOq7eeNmGYmhq9Z7GbSf09t/4C/n+lupkCAG3EkXKVAu/NS2po/bGv 5bIUV149Lhr4eq1uEYZN4araX3xHZBgxDVhjN/Wxzf8Aj/6fqeClvLXA4eqnJklWEBVf5gPTJhhM K4uW5VzZJBD2d8cFtgT2qAQUnhkZmZDaFl5d7RpN2N/v+ADABvwszyqzYP2O0qh1xwkfApgbPpxU cI/gsTlz02Mq0cYSNC4RQV04ztI/fI57ccclxWjlbdwrlJnKnQ7uU09jPKo4PlLZuzanau5DYhi3 NhlVLMIODIyIcN8sCHvzg3I/OSiuMJ+ESHZHQUHf+0WwbA5suv5DHV9naXz1bxpiGn3ZYV8w7Uj1 lDcj1T10erb8DrTIt8gQ7GBJ5A5W/JihRZ3zzZz9P2A+fwroYB02rkXw8GAu7tlATlOO8O5kdTDJ kqXXKvDX5lwcDQ/raqeYEPkm2PnBmbZAnsAAAAH7A/H5m1LIYNPrYk2/VWSNDu9erez5OcjqbHFi 3erxXzeDCHM+GP4O+L4E3MJ7piSJg3YJV3/f/wBgASR5JGjd5HZIrkhZGwuNCiGJgQ39KSRA98bl leCpGOPY3Iydt/UglFZZI2IYXYrLj4NAfPTC8IeKsgGdZBsa26iiUzEOSMy5kXTnEe3KEQ+Xs62y J63xJfrQHgTrPHtAzI5ve+0R9BAH/wBgQfkOxMwM6ATMqzuExQ7JEkHg9flrUfE3ECe7Pp8N8+Gh r8ydWmCkqzMHko+I3B/N0ef8A+vx/orX09nih+G1+NdryINT/MDIaSY5GLV16xlcPaExOW4b57rd 4AbBng1v6Gh2+MBmzaSjn/P/ALB1JWQ4U3FqdbPZTsMPXSYtGIQPUavr0xNQ69q9Dh/MMGIZiGnz XilnA81J/GeULLMc2NJOH0G3QH35gw6WZdzULK8jSwy3CFSO73MbZjnxjXaK7rPIrlgCBHjRMcc7 dTlHIYzF7GpbvPu47ePOXCraajTLpR74TMrOdu/GTaPskviQpsidUrFV4tkTtn1UTEMwnw508eB2 dGGInGUbuiDN7/v5/j+O/vxhMDNFaB2rSXcjhJqUoksjCYubOIqbIUtGXbQun0/gYcO+GGDtzPq9 8VbJeWZYV/YHj/597AH5B6JLIR7AApieZnh71D/W2xgcA7BLhnoqm0K/84YWw6fD8HP4HYzIzYoe LMTeDQT/ANj6+wb/ANOwpRZ+eQtrvdMN1Kep9AXtUC2HIXG4M8VsTQMMfDcA9VmWRwwaoFwdxoZR ZtCryazsmHgAC/8A9g6vdQSRtOiSYzGeOV1y+nktQAi8emOMEsY0eTfF7DCtrBOxI5MYwBIgPdn3 cu92z/5bo115+lLQMYLb2eKbat2OyIAn5mdX9ZGLQq8tY3dReDp4eFMmJ7IC08Ve2zphMYrlP3zE J9C/YNgP9ejTQh1EFsCmQzHcBLVRV42rrN5INsisodjWgvHnK4B7In1VDcFtvZAQFggTnD+l7MJg 6u2Sq/YAA56fP9IxkL3FlaNb+SkizEgPp/LscWx7BspXrHCr2m17tTw9POMRiwxfGAO1KU+pp+FF 8pKIwwHhj/y4Y1Fv/PcMcK+B09X4uSyjwGNDijYym4QwwdehtEVesaXSaeYWjBeHuDJOPp55qW7M eezdZkwfmweFugNgQf2AZWabblEm3g8qRSgeoa2sikilZIvtyCOMvknFaAJUlIv8iI5N+Luh45r4 6PMcuqxcgblXdDG2QmrZuwl8O7D7CMFALvSJRPIfNmBmSyF8O1PlXvmH+jhQn9JN7Hv/AO/8B6fB i3Fs8h17K/02yiTIw2BcGopgiQz132ahtE1fcNPdVskxDsD23Gy+NozNzwmT96udkf6/4A+/AACl xB6b7VV3Z3V2pA0u2pCJcgmV7X6o+RWhetD4fw6rT6rT/shwEQbbG3Puh9mOJITnAD7Bv/7BAp+j cwGIWEkZph2p+y63CNjwHQ2hT3RDs2UrB18xMQ3wwnuDJvzgpUdyZ5aOMs3m9jfkH2Qdg2AALDcn 3TKioayEhweL21ac+7n7hWJPTHWRIyQaR0jaF+e/TniMVYrHu5s3fAFWQO4LIsxuMNWa052m9k1D u1tRA7VcxBeuBElKb5p9DMKfcHJOH+CqW0G0GYRmZ7q/9fyiD7u+f3/6DI1/pDbKRF8SUnapbatV wZLNDw0NPEoZQoWAi6fI8k+yTN5VJ5A9jM+h8ZZvuxs5/T4B+AAD/UdM1EOCRYEyvmjJN3+G+SkV vZ8xfYUNDiu6vXKGPDrkOYn/AAHA4esEC1TNzVyjNvnv/wCfH8D/AE7BdoIBRHSa5KLdXAdS1Pkp bANcTAkxXP8AEzTdoMjAyWRW5gRyDYwOoD4OBSzFfUY84HAiSk+2/wD7/wCfBJ2jMSrA8MT7VyM8 SwJndetK8W5WJulFDyBY6jRxysZhMjojsiiS4n7cbyS5MfIoWfHnpb1Bp0sQU4XxmlAJsaxmKmLW uNmF0dkpuuWGualUOeQ3BkQjA9bnqR88jiBgzEqMGWpaHNQew4sHtgwMHTCHsAfKX3DgVGslVcPb anuBbuaOJfFfRG2RZVPp9VmIlqKD4oTDlL3hZcH3rMo+cGOBEk2DQPfnwA8/vz8q0dodE2QePaab ashPvh2bRJjJuaOvPdXoctEaE9guBw0xQ0N8IMliwP4eGpb2xCaOTWpjdqSD+ggD/Uk6Za3YIfTr UC4k204ZpJsiB3DlAkOm1ykIdymKvmLd2UnT8zupsI+2qBMdsxdNjKgtThPB/wBgP/sD8+WOV9Sw ek00rmVZdLJNFIXMMEUv1Bl08e/HJtRsEXHHuBbkEhE6QwSCEoJo4UhZp33I13tUQJNO+KXIu+SW rtxA53Ow1Q09Mnhx2bpzhLdhZRery1oPmTW/8QbO0UOLPoY+q5mjRjmBkCyOyzeQB4jFhoV7gZUa r9lwYN/P+wDDEBWSszKW225nC2imWTOtsPgWaKfPV/LW2ixnZ8KQyAcOnmA5i0JiqBIHuSDFl8fO MnElJ2PYD3/0C7FfvEOtCAEXpuznZbTYaS7tFqab3iI4dpROqBDDj0OyFtDhvloVXXL5sP0Zl05+ MOcJNgz+Hn9g+g05qevo/YsPm9saBDz0lb5RMcHCzQ8tXbJR6YQfDFwIVkTN4OdwLL2cmjC1dmJ+ EdvoJ/DHtF5+QyK67is6h67pI8HeiPdHk2FXx3NYJ9tV1UxVTSLSRViAckbPD2yUMsaAPbxx1uMI 8fKSzBTNvhJrcCBjahEcO1GJb5+Qruput1+YHrd8hmeH/AsA8qsnY1oF2YMB4mzZwAA9+fH9/Pm2 ZW6Hdy+TcsU+nMmzA63xe7O8HewXY1TuQsOwTKfodbcIa/alc6h8LpBp7yzofJhiO7G/dfAYvyC/ AN/PuYHwPKj21ArllSU/DVFW6mjWp8enIct8U3KuTCfcFVPgeq2QgGeDxD50MnyhoeUYHSYT6CAP 26/eAP8AUC2VPJbVutx7QBsipXLjZa6FUP8AL2Jod6lF2QQhob4Y/MD5OstPQ525vPKGW3+E9rt/ 7RAF8+/bAfMzJlG0ARHjdSrhfUeQ1hHIwbuz7grUMCCMWyNQKyq0Mwt0rj/CSL80bv8A28fNjpPr avHlL6qkZU1kT7LMKS8r2EBthTcL5KCbHlLfJEPTGnzOXw7G4+2qpis2amr4wswGE9njYAH7AA3+ 4Ec5p6PL5JXn17bSq7uDbLYJjU0JFqIbRplQyj4wVW4ODJvA9PeMbQqaxuM2Y+FGZm83vmwb+A/r 7qosN8dHdTJWDdOEa1EOzWSsmiyCW71XFPXIUPTE8O+Pkx8XHC4EgDgeBp5P2KDBiOECWjaiCA2A A/AAHVhMu2FOximdZdQTW1PDblZt8B2S2GH+JaLYRSxnz+G9wDzE+1CH5aYJ+mTtAsvmDy8nOE3Z pzfgB8AAPnwD8fUsdujBqSK8ImSJ42yxvcR0MZrAY7UcPk5Z9uNRsPVs4bmCll4kEYsOiP8Abnal jR9o4NdB5BfmpDAebT2c7OE6q9pRhrtIE4PkUSri4bgHfDFwUnM+HXJ+e+I8zckPjOGOyBEfE+g8 +fgAB+63GDAuvo8Olii3GajND1u7yGrOYNmlHhN8C8LP42+WS4Ibg+HLLX54N8GcDtEYznAng+An 19B4C/P3SHTyEh3uBP0t9zlJksxwC8HPGKvbO6IF3GAKfIdyDFDXxDIVvQJ4eBVRH5QV7MeKr7XO 2we3P+fW70/q7uxL4vn6frBD38ePB63XlepbOtjeJUXTg+HsbQZNQlbskyk7gwOHk++ONrNZq9yP LzvYQIcwfrd2AAg+fcsjR8CV8zWcakRyR1WO4tP7ucefIY/6UImDFCyMiuyJNG2ccmOAJU0vixY5 q/PSyHMhYquJzBB01EbSOtCeusz24D7yzMmaQdDg/LnzsxnBM6S4GlhulC80OSYhObnBBcwhPzGV XB+lTPgzBjOotvs+0KKIxa9s6qXGx2oYLh4YMCtY9aU/6stcjY5olLHHgdotS05lykZPFg80YXnK a7AGp0lVSQPpZwSgOfG3OlhYKHo61vHMeg0rofZyj4rkpoU1CwbroNyY8mlJokcmjwauhdfBr4HR 6YBlW0oBlMYFJrdos5t0yo8yyOEOB5904YtHvMWzFkB74ILdjPlP0PYzIsrKu0dzHirggRHPvwA/ sCCg0H1vR6rqNSHveVatwVdMV3Y3Ere1LCaEi1K5tpIcnNwYDFVzKfqtDq+ZBunznJ7fpto09LII IESQZ9Bfj4DgNRey2F35mZTANFuWm9StQDXsdTrfOQ7QbLgrA9sKaHcIdkWQ+Pkxwh78wAWowjM1 oFGbfDdXJKOAqLYUFCAHwHXYLzL8nwzCvPzgg1DmBGG6BrUwNhi0LkSBYqanp/G63tQwn8qbV9ta WQWs3JpzRibwb5sj93foPPj+J+kkmVAkUU2n7I5YhLHhHDIe1NhCT2RRqkeGQ9obLuoPkljdizum oLuzyBHrzjiDwaqmAPzya452zyAuLhkLjIdHPdOEiJaSt2aIU2/Cm5UpNmfDfLrpSY3p+OB6r0NV TyZN9KM2Ly6pLsDP+yEA/r7qfvBbuQ9YifKaKNCUDm5ykp1u1EiERaAtCQLtqk1+H23cA6Gvb4pO E9HXGZ5aKvFrJ027UmcPnz4ABv4EAATNyxNQFStkJcdz2quZaA2Spo/Gw6PMAxZYFymEGUwt8PD7 y8KQ8CDhlGZDKcZ//wAB9+8+bWpXavFs25rQAnpNbmUka75GdRo/TgtxSgipdnYHAx4eGnreDa3g Tjh2zV2gZb5zhITYH23ePoPgOjvUTx4zQpGskItV5vcx8hgY2wCg98beSRjzkCYqC8Tv2YiSOQ26 ycBkZa7MaFGznfhce7sh2BI1N3oM053TkoFelA6kptE0CnxIasUsKLV8weyQ3AOtmPmVyh2BPVoY zlDRyZIdtkBn/wD4A+YL7IptFfgZ5SwlIQ0OFosMdDvggW2toKplXrfAplPvtJhyHwQDgesbc+Lt CM8nDfa7gR8/UWwH9g6cFiU+yvkd81aRe5DhqMsitlMhnOGg+Y+OVcpCHaEMetw0/UJcIdgMI6Gn gKrhcZF05UCMctGrkl4AH8H4+AP7/gh6novTflaT2Se5NVXJJ6G23HU8MP2ncXKVbGwra+4GDNVW pMHQu0vaRHD8ZaBZMnanuExxAP2we4AB0lHiiSMaOZItO7rDGrQ7tTngxgmSPxxbeDY7RRtrxTtL K2ph3pnQ6xhuzRbenbGstp1uQURJGbw4piGJ6hhY9byrYhxQ2cpahIAd/wDDoVgO74MisKvUrgPh w1uyFtPcIYP9Jy3tnF7MRnjujSe//QefbCfARDpJfFzVIeXNRle+ZZLQs5wJDa3LYyk2vAMWGwTD PauH5lq7fIfwyYwosecN8JOf5IOwdNSZX+n9SILeVZa42zDIFS+QSs6PbBg8L1CYJsNhfE98MfMs CWqoaeenB0YYU3MY8JITDf8AYP8AMB1XsfVdPrF8ccsvJN2QhzLsiSVuwh8tkVnKXXL5NX5jgyVs t3ZV62jgXCBB3NGKDGZGB75sfgNg38B7MESlp2EnvhZygjmKQ7ePrIkSS+zPlWKZk8MMT0u2dII0 XshmjxG5EKyIv+R47vAe2+fNWLYQNgq+1a/au1TUcG18ytrDH065y+p2RujvxdkT4eCeh2qHXw6r hYFDgzFZMzRzjZNk4Rz4AfAbBiB6shV5yOkPr5WmUeSRtwXxqHofUhSV5L5aq1faTwsO4BzEzjd2 OBid9tVcFni4uzNjxN8439+9n7FB7vCqO2LF8Wxp1Tav0x1LyRPk2xU5IkwNlb/F1jOWD4QmVvDM Bw5APXClcCGD5MslLQRmbmu9nT4BBfgCDsB/pP61FO1FdofM0zxLOF1ibKsBin46QnlE1Tq+KZcN 4T/5wgY/n4FjTBn1fk3hAhx+AHz4DYPP5dQkWsnh0L6fcTT7OsemGmkE6SxS6aDa+piE4l2po9Um Z24nMD4TSSRw6tM30kE2ojmhDy5aRoSYmLwNW9Mrywy+mtJgQi7hZrK4jqyENPvC6SoIWBzn9VV7 sd2xwQ1sh2HTa5sJ8KLdX2o9h4a24L6f/wCn89OT2YYUQxayDCYm/v3t59+x6qKv1fYm1jcoXXvJ dI2cEU3C2obxEsgW5RBZ58HzA5hbMGGB82Gr21H+zbojM2+e7wfAc/8A2DqBru/Zb4YPHotwLdkS qxCL1H5x54SFuxnLs123YXBbW63mbgt7CvgXhkJjBfuT83+wfv2/89JLA1UA5MyHVVeobs4WUqku 4CeBaPYXV9hAShget42Rw9DH1u8YEG2DubMri7MrL6TsX9gQfAdOibuc1jeKqSdU8aot4CV/7zUn JykxTdoUnZ0kmEKot9lLZlbbeRZHxLmGOKGC42xAEZY7VEBmzNZvimGZENj+ZqimGRsnThZGcXeC xjS+Vu6kSgcenshik3zcFu1fAtQcmsi7PWBfZOk6uB7/AL9ifft/6shV8gxYJWyAzG4LeckAkB3e A95D5dbuXHj2zr/A6ffLIT2DfOYNuzvLPyhZ2PujqHR37tFsG/sHIN0fPOHnRPpu37+JIcWyQjAw JK2Qicoxqh8saZXxeHT8Rwl18HrmtdJ9tNT3gzNAtaJnOEhEb6CAAHz6/wBBMNkpd3sQwLSK3reZ ap9kiNFhTK/l88pGsgKuhp7IGfA74HT4dqQK/bZwazGZ8V3nfAlXJRz8RAT4AAg9RttWDBo1ljjR Jt2GIVR7DLtLHs33YhhNmQR24nIUVqLCFNl5IGgCUh3BEkojN3ee8AG4xKZUc6WBOOjwpI57FccL jmWWeSeL2on2QW3WK7i7kZB8Nx4fM2/CCBHviOtrBPi6yM5s7Ygz4Du6f38+AwmJi2KbdhFpFkak JjGtkiw9PT1dImVfdzvaB763g4MnJCHzm0e2g2TDaxazZmxmzbwA3/z6D59y2pDW4EdEsUoYqXTe hut1u9XpKq03xjYz3Q2AKaRWpiffFcOJD4CnWEBqrdnWVi42YmcC4b4AQWAAgAGBAfkKoAexCB5T D/4QdbxUs5bUyEyt9qZGgXU55XTyHzLU09/cOVNpCpYK2Mt/a9zB747c+QkE/sDAfQcdcTGJJTEd OXMz7uqkcYRgY4q617JLbJL7yo7lx6U+bOGljd0H086bXfIYzMkUpEdi9rdRicuSQOPPTszK7uy7 myk3KBcy3xKgUktIsk8Y2cDY1hSmh9H1uhuBhwhWDMVZ+oCe8snBkO0CexpKTaIPYH4+AAbByDJg +s4D5aiuBQ3ZVtBDN1OQh0/Itik/5s6LDV/DcHCZMcLA5xyACDtTc6a4MinDbsE59/1AH+pi0HCG UvQPYKunXZc1VU/GiMAEO8NlVtFcFqvF2QQT3DGx3CZy+4qHq+6UdPZv9TMUc39459wH32DpA5ty La5qYybQVxo3O4RJd2BVA0/Z0w8eXot3WQwJ8yq2SyIhGZakBPgTmTk3eUZ3Uq60auOcBP7Bz7f+ lqqxKgREwRA6iNbd9+WSUhZLG/t2FJwjxsGjnS07bhNjvkrJ/N4kVxx+T89RsdbS7fmQ3yvafsiY eAyWwwyMkiwltNAlYqu+EIb5gHhzE+H7788THlmFq7Nsft/sEAAP/QerErUz8brlI5tBILIYcVJT R6xv6v8AUJgmnlIohmG+4BDIxrbe/wCEEDZ9tKq1ijlEPH3SQgVIYEHkD8e56gL6UeOYJFf0yuAX e/QFX21aImwJuSPE8yQ3dDV1sfMT4a2tvhAPcUCv59jPiyM5RubxVxurXhB++nz9RP3R4UrN0tUg eisecyae7GshSbF8kSML0yuQIjUZFtQe+Mgfklbr7I1ASAHAOMZygtGWd7SXbDf37DAB+wgjqFIS J0TNirtLnv8AC27rtrt58b2mt/EfqnrQdwV3IPtbCPHGRayA7j3x2NuT7cj2m+jYWLvTNzEO2srJ fxpQOgSueTB6QnlFdTfMBBCYnmA7iHIB657f1NYzhwZ8V3kZ+pvYKif/AKDsHXG0FKTd9hFlLDsi ma0renLCshkPNDvCtraTzQY7qIbhpLZdJY/+wzpjMyq9X2+zAwZs2Dx7uoPgD+/pkwQa60MaaYGt yn38xS2TJs1gJODRZtwWN8TdHwen91E/jbBW/LWHnAdZWUPDjGGyd8Me/m/8+AcBYVZpfo+ZMsGg oeoen65zrsxkLaq8Kb5KaF485QyHw637qIdXmKdAsH8mjXk+C3nY3Y2k2oeAH+fHwGwHyZ5O8kY5 Y+jjE+5Vf1HhliGPxtM95d9UtrRY7J87Ts+7/wAvZx4x+d3PzkMAl92XbgOHqkumt7+1Sbwk2Qk1 iSrIheT4X+HXKtZr24sp8xiyOCehkZk7cALxtZN8aOTI4RJ8A/IP4iP4sHS3h2QHMr8NIF7I7baE rKQYJELNRAMVIodyQ/hzLUMahGRg4rAHgbGDjEYor3lWWybI8bA/H8H7YD5/qs24bO0roKlC0xen UMCF6jJdULWrZKuGu04tTrRZKcwubyyPywYxT9jHerED663ILA30jMPU7Ivr9fpPH8a/QgOGLWIJ epD+A8kLTVR2Q/8Ah9kiVsR6ZcFfh74+VlFfLIX4epDeEOt2Fwarpo+BeEPkwsXtmHCQm/279+wX 0BB6izTCWUNAgRpk2GR5RlBJe2XWV5rkUKcnUruWAQMR0mRIyyJE2TxbTTLVd6n33ZrdN8c4BPLX w5stLKWWtjW1jT9/zWRtYR5Kwo8RDcqvlq6uhr9bh9SCGZQ+H9y098v7c2Z8rCoEbAHsmwIP9AgP Y/S0PIFrZhqbVewm2nzwG2ncen8fEmBfHnI8+jzC2YmTEO8GSDPHnjhgmzFBbMsg7RwCHP7+A+/A G0vmXiuVMDaGnNw7nWWNN0j/AIKSPiCEMovFHyn+NzDAdxrdxDNTbeE+4kNGJ4q7MT/KJv8AEWwb 9z5Bfd3eSo7GqcOLumsfmOWSNXt45QWfGhDXnwWh8DmcwmB1/GxgLee1FuHd9oV+c8JdjSOfoM+f 2DYD4BaMQsgYu6F9uJ0js4REUrLlwRnxzzdfHTpRHJLEVk2nVAjptRUKqiTEkN3be4NVcEWbCWjL RzyvT9rV8ypIJchklOt4ZhPXpjk5LzkLfONuEzUIhw9n4kv1pOMM/PLkZll43vYvaoth2BBPn2oc uBgTe7VSgaZSXaKk0mw/4yTYDCYFyohSkWRg0xzHFD1CJ+KeqtqgB2fEXtbyMB0mb7VgAGID8uoJ /qHBp7YGmVLbVXodSw1y8iTvHsijNN7C+xRdZWhV80hW4cwYmLdf2ojga/Q4IfcxdDjGc4b3zgP/ AMAfVUS3KAR5aUm2UnKLtYWckREewQFb4mJL3pQsfmC/VZd8riuJY6JXNlJ9l1YhjGVX06WWynaT SHbYAFuYAQB8/UQAo4qMYkdJKtUwkie3bEqjCOR6yINE1WJoNzVzSRtaOBBlMCTUstxvRkeo4m/i KrQJGe5wRibBFcxmHks9PXKTjJ5RV5DX6TnODDMfGhhKxUMgGfIYhbML4dVbWCeDmcZK7ngDq7e0 fgIA+/HwHT4HMGnu0GhDqWBcxujRcO7OP1vYNsFk98TaR0llFsgt8kh2pC3ifUt4AdW/cx5Q9s2O rkk2c4C/W7sDAA2B/WoyQzNXzL4KIdFanLBuaNMvhVtOj2EP8XSIU4HwNDp98pOG4GK5rOwJ9jYD Hko0C7MOA+6OL9ihe/gN/rHdAtgV2yqyaGHW0mwbgNqafRuS3ryeUtB3cj34rcOSMi2wLaq21/dL UyorOL+jBAgRJBgH6ouAvwDwClmimktDqC8e7Mszx715GMlN3JNwdo5xXGxwb4ZhLplWU7MkI2YZ UbukHBCs4/pX3UO7OiARXdPEZlIWW+Hmh8mYUDd1MqTYQA6rq/tjtyetdNV4ZBbDsjgnrZDnH8UF tHJvY1Dq9ZGf6WvB8Agr4AAA3/o8bDFmV6PrGxophAcHxP0uqZjJDh8VtoTZZ+unBg09h6rvitw9 gVs1AbgA1zZHu0PjMzHO6JvYAAAB5/gOCqtRXsRyZGqwWOq4qRlBwhaNnHzFm97pSmLrl87PzA7I HfLgW7Usuv221JmLML2wmc+7vHIOQYoL8f6CnWRMUo4evmima37qw+Q2AHPV+WfMTzCruRiv9N+N bw63ML9cUD/9vDs5P6yyvGLsceEFBAffvAdGY2EkY1KpqEjhOnqVMJH07Y3G00DQyuaUczNNjdxi PJ81bzLkYht5PHJiD2LJFlgyJQxrNrFm+ORXMvZdW5NqHhzW/ouh2EwyFFOwzhGpsVYkCxljKmrY 45iiw513LZR5ZUyuZRiVXqqyeh1f1IhBV/VlIh8KnRQtfJOdKd/tS9mEmKDJeQ+IQit10VWWfAHp FsE2UwXVMM7LLsFlMcgO3Fj9gzJ0vOiFMo4UikUgQPBVblgFkYhDl8bnVxpqCiFB/aMKFVwhigKx xLSYxouZpEFKOfH+/VvJuOznXQAuxY83ySCfDD9/H5/PVjdPuq+0NOtlqt5Lk1Bs1omDdR0dqrh3 bbIOjIauKiYGWTG4IkKn/wCfHahwjIy2ZWHpRxmPpxwB4+kFhjhyBft6fBvGkys1hKrm39KUc+rN Zq+LHTnRYsKVQ9siD2AfHglWF1suQDeqy0CmDkSy8MaaWvU8Ou9emoQC9UB3H/mAsMRpvmZc9x00 rmpbcj1SgYxav2UPivQ65fKnirH54rdwQw5jjZv+F+tN4GDOUEyYP8Jo79/QNB1F4DjouRZFyj9Q Z6et23ajR3ILY21MIr3KJW6afVu0HCyLItR8/JFc1on74yM1Z/iAnzY2knF8+AAc/P8ATWMUchjE sweN9KzgLtXu7uJbufckOJzk7cu3tHQAMyQlsBn9RWD51sbAN9q1luAj8V83wVR8w4h0fpLY4qfW 54zYXxB6TeVX3ytPljFmgCydyN4ZEIx9qA3hS2IcnWb4UebMBhOEvHaI+fYH5+6D7oIODHHW7G1f DSQ233y2ki0Id8D69lngNZC3xwX1tlfHBPZHCZah6n3yj/8AS8XUAwHaIM3VYBCf8D4DHz+jTYJs udZhLO0y6cFFZzSSDYDOnUEkMSEKsb+HVgRH+qbep74d27x3MI1PDu0XZeFxvO+e+IRfr9AX39Cx PbC28vLpd3Q1Vinkq3agOTV1saX69VZFT9ka6bE0AtuEyt3wOn4L6G1IdoUs8TBlmPloec3t24Dy DsGf2DYACyRNEs7OHCGNYgsVxokssqxxadJ54nkTexmWUHCoypObAM24pEmKB3QTHGVlzjeooIz9 U2QutoGPjjJx9tnSYR7crShw+n2oHWTeWgBwf4hEC4VupzKb+WLivhBwshwTzCeQW8KlvD/cyv3y Znje0gGg8BQUHpD6fwZjuYyLlDgbae2ivQgm6Ji5Gr3hsoTEPMZCyO6kNk7gGMW0eP5ITwfLQWeD hLsSdgAAP7Bv6wV7YOaeKnsmpZWTW946eDo0S8WEH/KgG2hJSuUPgdbh7s+ZszUBcFJq2x54vWe+ BN7BgAB+3dg3/n1hbUfNUGaDGvnNquWzOHyx7tZAewg6bXImkdnHw3DSuHMU+wefHnoMMYTFq5N5 Bdr3Y4/bB+r91NN9TImqL6WNNMrvlMh9Cfbx9V5cfSkezlDjJtED1JM+0JhEuy6zXMmAdcP4ZJfc l5d+OA57S1+B8rG+Qa3b8dPnodPqWktDJVIp2QefGAs4NEVslFKrYLIquyA7KnkMLUgOF8TmQXwN WZ/728f/AJun37YHB3PcL4X8nNsat0ADPMSYgdJhh2wxEfBMp8W6/cOHww4ccyTj+m+eqp40ZV6u TJvHCeD+ffgHgOkbX9sW4LpujaM0+1WbT0fUU2u5DWMNqcsntFc7WBp/tuHY6TZC7B3UUkD+HJ83 O5Pcn4QJv78g8f2A/wBM3NIw1xPIwAN/aXc8DXFb0lPyNwlCMT1e78yMH0KrOR4RLFtkdPsax2dm s9YxKYGjaUDQH19PgMcV/DoIGdYoY4E1MSR7kMM0s0ru+zM0TSSPO0skjvgrMzS8WBX3G5QrySSh oS7JE77AxTuyAASzhVHmzl+BXQI+HNP9qkaS7QUO7MgbJCae3i7MmQkQwJ5sKAZhDkkMO+PjAt7C wgf6ZVxiyT2T22CokA+g8B6vI0K6/msB6/Qsz+F4Dnch23J1IdqinIWhomV+hmQ9bre/uE4Cnnnh k3N8KLOPCQhz8vHj7BsD8gdUVV2VfsKZDXD0NAzrBG3ZLtBqquRzw9yFXizG9P43DmQ+N8D4Gjwx gxXFszMDCG/9/L59+935+7B7YYzXBVdzK3Gds2GtxFcatsFsGKlOibGisjAYmQw9kTN4gnvo8xm4 HV7MT4Ukm/38AfP+AwLTQyymHPUOUjhbKT+0huR3HjRkOSZZ35NY4nzlwyaaNmlIgSN9RuYx6U/T xjIrZqpOV4rxZJ8dTDxQ9UV8vra5S6TetkXmAq2zVfVQNr8StgZSRcguHX5in4aHMhp5g421+eeH 0YTfFcY8nObJPaI/sB9+4Ev9PLU5MqvvQ1LoG5kFkVzAy7le+NSFPrxcDKKyykwe4rfeB8TyDI8W X9qp4YMFq6ws+aq7fz59+AH37pDrFLg8b7VWipRq3X1qVW2qZ/AxkNjIB1QFjr5yCIuPnJJm8I/b 6AEEMyyVaBgz6Sk7AAxQT+IDgPR7X9R1/p9rOwjVfOA18sF27xvGfXuoGJakr4loWNMIJ5in6r2e r0P84T50KsydoC/a1AjtjwE+gfiJ+fj4AjNu6qSRZkZFQ5Nec6zz00kE/jmGNdPKkn9TfcYJtXIs t/do4nV1zcSNGFx07IhARoDZ8yGeNxXaYkbnLFeKGwSIBiZAUqxQGp3yYsOtzGdg2Q7QTK9qXUZV a/DpNDDsrIwODW28DajBNGQ2gYT3vHYuA7/j/kANcu2LYsZgZMMqoKBr1ysJkl1+yTa/rIwLlWbY 0Wk19bcNN624Pi/sYFPnqqGs2YLKDBm91cbeAB9BAHz/AIBgEDBSPPQq9umparrcuB5t2PzhrAvX Yhn+/AGa4Q7IMOBh8YJljbe2o8xZvJoq+s3nhCSb+gn/AGPoL8f63WBIcGO2GrN1DmIySxmFsTgq hw9Th4tYWFKsaYwB1vuQyp7g4YkCFlhA6yTV7QswZ3R2Tf8A79wFBAP3S3CLgkmZ30V4ESWUbv8A zC+mgdJZo4skDSKH2sxajcFihoNi9OsyxSJXts2rXfN0eKHzzz1pQyCW0VncFXi9K9OHq5MWjp7M 3CejsRhpu5eTZTgnskyZT7JcFf1ZXJC0DyqhE1lXKPLzsnucAAPv2G/7/MXJyzTclZ0BtqsbYQuE Ns2p6Oh2eWuCkbaU/i2Qnvi3cHAw4+t3h8Xz1O3AsrO1s2x7HaX6oPn/AN/W2+WQBB8RnuFxpKRW 40QvmD5D5hQ8JAxWRwhVWYhQzHJHiewAZ3J0bi/gzeO+ef8AAb+f6MTC2ya3LQMVJKDv92X7c3cK 0bCsIeWW00ow7CtfMQ3BwcK3YJlOnh9LeM7X8GZtl4ThwHf0E+fPgOjcvuBHV44V8F5d3DLGyBgg 54vkWQP2egZrWR43y1LY1kLjf85pYyIul7h5I589LyoNbeqdJrC5NHFI0mOo0PcmNJV+0uxiLiTw s1oB7hMfbIm2Pdbitza2Halq4h4DCaEU5zVwMLz1gqI8AxP4YnrpumWy2C0GEiwWSSen6UUm+dQF /LdPu61FKab020C5AxagdPfU9g7Vnk+AEMDCauhrKzvZtJ39B/r4/v8A1Uu/JGoy1CCrZb4GGgWi vglTx87UUj/MQxdhAk5b+JW6G+TENxW1WB8Cq+dcnF4DN7B7Hv8AsAD260z5FF5XD56kkuteq/bZ IV1UDW7Y4npS9qMQ2T5kzUhdlwfzhzAhZZwxWZNo4yjfdkjYAADfv38+tFSNY5EO3uWzs/dnJ2Fn mm4q8hguBqmNnpsTb7OsvKLMsG2aSQIDcQdQO3bkVHFk5hSvbWXTgqO2I9crcOKBJKKeUrxSpyON rGyYjhzKvbalLezzE/TfMtRhcHgDo/8AndzSZPc3nsl/X3gEHwCD1MWQHjlBeSru7Ut39AfBruYr 12Hy+eWgjgVdkX1vjafMMkMLGn7DOcSfi3lmR7Rxw2DtEAt1BAeASV0WBDnqYeuU2nv8FoW34sQh 2cYSEM8Ud7Gpt94fDmae7Th8ENwKPnzpbNyfF5ZfuwRHAb+AX+QY7+bx9Tbo5L7gkBqx035wan9S FmyFugUehluWUiWM0J7hDcFuHT8OwHyuXzTfscPxbQU90qrrseEE/j/sEAg1htyISuac5NeISitc c5ZWfkVj83xHcSqVd8aKkmixEe3DLI9CrwzUVYyJuxdAkp+HdjGj2EBv3UIyf4QGSWq5UJK5ZPuT siLuSk2C+PD0nty3ObR/mCbM+Ifg9kN9ovsADgIDYEPRbRcjvV9faZFfVc2p1QJMZscAL5HXq3uS pWwXY4dgW4bhqcezC+YgqXEoKe87XzkmDCVcko+wAD4DwD90apcywLAX7ajZVD6kANyaewlDODg4 L93UOrgUjRvXKfX5hkxZA7gQXP8A1Iad5sxZZu6CysHLRN/7+P8A9/YGTVbAPYzmrTsjqudqlqpV 1IKbAnmKXtiYmyl3mVb2i+MlqU/T4fjYOyq/n0etvKy+f3s3+/gD/gMcerf6eW1aCH+76mHVaeFV qOLViVIuwWa2N0M3ncsDsqyxFeNFp5ZN2IxTMZO/UQHHFncqfdbEDE4i+WB6pmDv1HDD9RWaZtR2 fEevKuYXi2mpXXlur3J3i2M+L+nsx2rD7etwXxPbZzgzPPF0ZZB/i7z79bvPkEB1blBda5DItKPG RLtmRRVMMamj29qPgzXz0uEV+coTjDe73xUYT8/K1z4QQkysrMvn1C/SFOAzSRsOB3HFBAL59NAj AOBUYetGOpZNnSs6UWT3b5DDiBTdQgH4jAZW5i2thx61O5ghbwsrPa953yrnZJBgLdQT/Pum+jLF qBhdBFNQRKPVaadQUifXt5GRDi0HnfT6Bb8FDTe4S6Uqwc4YUvPUq4iMxNDWMFlIBmziPivv/H8X 0DhgeoVsXMauezUMZtuJtssIQDp4nSaWeQYm5IlTZsZhtxcV6ftcPmUptGlkyRp6Mok9SVZYoljf CmjlYBvKt2MDXy6L8zJ4fU7KgEiVkHnZkYa/tSvbAUzEuU7ngN8MGEPWAhocNgp85AcIHG+DK6uT Wt7SaueP+/n35gPz1BrUNjhp+odNSacJIYhkr1H1FJ7O2OAF8LRQNbjrUZGRkrdkr6Y1VLV98bOU JvlXVozHPNnPoPgN/Pn38jvlN2MLPoZS4Dbtq0D3JLDuGTcEszKV9Qp5otS8LIT5gfeF9wnf+oek JizwOrxnauru6JzYF9B8+/dAbQrw1LUoYTW1PJAZUNtrKv1Ua0S63PSpco9WxCJNhuEPj63ghuEB VmDCgsWs2YD8ID8//kAfsIrKrTTOe85zMf8AFRXt/VWebPnxx1A7SOqEIUOzBErpntRrlQBtcvPP C/H46FSFqXZPrPOSM0CbfK1DkogdJSa/pyZV4HT3KsaYAtSyO1a24D0NVPD3w4+cZpxXJ2Zzbwf/ AIFsHU8t5bRAYIZ60ANpTFymUm+a3mpNPqYfvcvSrkrcehh0NkuCyCHautKPPHHDjNNlPvDsD4Py ABUSD3dP+/ZltlPqRzHUZXw2T/ObsrmFrURWW11M7q6uZIIdkB4YeYwbG22BsdVrNmbWTKA3bzmH n9gxx2DsdZCnfCG+Cs0C7Eh42LUxh2VR8uWeTSwAXahAw+J7jDDuC3BgL8DGYs9m1fjJw3gbB/fj 6Dz4B0KhQyMomil+dQDt6hvaQzSd2cnJDviMuO0dX7M2llSRxjlG5E2BuxTWlZ1yaN0PFc/B63aF jKdemZ6ToVqWpVrATpHqUPV4kP8AKti0K52+yO9lkVsnuEz4GwfMrS8mnc2bZAmxgEH/ACYN/wAY 4eHrNXMae6Cv0abGpr4/qdoMd5WwpvmIynAPMOSQw6GH29kd5458p1PJoxQWLJo/CTd4VCfAfQQH UbDbcVwYBzVJDSd0AxpZA8YcC1kSuWafTxhPLh1uGHhp/FYCeB+Y87WLJk/u2+IOwf38/wBNqzFN 4codez812JWcxu0aXX8OZIlh022q9q9DW098quGYmVuvmGo8ngWrc3lXKcZ5sbCbA/8Ad33QX8Af jNPDJErFF0yRSMZS9auJ4ojFEVOJ+ojb6hjNHcX8aAscrUwsc2YvbmXBWY+yeNwM0d+NmsRRxlys 8DHnfX0O2L3um5zzHMUrmioYRheNQlnK8QxUrQ702muHbcPqoMUOnkEOxu+F007xmzHwWsPIT/Sv wADA/sHQQHzKzssXcEqtMk2BrRwJWEHzrODqbIrlPlVKyr+8UPdkx8T5jVUie2waG/iFKNBNZOJJ u7LU7RH7dPn6D3/oPqej3yLbB5Sl5xK2jyS23GQZHyt15k55XospDH7P/Jw2CGc89AWxjNugsYcC b0DP7BhsD959kD4bbXMyY5VVeVtJ+aepxhMWFk2RDDuYCZcj5ZA++Phsi2yODG8W2n3T2TWcbQ1G I3Bzf+4H5f8A8qi6jlo1jZncZIEAds/4yOfC1efI54+ehja8/TztDG3djhISua+DeHHPF3fFUQSt VbJtcBOanPWfp5pg56mhri56XbT85Z7tn4Zh6cV9bpNzpmmpkgZo+xpJSQ+hPWuZgtf2dihYQxub JwmGS+daazTbTsGukoecueqK/l1sCykOKuXox59Bz4AbOly38CNrJXzlrONHqUWwr3BT60aD3phZ mzLnrVlkOBQFZPBjs63jSxULKE0LMn9n7khPHvf6pc25FtiLPNDrH9RIOMIeOP8AiQPFDxtfv/x+ 6I2Sm4cCm7UuSjPjdqnDVpZqPW4FgYZloVLETVdPIOFbsjJcENwfAZ7iU4M8rHjFnm/+/j4DYD/d 3rjp/Vo8AV9wlVU4Eraba9Umyt3B8V1NPFLH8FtoB6f4HMW2RPq/GcBsACbWidZq5RmGPGyGznPj +wAN/QT/AGIalV8VstRSqDONhyiSDLMFeslkL0yr3yWrtHb/AJ4YfDCevmFVS4HVaezDBTQsozwE dTaOAqK3V/B+fgFRL+5LYENXywwuzKrSaBK3NW8tHyjzR3IKNEs9p9fE+q3wwhrX2Q4B1IQGpkwe Xyhyay8UmEq33+/fiLrnavSx6vRrFKJp0imik1Kx8R6qNbKwzpz2bgSZe41PDG9HCjrj1DxSvJF6 c0kMkKTDmSDcwBkiNCpBiCrfH/fpe2BbDQ+NCG+T6lGpOVTLb2nmEqnicDV2FNlbeYcK31CODHcE OdbVP21iyf8AqgFE2b7sbwYPAIPsffj+6vLEIXcLtmAxu2/Hsl/LVwkw6PiGMe7D4Mhp8xbqvZ/D zkPgcEwsrCG0LJMGk/RwADn2B/z/AE4KrF3gkVZDM3mYCZ1BanDZa6EMxV8uHUoGzSjQ4D4eMznk z+eUuBwLUt9GKK/sjhNk8A/IL8g/YOoxgIA1ePXtjIeyE3ya7cwJTE9SDgUOwhb4n4MjJM44HImA ajb4FqMExe1k1kHV+yAwB/EB/kf6ILcSiMI+oEJqSJ845NkjtjOK5O2fYlc0eeOaAxdpZw7abeXe BTCQb3KbaZNuVttn3JVr+evtqaalNIaIcBCPNtzZoH4mn8a7SKnZEMXbB4WtsBgxVbIybhNVR9wA XmYzLL4rk98djYRH3/YD4Df+qu5jIhJsOZPihySTF+NEMc2HpCHFfIjQAmEFuZ3UqvcODn6/5wh8 F5QzLIMI7pO//wBA8B8+aq9gOtoVfcAe+Hx/hoTtZHKNNMyRd3yqHiXI5PieYQ7UfGQPADgwDhPa v6oKExm9pBvf/wBgwP8An+2RWYeuVuHlWqyEq97YqV3MAExjEfH0XfO1mGBbZE+HD7fwzk4eeVbI ZifPCbNj+Lu7r8g4gPc/sDjKMVSUp2WyQZ5YxviFaePEfyY9gy4CPyb6DaVHkMIdEO3TOlf3iKWO ZaFnLbiEZPIv6j4w72FYlqNFS2DLSCj5UqGezlIvH1OAVezZkWxhPcaYnslqVXMQzA+1AYFwqU5L /F/aBnRwgTg78AQvoJ8+AxD7ouSGuauObhrmZD6QyG7CMMjVYHPKbq++dPoyG3p7IyOFVrjAtnG3 geExmGXIr1mT72uwR4PH+An/AD4AAW1dqy0mVPVVs1nYCNK1MXmGoxqEaaq4zYTEm1NSVnknM9Of QlVw5502PPejMHwkiyGu0Kz9Jz1hDCTiBNA1vMw9Prw/bpW9PuSvXrHETyUMC+Wgw4mGrUBZtj2g m2FSItlT0/eL4DzHANOgOCGdrd5t9pfFms/ChNg8+wbB4BUTLJbRxumX08McxX02ouGaPxuVYLCx Vryb4OVXWwWSZCd10RqB3KpSaNY4Gmo3fhas7tP7ACpum3yAUA04NM6hHZeR0kw0YbXbS+m3cYYD Fq2Rw9kYDFcz2CAqp4wX9GZtkSbRxAeA8+Aw6jbYOAxd2NVS03nXY+MbU/wx43JkVkYqUDqEpGxq 3YIbgnvidC42DqVw7jF2ZZ9u2e+f38AeX/PgEGST0+OZ0Z1jXwZDf3yUkjojwezg6nW9XxV6U0OM 9PMQ7shrbA+79aGHD+xqG+cmSDYRJqtBfj6CAPgEI+fakxbvy31OyHK0Jlfu1g0bSdI3RDarAiB6 QlacE2pTBC1JgeGHT1/g8BfunuqTWWhX5MDtIJjwHHYH7YD+wFGZI43lkffdppLDLjG1FAMwp3DV 8bcsfzllxiuTCUwIIn9IqGKDcA0kZ70YdtVkKPN3445rGjsAtNzM6BaBgI1JsONLq8PnXR8Mmr0i ecjFXw7gmMiIHX7JvB8wbQcPbEMWs2Yj2iku4M+AP+ft3YOrKg9OesDTzXkOr2KlDVZKWsZbrIxM T6mU+UWNYUWuLIHmE9kmslkWAZn0PYAA7cAzbBbyTBmzfsAQT5+ouP7AfqwRM6w3Z8zq60y2SNtR j0r05a7hScwzp8p+LyKnJfP4Le93At2qnsmD5AIU84vKxhg8Yg3bELx/2Xz9vHwHRJRdqQ21X706 vtVG8ZtY05Q1Xja3jsL5ckq7leuWQddtVoa38O0A7UBsCA1GMHkV3M5yECOwP9PAAMEHojLP2vgj bTqVWstQI15SOA8Y42c2o2ce0Y8gqwqmAd1yoFlEXfHwsqHcilr1AyAqRQjLEHIKgrWYtgwmLdI2 qk1+Gn2RaRZHJzHDgdXypepZXhuEwwnmO5K8tnKH4HBT1lmVqbWWZ4q43qHOb/UR/E+wcB6fGW0X BKB39WlaAVIPlHn9eYAK2nxLJKC7uA/MT0+q6fh1XqE3iEBT4Hwydv1fh94/F2CCA2AAAQPbqSjk FcoprZmLnVtZNg2dHs0xalYmWyt4tiiQJRbcK3WtPdwPkwc+Az3dqd+X1cWjIxzzdVvwD6Dv4B+Q ZhTeNQBm2KxKaeD2pBw1Sra2JRwOdHU5kpolOVc/cHxDcA9qfMBcfrT6ys8XebM9jaT58B4A+g8+ BoxqjmpR0DxSbaajEJIkscryO20bSTbVWfEbNWRJlSvaQxqVdkRo6yVI8R3VV9x/H/c/nqNkMFfp FR0/XL5W9tJNtVLhcVPtUJX+Y5Hl60HxPX+BmFuY4D+8SH/IzBgxoFvOx737/QUHYPPgIDNOalIF qZ2bTb3aIeAyLctfdrIR4kOpQMRNPQyDgtrnGw7At/AXp86GzbW0LKMctE3sewex8/sGIBz23adm PYvkVlWpZD3rCzvitNhuAYTWwquWFOrrFwEwxCeyUkn4bDQBDFlG1o02j+uynMcd/fgOIDFgALdT oNksFlyQM+YEodtyQdhR69PPBYxzJhPSjA9kW4eGzMGxnl9tBmRiML3NmeMTbs8b/wCAP+f6kOl0 2mjG7NqZNx5XDa+YNIMpmlKI+IuOLdEca0NuFIUtiufV6k6mWbKKKCDFIlZIY9uPmOKQEJkcaMmN WbAu+aCrh41euD5mzZw0wLT6uEp621B7YWxYuIhK7IwclcGRDDj/AJ2JA9BsgmT5Rtm9pJt4/Lr8 Aw58f6ZCVWbxUFiJ7G5IalnVLkm7YITbmsCG+AamLCzwdgT94re7FseHrmtB6F72YMV2gYM5s7Gz iCAXwDBv4BfPxrYPMAUcbFrRDW9PZlktGWGPTKvE0/jci9ckVPcEJwMcwZGAP89fnqsMn+G+S8J5 s8HwCCffsAGPUk2MludklV8fCUkxVSrJpwOqjSC9zKKJVuSMAdkZafmrY8wqgeeA3Dk74rrOxpJu k/7B+ngG66DFJYUkvPGEsk0um1C7nhoVifvojuVm/wANEWelaTUM8gkMMcTxxu6E/wAHATITihY4 GJ+O8Ub6XqO6A4CnkxWNPG3YZSTfKK3ANCnfB4DE5Q+DzD5ZFbmE8eng9PCf7Mm5tFXPKycSbs3x BxAb/sADoqKVPX5Q5DXANnJN/I7UD7b/AOCn0jVYt8LCyuoVfmzDFkQ3DGn4KkwPlHrZN5oe+Fl5 Bm9kObA++A+/dJ+s4an8cDm02kuwfVdMsiVHDZVgU6HPUO8FUMw4vmJin3DugYwn4Hq4DrBOz0Nm R8UnHtXivoJ5f2D9eqw9QWXrRXdLWnBI0j5AmtdJGHptiwl+AxJ4sTqCVYbev4XZY9jWnb5+FghL 8EJDaFrEbcH/ADJfqOHfZgYsV70+heXhaTGQFBWNZbUOGnW8QMu9tokjj35UfGPLGBNCVqruyK5S GMBdx3YVlha0KHLHnqUtCt0eVU9VvkCYyXBppSYtIh7mDq6RMq89LQ2hwX7UvihltPsget4vg/g9 V2+TV3xZsw53SN8+3/H9EHn0kwC6Pv23MkXRlhEq9rTmyn2xW5CQtprRw2+Idf1UYcKTT7U7qdlV 8DaiGjI2NyE7yRwgT6CfP93QD90X6jyi+GqLUhEi6e6L01JOq5bhvAdWklpli2Ok1yrsY9Ph6fET /lnrVcUPiicQeRiuh0+LNmbsSnjHgC+/AcAADr7mXYPlWZMsvWRk2RYbvDdq9V7O00vFYp6a+ahA ItbcGSGGuAOHT1tVUgAKdDqD8Dk98Nmwm/gAAAAg7A/HwaSXseOXU2UWPk72n1Mg4jWfT9ni3KHd OIL8G6EfaEjrggTMkAy7ckTsVEkccmL3XZk2IvgYiup3LsjLaIc2pc2yLjT5+kUbcaBT9hPDFSfD RIGmr4cGOq4bJZFV8wgtq+h1y+cZfcBay7hAnugsCDUXAdgfuq1ArUOWWj0+LPIY24MpDbacq/Uj Z1sQ8D2n2Imxe+C3VWL4Y5BMtRDsGf8AM3N80l6eifCau7Vc+Qd/t0/9BY7Tq0F0PWGbQdcVwbrG qhl11Rq3JWbW9T9+GikbuTrIXnGHRCe+uB9bVnysB7UGxeUL2GnMO12OKCwYY4797RzA8IbbZle6 QaHhqLJeenvsM4WRedLO8toVtR7lvDhD5ghoe4J6OBX/AMqLK0UaGYYc/h4ScD6EAAcBPn9/gCRS osmncTFJJImPsMcW2J2ievUCh4y3C0WU83wSF3iMoe4g8ccilauSW9pSb4ywfmvPxzRfFyJafbVP rdfSq+Nh4gck7h1RwaBMwWr0irnnAeYQzFD3YyJ63O4fq0BvhOzBbReSyD2Q3hsC/wABqLf+qozK 0shIh2Qxttem7CbVRbbHBqA1vLQwLkvVyL+n491E8OPZK5Ar4HBkeSf0b8omwhwAf/sG/gLdZliF MpXMymMDaNJ5RhTsJes6Xx7uhFUwCbdjhfFD0+nzHwf86BR4GcyIvPP97Vd5/wAABAHwHSZQ7caI FgMoaxryCVvFhg6ycALiPw7clNR9tFHxwZE+YyWQHT5kGevodjSyfF+TcHSQiTgAqIAAXwHgMZAN RLIsQR5EbLPKX1EyleULC+B2owJSuGLcqTlyAFTyQRZyDMumKxgJuRiMeI3jzXLDnFshdnjjpzGD FqUjHAhmNPoElK1LaeJdkVuStBsDFLGLJpRwp+rN4TzAcfMOAdQDaccEbi6usjP6JRsX3YMH5A4C fRoNPvjT7aGSr5R5kVbaahkSyLgznCnA4EpXp6pbUsEOtuFV7R8JqukhS1cGHlmaNzZuE73v4B+5 8/IL9sCZQx9oJF5w90h1LcyvMJMNgHkntk4Vyh1keKGB/beHW+pBcX3BqQ0+lniGMsxXKLDzgbw8 /j+vn/d5VGl3RFpewrk16krj73NaTYcgPYVbCTDm5O8Vyb+SLa24Pu3hzlLL7bj3fGC6u/ZHb/V7 wCD59ghj25NaqRxhJPp55b1JeOZ5IhGQpaaeVJEEAaVHiircjoyUSrjlLDpy8tudwCJl9SCMGPbR yrPG15NRSRvacgvFm3cQOkb8ZlViEdstqrewg6qYr8SHApq9Ywvh6fDfNnZCH8gvvkEwzE1coMFg zf8AYAC/v/791x7Qy5Riwt5Gksmr+ANivkw2iwoZQ8v7otj3BwT7Uh1tX62jto+Achs5MXthPHwg Q+g8Bxw3/oE1ENrAh2YBlNFhMtkZRhkXrILzGihn1Xi2xbRVPsCZvFVob4voljNvwHiGzDCnjNk7 o1Xif/ER8ABP9BJCyGhNrf5WzySSvabs12QeT2gTDFi/uQchDrdwZFtb842kN95MTKFCbz5tJ3/2 PgD+wdCI2Rknd5i8qK7ESUD+B7ft55+b6tmbZMZCAR1ShKkGRW9yS/UvHt7Ux7vOV9RqvZj5Xzwk T6HanYPAT4zFW9qLaew4y3Li9jJ9fzE9Dp+H/qNZaeeBoS0M3Tc9kSXYGggEI+AqPwB+YYJgOvtW lzXJPquMh5ucNlr7JM8xFPMMTyHMKgMIi2v4HEO0Lagw1mzUNXWVkHVwQ2cPgH8+AAe5/q3V4ab0 djZHZH5st2plU+EXh6HZ2l9smRSjZKPVXX7JwNwp+tx8wH3APckGe3+WJv8A8+Pvz9wDpV1Wh1/q CsgCZi1vGrdIG1uvcw1USCxhXcq9uSuUOwJhgxvENwQ9hp98eFsXRr5ue+BKSOPHaI/wF+8/0wvA 2cwkQ7+O86RYYYEYWM2yvJq5XGvm+FqrR+kRSJWA/AIAPwPwOrKaV9AtJ6iRV12Kul3FfrXM1E2a Fp6IoK9uamQ/qrIZ6QWIP0+m0apsQ+BJSBpCSYA52BTIAsZTARlthEaTyGWC3s+dUMzLap2gTzYi JQz/ABFb1H/SbBlLfWbbQ7ELjZwQLGh+tlEUsWUq8lSwMaDlJ3oKC8kkUlZCzlZLT61tqjGUBOzq 1FKoM1kAAnCrPHNZGvPPJ8H8dUZbJOPn9/8A86O2Uwhu4uyKlZ8mpc5kPah3en7hcbYLmIuqDT2V iw6vWrsTzEMOQcAfH3y8HyzGYpaFZjO6VopKP7n+7v790wtNa/Qd8SGRtuSybas7WvakZhpekhqu pocq0JZ6m08fMrfkjJDIGK5ss/2dhk0Yo0PSyDNJAQGfwfj+/wCwH+q60+ro9llbafAKeNJZsMld 0h2ya/d4ZSxrYaItkWBMfEQPagchDgvloKSPyZmV1d5t9HwtII8AH4Bv58/gAPz2ZWdoOS/RpRDy X/UsBaqBYbgsOyVaJL7jUNbVXw9ohreBhDX0+xgHaVVMbYrtBMZ5vfAB/wA+A+ggAWGUpHDBq5kC PHg23u+JYpTp2X6bUenqdoLIQY6MYJWSqBNNIktTaSA1WcDcxmwKYgrzIlHbeuzJu1suJit09kfA de6bnGwtnqADaNsNBICrFlsoUrJDimCEN8mJ5iEP2OBYAGCHZhavyYn2u2Q5wHYP38AAKbkujTI7 gz90Zd1rjgGh6oZSRYShp30zPYGTVCHFxgVWn3uhXwt4wwZ6BZQJOp+zMabGvGDrjg84H8GDFgwf 0F9CswfaljSK9QxbKMGu7haImwFZkH2FW6GebHIohj04OYQ94sCtziHxKctkxj5V+BM4E1Du2/7B wE/v/uH6d490JFduyaKJDUlcMdvSF5J5Cs1vgdxgZVq88ZE9btRaX3yxuPtpxb2xoaEZGeTYM3v4 ACAPgOA9FBpoocliWGDcueeGCleHVzySS6ggD+LPJF+7PbsY410DzM1ROrzuONx5B2ooURRqu2cY 4owqKuR8E8XQXsjLujNFjXKVMbQLRZCSWX8TBBeDgQOoUCLD2gtmPhh3AeYBqTAeRg61WYto4yd9 7RwAPz9+wANgf0Ok3+8yrhb+lah1Iwh6ewnMDxcewvmMqke0rhhxBluBPWx9WUfZdwHlWtyZNoV9 PIw5hshx9AfQT/H+jDVowWfpzmW0ByiSRXraHku6PM09vCQn6g4tDVffHb+7K3Mck+yI9aWAAOOD NUCHuYw4btFJBvx8+g/v+wVQOMmvhSltWjxocI1M1pcFXae08Dkr8tPps82U2ecGBkp+1HxPrcfj zxgbeN7Y0Pe2I92G0nDj78f/ANvn7llmnQCFYXhblZL3YF0jY7kqyKBIsjUuBSCTbxaxZXoTFCrE MZg6bEKtW3uT+psvamWM4jc4SSTEsMiMhc/fmW0T7MT7kXKTJQ219Ny7AhjWCkTFXIdsOSvZBBkf WSt8Jg8N4/g9kDCbTV7N2rNpGH//AHz9qEcpajJcFb2WH1ULbraF8aS2ExYVwXB/NK4kCrwyMN8o dPT5jA4b8vnkfkyMVaBn5ROWicfn4AfwAH8fYbONFbu7gSTcq2km5sqtyTvZDhZDhyQDSN86gmhw IOEOq0Mw+MGFxdwLL5JWaM0bmzbIknPAbBsAA/v69rJLIQJlMhuzLtfzbDwbMFuvV/8Ao2zXxDQ+ NuFqLbgtkJn5QgVWyLNltAtGWTmO9+58/wA+5B54ZAs0bl0RnwKMzrnlmVANWtY4nizdjkVyyNdi SN1dzuOqxSI23VmmLJTZeVoZD5+TwSTLkDlK/ZA9NwwieuEpKm8GENPbHBXsa2FdNZB5jjcPT2n1 eG36wB4OYUZhbQTZv2TkH/YOA9agaev20cA5qG7GyTJC+W4BzFkNkwXF54UcCDInokO1A4+Z5D2W 6zZvyYMwSQjsD/7C/AH7ojfK3bN0uWy21kf3YNpiksOlbOr28F7tK5Lya5cfhoa4tviGnh0cCwKU FkZeL8GWQnNjewPx9BQcD/gJ4GnlDymeiz4dXWdXyHGiWABZCBaYUsYTXNjQ2AzDmKEMw4MiOhp/ cUPWbNaHaBG3u7KTB/2DYAB8+pVVI21D+nGzl28NszrhQ+3PayPNLmWHC0AYy+ovxtOj5AVJwLpH +y77jTXQ4FdL05R94C1umdV/MAml20batqwk+t8lXLTALkw88Q+YfcGSqx/3yv7aOIf1dDJvJwIa 3w+/YbAv8+xX4GjzDZQ96Ld/TyQQlarhGiEDJ6MprZ75fKFvZ5hhOZJg+GqodgKVH2pxnlDNwf8A v4DwB9f2E/ZA4n0vQTgyJDu4WjbSlUqlLH2FfCOkGBaakPlyLa8yJ8N8Qoa+YVZ7ApHA/JtRn2be 3arjiDbu/wDH0E+A6orqM1GGIoNDyU2wls9aBgKJsgCk1ekWPF7eygNkOExwDmVswP2Oy08fhVay zC/cn5sJagDwHAfY+fNWklD4ineMxs45LyPW0K4q8X+T/wBOi2YoX3gH2krtd8sCcRwcR7q/wjnp 2UmDXwLJT6mGpkbZEpVsiXp3Q5iOw79K1YJspkHwk/khgwPhtYFP4rDJk1f8vgggQ3j/AP0FAwbV mA5hl0ST1fXBaEM87NsS0GrJHsMz5UQpw9hY7Hp+Hxtg4r/P1ynrKzqMKbmd7o84AYbAgn0HYD6T ZGR81BSOWu9p3ZQzRxtTsBqWqnpzdK5LJsVktB8D8krcywGNh4k8Mgzi6vj2OCf1Bv8AwF+Ae/Sx ZIdqGkPTHqHTeSJLHaZJhaE/Jju7gLTRLRV5hwD8wDmAw8M8AR6Hccxmt8pxjfcUlJeNgfj9un9/ PdHhLqJZJw/9GRV0bpEd52CBEmzRpIrpsWidbJbMNS0l2RI2Ss9yu8dkkePPYxDVllTcfb1dcfaD Q+A73ylx2tFwY5gReqe7O6GFkVL290lxRDB9PmLdkD7Irmen2X3I4yr/AJMB2iEdkbnx9+P8+fuv qWPoPKqu8rz1YXNGhHkOioket6lgS2R8PO4t8cOHp8N8hp9gGPgMClvCMslEOs8KrdglXPB9+/8A c/0gWw4tNDwttspwf7mPODawmLgVXBIQ4vcJNAvn5gW5lwByCGCgL7a8IbyTQ9sRqrChOcL78wPw D9/YBswD0v1LqAzraKDZJKr5jbEMWcNV3eG+Hl+K+Pjgnsdb2R4/524KfJFkYLfbM8I7JP8AT+IA /sB/rK0MepTELtuZt5dvsdOFtdMyjb03xuFITu9mQAQdPE7ws4d7zQqgYxPG8b4YyOkcst3RIVih HJBN9rydKLyzxgDmq9nP7Ux2oSd6fagNTrzJXNjS1eLaY+YtmK3mPlocqtqn7LeITyMV8dQow59J B7+A/QB4ADmKa3hpzod3nuwTnmcEwaGSGHs2ZYwtslFIXzA7IhzE9Ph1yAQICr+6C3n82BHa8LdQ T+wIIDfwF0jBRgY7AhrkaiBpKubC08YWBQ9EU+whhYvTghvhggyd7JjhDwMe2oBE+YTvLgZMl7gw nAfP/wCWOAHIeA9X1eYAocM2SSMGSnBzU+WDWRhyA1PUot8nmFuGt3Zjw+uQNP8Az2TjPA1nY/8A p4ABv/Aej3FEiiQPJtujq0a5I1GiFexd8WceD8c8W0e1W21PJnUO3LFjtyyR8xSou2ThZIaTIGji EDNXs4LbDxTGyx6rGGhkpcE7Cnr/AMx8illcpyBbM8wsgPAh/PYIAPtnwPjIwHib2M/wE/8A5b/G 5lkTHK1KZaCiTGPIaSyKbTNJamCycr6c3cXKmEQ92TGR83BwVa0r98R0Pa1er2as3g1hvngPoO/g OnkPB2e0GHBczXYJnd1ED8wAU/5gsWw1KrzB8MOtlw5j7xUv1Wk1kYU4N7G+1xzz/gMeQdV1Fw6b V6vs4zlXlf2SeslkrLhNhB2JkV9L9hLBRkYA76tl5iePh/AP6ecDLMTFoZNZO44OxzgH9P7/ALA5 gsiyqjojypgqpPV2ASSdvkgkUKF35HSo3+nl000g3EgfMm8K5Xgmm91f7V4N9SR2i/4pbYzq10R1 729qq8n5eq8lQIazflIYloTENgsdwT6rY7IwmA1Ng7cLdmPOHGWbGrsEkHUQAAA/VfPgIdwT2wC+ J+/WQShlE4lLaKBsgg7h00+JTWiGwLcMPjZEMgycS+Aq47YUKM3uk8338Bv4A/v/AESVNflQV7S9 2GbLfBrhfudV1ZVPp1p9fSWQCBiAXKHw98ZA8wwPshqQ3DTS8B1mzUN8ZsQZsGbww4CvgQF+8B66 9TGZaj5R9e2Mr1jonTw1wVdZ1P3xRtD8kPHpcWr09ftRk1OTFuEwYTp7gA42z8nuT9fCHNgt7nwA AAP9L0ciiYq6f3mMvEZ5UiJbci08oZZJZod3HMqQo7e0kjMU3URugEqS7V7MxWJcL8kR3k1RpZ21 rstvOXAhuEewSCquFHBts6fksgmt9nkO4er7QiXyUmcPqsw4Ia2wJ6rqHHz3gOTGPn2ZHNO3gP8A YL9v59+1PmLbk4PlSq9MkmUyHjFngk+PEN9pFzYUOm6T/nK3hmGP3VVJgUZy4Ms0YUGWY8JFopPA QL8APnkAAwH00fT3BDiHtRibYUaZxV/7PLd8csqtNcpdoXIhsDGyVWYEWqwQ523nka1EYn/TOyVc ER0E+g7AfAPz8AbLhRmmsDXa2dM6hFtb1StV+2wkGNK5hsuy+EKhotNoZGE3mC5nuA+2K3OOCOnL PA3vkx1KdXZ4XwCFv6+BX9gNpYmdcdQ7zah0STCtRu5D1SbKbWdKALe8f1ytUkjBURoEhoRqilaj NYqT3XjjwaF2eB0jqrMELQBtVXns52dp+QN3CjclfsJklFGGVbTg4TLsDuCfZFgMiqBHHvhs6xzw YM83diOAxP7AfPn+uM6LmVplkosDJkwyA03Ztfks5gLQ9+r2xkMOQfGTupVa3vEF8T+Kw/q6usjN 79/6Bfj/AOmPWmZR+WGIZ0oW7yT0DO2myDzJxOYhyl5ycltfDuAd8Tw9gTAaGwwHjDgzQ0bYDN75 +/gPf32CHkTBZ63K9PLgBJr0yqrglHJLbREhxRe1yk74fdSG+cwT+Wr75O2wZ9G/zNg/f/582LBS oUHRsAqmz7zW2h4Pv7qI8Y8gknoVijDxGRcNQjiR2ssVjQDNqAF1kOL5vpnVQwFDJRvHi88knHg+ 0tCTVY9I/iMlWFd28MCGHtSn9MQevzE7b0OuU95WbkaKz2M2kuyOA+gr+/8AUYlvAho08OC5mQ36 2mf8UBlzOk4GE7T7MqYUnv7JC0xvkS4HFwnTx4E37rNNqwwliFxxxAAQGOADAAAxVjI203Xy/DKA VW/iVXDVKWHMBx8St4vy9QTQnuExkQw7IYYDEECnVo1BifKEPnKObdgm/vyD/q774Xvw1R5euu0w 9xwNFFBAqHpqv6nD4zTNZTJNYV8BrkM/2PdiHakxjX8AaCv3S0p6yjq5R3rM3gEq8HjjsB7Fgxx6 AywiQFNNaR+quoEGz/HXuTUSQZySFu+RHasVyReCxMlLC31W4aji5O4I4E+67X2ZVQHfkRa1z55U uYBn+1dGKThiBckltL2AtjWCvU8o5CYtoGF4PVacYT7UX4bwevCfOmDPdXJvOyJJsGg9on5+AX51 ZzVJckd8mW1bQoa6vjHUpvBfrGGrxHCua5Xqlq/bzAcOyU+XHw2oCwPirDeXlDKec82cPgH4/sH0 DrSjxw9GWjTLlm5zahxckHqEM1JDX5a2hAZaa0Ia+nh1sOY7XzJ1tJ75OW7yrNXV9zqvsm7A0E+A t1A3/f8ApwPFN2QmvF5BWhbG1KmHkAqrvle1/YRg9/XnHvhp+EMz8w42sEBVZHlmF8mJ+ENnLdYD +G/7B1FRWnzZtyHZCxiaWvTnI3kU4Hztx2f0BQ6hZo42TB4nE0rFWFYyLt7bjzeFtY4vIWRXSBF3 ADn3RUpqgg8avSbIt1kYpk9GXq3fD0TUvXMz4fbd8MUmPMcuH2XagcZwNXJ4A975w/cffvvwDob0 92Q0Pl4LeaBoG9XDUjMdrC0/5NM0uvTNPoF3POcMhMuBPZLUmOEwHS1X1ps/fLFX1M6enjB28/v/ AIACA2BkNhRkrlPtrZrgW4R6Z/DLqQqV2q9IrdXPd7uXuD44Vun3xCIOEFSYJ6OYRbMaFf8AKf8A fwGL9jsHAT8CltD4UtyZqlqVwvUwxh0iwrQtQOHbDFjPhZ7irbBMmGGRwmXAh2MQr/Y8eMtHGd8x pQJ4AAv7+/bB1nMG5FGGLl5EMKTZYfU4yum1NIA2G7GIpUanw3HSm9zNBVZyt27PLKY1AWOF1heW NkW2/wCW6sLF2psY0bcUFnUS0513Q7WtrTgrvCTfLgitSlqhvjUJUF0Kr6CAqOZcIZpE0XeKwkN2 Vhd86zCAex80fMYnYTPhlDzE1y8cGctnXlV611CsyezNQHR0p6g5kqwrXyW9zFBayuyeNc/Rarrm m1tmfDA5uIFjeR/jxjkcpILf4jYtn15+9cfDMbvXIkZ0Y06gADVTACgBxwBh/wDrn/f8cwtqQabR wgg8j8HssXX681+fx07Fe1KTtBLMEKvPah6ZytN9tO+oBkDuGnBb1GVzTj2+TKfT8XCq0Kq+2+/E EOq1soTFvmqsmcq4JwhgAH0E/wA+39BsW2WxIp+zLCF1VbUmk0hkUkgfMZK/sO7bQi3GBih6vp98 vitgxghDVQNf2WqzFkm0Vf2zeLRCBKrfn6oX76DsGCxHyMyqhjU0TySTVavWAReX2RqV69h6gqvS LGtBbtBwrdbh1XMIMiO+af8AUtxtmxF2gss3a5JNnP3/AGBBAYr7IqdL1MT4afo8u52QLId3C7Cy O4zB5YOdtCnNRgHCv94W32biwfBgV++KrIs1mrtGnqzP7Fz/AGBBfufY9NEWDf3iRGQamN43QRDZ 87RYRxRgxw92UjEmmFKKNqV5CjtE+DrplUIYRLu+pBFSsdPPjIN3JI6XcIIy7bClfJCu7i+ZWDWM a1LLJEi1gXYn5DYYTQOJRomDvmY1vVZghDBqRHlS34u0GZG9zeGJ8+A3/f8ApwA8yl4qfqoozVeS bTxnm1sL+ntJDiQ9cnl4o5THCGYW9nDsC3BUvOVWL5RuYztdsmwfv+/8BwrqcOQ7GpevWhcdqlAn gQRhq9kp94lsiuepx8PKDhScSt4czh62cqXlsFOZfxezMxwJ+wPwDYH7kD91PbhHDV3cEANZz/ny mqri1kVXXshTuCxld3ixQ46H2fW3AOPMQYE9tVXCzBn5yRtkq524/wC58/h58AmHTqY63Js/qZGV 9z2SQytFJEyle+NqRnFplwPtsvfUsoYlEXchVnhQY3HKfScvzd09DHjnnqBr+jnjUOwp+n0XkIDg GZBrxZBi1LobPlRV5XtBPHp5hwMw7TT+6kDnhzjIyrxfbP8ArbYNgfj6D0mWBTvS0EusRll2p3gS ElbU2CsWQwWh2NaC80K8MhMDh/vg/nDan0thW9mbpgjEzgPznAffz/TrZNKi3d0xDtXTQn2QHFp9 J2E4WokkCxgCed5QGGwTLsQ08PiQ9qzT60nB0YYr85Z/Nu2B/gIDwHn2HIfJjk4AbBnuwRklDWRI rbhRCvJlcgWHSqLT18PM42tmXBkalK0OKzHknzzkyOEScAe/nz/AT/T0eWTb1CMjoEldXd9qePHa sDT0+efH9VccR7suMbLGd3M4THCuBJBqaBB/wZbX/bc/ddB+Y0HbBKU/PgadPmBVvS7Ep9br1fSN qV0hETYTA+U/dkxDWx/zrLT/AJz4MsxoaBn3bm2B/wDYP1AdbbIeKrq+0NLs/S+72QefDCkWj2pe VkRLIx0+qd8Sg6eYhmK3TzHzFX+RVUNmRimCys+E8Bv/AD4+e2Dpho9kGLBhodN1ynyVuVUtkXHZ BJw3YxSMqImyuPsggwhsnIFt4n8tOMhNH9uTA97dgewIOGAAAwH8a6smFXtDASqqVYSSNaPjO7wH iOHw5QFIaJRggyOC3DhzF8xYz44NrXthQZtmx/d+en+ffv4DqEYkiZLh0qRrJz78vafHaBgb93n9 dNkXMqsJymneR4z42628hXORNija1V1+LIr7RZjuDA2W5XN2fqC8luwl9wsJwr292jabGtBPq/vx W5hDrdghzkNPfJzJWVGtFoLKzR3Nt8X35BfgH9/UhyOyGWgDVRREGuFqzG1TaSVSp69DsYCJlAQ/ JOH2Qnp497sayl/GnXyshgvtmT3t2d0f2P8AnwABBPzy3VchyHp/PLOlPjbkoAlGziTRL37ESBQz HGzPdSGhkA848vqWzo3A8Rmx/wClfPtgQefdKpwp4HTbpnGf8ZtG0PWNOWw8JNPh+eK9jKdjckX+ SOFV2QYIB+5Y89+rMLQxjNVZv+gefILB+/n1LExjZrhEhdpY0h8GTsVGZr/oxrGg47zZtfHRSSqW 7O9B7X8ZeL7ear/U/wDnqwDIQbKgzMkXcirZFeiyf4v+WrxDAEW2WgVDkOYWpDmri+YR1K8KH5h5 Rosz8XY9q7dQX79/38+NR7oj1AQMGcow7KrdZFbie7Q0ww1XaAteTbGW1+t1u+JlPsjBMOVLX0+c YGeK84kpLscAP+D8ggD/AESKdmNlQTIYuVcBJ200niQlHA2E0XE4OdXidRjkhj1u+HCk2R8X0M5U pDuoYZyf3mjTqT4M+AxxAc+38+scyt6jXOYYZVP1dksaStxGjOs4OkBxcX7QHsB8UDCeYQx8OCeX 31Hrf752y3wI7ffgADgJ8AwIJ90kkQiDMXj2k09SZ7u8J/prngkUCRMt/vRIJq20ydcl6oaaeaeL RQRJLqZNSY1hG1DGzxQvIiyb0qRvngwUtLHt9xG5dBnLbQHM2Bqust31LpNkWrnP4mwEmHZAh8A2 gkAabZB9JoSFT4cwPWwbbaF0wnCzN0q9ZeXirjiT/X3/AOmlkMA9Xw+k6Rt/Jq6uLehskut945DT 9XptxvkV8sD5lkTWWt8WM42kOK7YMF85Jgzbsb9n5BP+f6GwH8Peayw7Qo0bW+JSsdPC9qwA21YC QHAFFP4odf8A2fZ6fT+5dgXxY0wpWSGriyZz32M/v4AB1iPT4cNp/wBJeoIzXqkqaRtStkcgD0nb DYY1Ld2LuF1vYH5IuzTehr8M4B55XKfzmr1es3o4ECG/PsGwb+g1FhkWWDYTVxy7aTlpoAdPtyTY 6YZwvozLuS39MtRyGHc3Di3pm3vptSsr6QxoZosYpdueKZFwrBllhaSN8+6wrdmPk302mRosTQ9D 1IaLaWA1LYbbdkanEdqs4ewp9ocsKRZnG7UD7xD4HBUhz4qhyayrUPZgzZKTNmz78gW6A8AA6ajR X8xoeFuuWlVXE+y6HSbusi1E+p0iq+42nur3xwYGRkT2RPWyDgDbU9DgzEYYhi+cvDt2u38/9fP9 U/MR2RtzDttJC3JAwK9kpEcw7J5bhsViV1eGPren0Nkhh2AxVfMICNMJjGl8/ZDZsG/e58+Aw+vm 0PsmruCqBSGS0q3SD1SrxAESX2wyftC7tVVNGN4fDDg4TfB8wso5DrMYUq9mWeE7IcAbB+h/z+vb UNIYlSHy0gRP5JIYtNGznkVnVgc4C1trvpCSMSSxuqC+BUa90acDnbkVHs+ccaF2CRbzBalMrGK7 3Abr1cG1xMr4lDj8lKPn3z8bdk3FPmfMOT6P7xGCWPKP1+knNgAc+Afv69KI+ZFkGGjh9bpNIraS 20dkmKfLTLkqWZYwGGvhw9kGENwIGJx7lqriMZnwpwbm1XY44gD6Dz4Bv4CxTwQKaLdRFAxSlhVd qhsGZTdhWAHqtXXkMo5RCljQ09cshEuCyDI58ONxA8jp4x5+8jAZs2bB+Ax8BsB+Hjvj5d0O5kOt KTGnhV5DbD1ENTKnxENWixJT4HH2p3ImMncCnoNluGniq+DM1Xoby81UkhOcH0G3QHPgADHpZ/kj kXuSTaxOUqE7lg/xyR3jQPdd3wFo5MjZnWVZDczPnJxWINFRXz7W54/NfmBr+QHrSYHlHluyEMpX rsWXyR5XEh+Glv5NwmJ8yYYh88eHxwPfMJ1BV5Tc6PCJJs4fAP2C/i/AD/XHbCdcjkt0/Q7kSpPO DIg1haA40jXpmK0CXxomL4cwHcHyG4B/n8tVVsmjVeVRhhwIb/YD/wB+wXz4APy70S1xfh83ZDSG m2H29+GBMMMw9KYU1X3AOthw8wwnmEbcFI4uIzy0bm8nHZJ5z/X78/H9/PyRgUjlA9nSmh2STy5n Rngg+KpBhcJLlQ3Mltw/nE9khsAexp6+BR5iysboMGfsZz3YAD9yD9VJFFNqBqJf6ErGNPPqbLQF 8v8A6U8i44/cTfFGNNIujm0kcaCGVEjdUGFxiWKbE+bG5DGwPGIUjnKwHo+n/SfbTZEocoHG5z4t kmEOSzh7vW5Rp36uf6w5JMZXDnAG8KzqtbJjBdX7Z7OxvwCCf+gnz/TORx+k+grgSYrk7f4IYa/t i/amorTPSO1i+0toJ/MFtD4eHT4YN8T3wHMJrNoIjyjWok/+P1FjgfwPr9FXyRQdBXYBPBiT/qcT IenivSGSHV4jIBilpR4O4Q/uBgOvw2rmFaTTCKTF93xiObdquBn/AO/nwHtd6qGAXYNZqoupaxjO 1aNVkbhnWov2bcFyHizmUZHCYHp+4HwOwIbVpaXwPk3kqLWXnvZaITj5/YNgP9outUkjlmRp0kSR I3YRdu3eVLEbbavnI02dLwuPOdI2DA7SZphnFINxO+SGJch2ZVmW+PB/xWKu2YDq88+adTL4qjal pskt0ijvlzSIkOxjynXNjIc9bre1LTMBx8OdZdgbHMJ4FFcYjg+Em9/QQHPj6Dbr8AganqOq9Oep QbSyakktYCuSJWEO09p8e2A/A7NiuVqD1unzETjdgVv2lcHyuXzkxQXtmyYfqf8AP7B0/SOZo5TQ mpRWZ5moayNTWc31lW+muvXFemgU1T9PIwDhgyPTIt4TJsDF8Ic3RmjB6Rt6COqOwYvwDn5/DDqu FuB6fqpLduOgeNmQ7v8Azie4MExoF7WeMMCf8xPhht4eMU9SrkMTWd093jZDewYe337gAC1ZXyoM MXZCxXCQY1yj22N/cKPgc9UI8GgdezTyyZqYprCbwWwRgMqxBBsXbcCubx5cyaUOWFVV+uGnhOt/ n9sdzrgcMWQ9V66e2fjcPTGHmVvPmNTavn+Sc5pu0NzwN72jn/oJ/gPn6dA7MFtsPODJpg2yC3YK JjmM4gkQ7QtCp3KKyXBvFJGE8wQquqzyeeazCyTKFMSZzZDZz3AH/fwPRUDbCESyFWwc2yP8A8Yr dTkKsNoiTGgC2WMBMMIf4bIoJ7BM4iQstH40TF7pvm9mznAT/AUE/h0+GSRdDlUdtO644EklylqV 8h74sIewhxVX2ELcjBC1IdVp9PhyEz5/LQe2VAUocYs/dvAvwB+P9RW2kGIsyOiRoe1Fu8i8tNj5 FDDmjyD5ORUdobWkhhfIg5O2GGOEdLlfN94xoWTfBeY0r6rKC3jTI7h1JqzbUUq9kMiHU7vUFS1K kPjkh2BW9bzS7g4YLc4FqQ+CtlCYvc1nhJsIjnz/AIDf+fdU6oeOHcih5DulqbeBvi07mK9r1flh wMotd+zp8yGt3wHwHuH++E/F5V0Pk2yWi7gwADYAAA+f9uys3Su8oxc10njzJamoKYSYVdPp+pxM zFN+LTdVkK35g4WQyMBi4tPA/TxVb4M+0LPBwiSko58B4DwGHTOjhl93ZK9FpjIOfCkwJLT7OTzI nhsqJY138PZJgcO+Mi/DBnk5SnB9PTNV74875shvn+AD/vwC4zKFCS4F5CGZo02kaQVmyozGOPOx YknXkcFqNAFjJeVGdscVCM2b7fG2ka0t4d2R4skcCuWon2Q0QKvrHKV31tuwpMq5gYbCA4Vk4OVS 6WhdSzCC24VvMT1tgD2NAr+f/Uz4rrOAMIk/ftg/fz/IF6rlBbQ8fKApLJcGa4Ru5FPslbiTCI0F nKUhkE+Ghhw8NxfDgIehvG2ExbQ875zbYwGwYgUHz6Cwlut7AsfT3WLHlU+S7cNVx17V6Tk0fbAa LcbDFsZ9cO6ifdlb8gWwd0/avJi8GdFBm0nwD8AfuA+A6CXSs49fHO32SyDTGVW6AkGKfs5orHng u2EPeCEP4bh8weYrm+F488ODMsq5RY2M5vZw+AAH/oL8f6VDCpd8QibaZ9iEZUVFEqzxH8gxySVZ BA7bce9cz750jdj5qvAybKVvnmSR/NqFtsrFadzEMzcmnuVUr5UrJFbyUSQ1LZivVsoCLHlf+cDh 0+HCITAdtMDaDm4DKvKclR7R2Tz/AOvaI/j1SfMIaf6bsw9VQuZjMulDQL5kWFVYdsDgZUSxgMOw A8OHajJMX2S1J5DTTBWxjMrq6MMtTA2cxAfl1+QQH2C10NkpdjsCww1l3lJJW/D48YqUwrsO142a +PjgQmLYeyON8D4lwIGHRkYpwYYjhEkIj93dg/r7DryStyh81ceDzlZedGW3yvX9tkNUNo/2m5Ab I42HhvhhwITK5nuM9qZEZZfPs3CcP3//AKH8OrgLTtOI80/iXviljzkYNthNxY8kkxYpIt+DaDiw nrTxwsUSRJM8GWWycNstkMOPcAOTxY69adJn/Fc08adE+wU9DfdcNG+k/bjQ7NNcqNe6Nz6YDZi4 dZHfFUDDqrjG0iCHrYVcDZctgj7lnzhU7NzvV6cPX6MnKzqm1hHQtfFRifOY6XQp4gDBzZyt6LTb lBOiyTOdMP8AqL1bKVXWSpOVbN/oK+hzX2pQLHFL0SWEmqrJT1BFeDChZ1nk0muLsU18KIWOKbOl bFbFLlsi6BoGhfHAvhseqxRFwvFFF5eaAF+3pq6eDFi6oNW9tVhquW6kojuFp5lV8BzdOFaQ5Ncq ZM/DIPcSq4YhDPuISprRug3CxZ3xCt8XveOKPvwEDhhifA9cdRlLEzUvT3Uu8XHQNS9/qy1AZ1YM EpbocXXrkmh19PcLhQ7UrceXuLb8YLJue6I2+JIQ3hv79sG/nwHTsh6g6ztpLs6tG3OW6rQ2q2lP UQyZO0uDRTensWhw8GT4dbp8wgHsatGDg4jk2BQmTwNu3+dRcBAb/j0kyhBwV3BVdwOntbGhs5bw sh2VE93MRD1OCnvug4Q0+yENwuAxBgL/ABUwMsy+MVl5B0m7Vd2DAHwFRAD/AOXTePTJIiiOY0jP FptQc9Q+1Dpo2EisDLL7VIzlOGZC+SSK7rxtIXR5cokl1ccku2c88SqQyQRmsWsKq+RZ6gUukz5S s74Ut+fzCa+SbDT2RbHsMOz3KwnKm+YXAhvl2Ib4wTJwEeBVbIZidoPhMmcNhN88/UIA/UT8/dWD stDELldB81ZiYWSMT5VfU/CAu+o6HE1AqTOrqEB8hWPinTIGNPNtYPbsIwZactFGKWoEC0qbYAQD BetzH/lQFXqvIWJftmaj3HNdo1bvcxjYLXJJ2Nsh06W2OStVa/hqErdbiVuRZUiCwIcGYsrNYFRt mA0rVEknD4A+fxfj9u9Kxo1E3IuVtTIuUNoqHbVPrde6Rxteo6nMrm7q9Q1dbTw8OHqEDzLA/o98 nWp+6I3B/Ngz+wH0DYMdgZNxHp5RPCiajUnEM/e2QQGFkobMjEDbmyfCm9Nr4qP05XSSJ89NCrkn tj9IVuLJzuxrlcsWKZAp6grptFHgPX0ebjedY1KHzbI+WPMODA779aAnGKtr5gOHpPh/w+IjwJxw WbMaNzZv87U/f9g/fzyn7czKHaKYv2AeSbClOyS2K+oSYObLUtoCvVzEW/yoH1IfMX98UrAgTvs3 KFkYc7ohNgwfkHE/jz7rsOHEOpRZKh21PoHJlTJKQR0orce7odjFWFDsat94T6Tsit3BPhVy2jx7 UZZkZoKExlVuwS7PvwAAf59j0q4YdLsZwGsbHp7dgK5T9b1lV+dYdgS7gAi6n36YvJ+8akK3hp+A SAPbbUMMxPi4smDNhOcP3AQGIABj0oJ9RYVZiiuyWkX8102meCfM1HJIhfLba9oLXNgmO2UVXhMk iK6szSiOO+HSWKWCPccxs6MquNrMMS2QBG7QzHStCg0Dcl2SZjQkmyysNAtDYtq1SiXyVD2dPqtw pPw9xe6kDcCe18GJnAgTfMd/PgN/Ab+NugcRYxAxQVgtSk7LjgELEKfmRxJhXaF5olB2BbDodqQ4 bAHsZ8cO3NbjBlYFBgtHSd8OH8bd/fz790bKCWwVphMY2Oh0hIsZ8G2a8NUOv75muRQSrvsPtWtL d2IbIvzEdD+ecT+5nPGYn/EO7cH/AH/YN/2BgnGDNd9Pb5LpamVt3zbmuNIr92yU+JDuS0FOrwAf mBgxT9qJzgHncfstUTyaNaDQsowNJ7JgwB8/wE/59+eHwlWJBjhOYS13neNMRQqqPFnz56GONWka yjZJkMGyxww4PA92XB/R454EI+ZV6RS9YZR6yJJltAhC2neGH0/lmRoV4j5FTyEOq0Ot3AxYC3O7 H2ZxsnZivaFG2/wnezh8AwbA+/fgDUT48ygrwW7uKIdtW00OBtejzA9XtYe2nITFTQ7BZEP+TfGC JBQ7gAgw6yMfMLLGWoEtE28AAGAABj7nz4pDzNK8Wq0+AApi/qZTXarl4OyOFfxIdjgVPX0mp7BZ Biq5kMwQD07Ar8CDcO5jQ0MzNgb2TDYEEAgn9/YD6+XxdoLifZCQ4kltVPWcpTKefBqeJMHkOJFl zE+yK3fEOYYYA5w9885MGFN0WSZw4Eq5HQQGL8vr5/f8c7ZzLK5TF2TBnWLZkOQDEo+T1hGsjkUc sAOLsVtRoYUDoqKgjjVHiltxiVUmNzjmbot4xNBuadmoy66Dd74uzKUg9o2Rpo1XNtOID4BeJf8A D4hpGoK2lsgHQ9Zlwe9fQ/r/APODLyxfEbfPNo78fPgEHwGB9GyDjY0avLIvh8o0bpXV0NSXrgM1 6rloiGr4Hk2iK/DQ7Hp9kXE9bB8fPPAd5KfefNpPOV9+AgT+PgMOOG0ZlS13Dt+1Q6iBiob+JHzF sPEZLGKcoKPg9kuBCp+7ENgMHFJfbTaftiuLJjDlXBO6gDj+wb+/P3T+c5ifF0v15V/bG0YZmsac bLYW63IXHW9oIf8ADketRPY0O7Fsun8kriliAEEYrNmfBbMMqs2k4f0Cgn9/AAOij242iiwmk3pI wzZblSCSKR5KoVmYlGN/vI1RYytKLaRBhwmZqkNBUB5vCjZ48jgfKlBi49lg63qrKMbbb4EavL4F VR3et+GiYtjQ8N4fIaeyL7KDrTto1IdZ1mUGdzAeyJO/4AD4A/iAAH+xXkL6ZIZDOnhDq6wl1VW3 cgSr22fPAYhS0JlgB63uDRnQ4cetg6lHUtBrZZGWhcoz+9vG/wDs/H0EB0YOCO4OwMbPq5wZE+yl sa73g1XYvu6eLQ7ZfSj5X9b2R2fD3AP+DP8AnvBhZKNCuTJo7vaIQHsB+ocH4/1I1PDXP4SIbRaC E2VW2LZJrHvc1OVESumiqIwFPgGGW+KHe4Z9asZsnzjnGGa46ceSn6++OGK/gAwfmD1MYMiPPLO0 2cjGOKOHHVq702zGNxqkmk3HUfdyOMLYQp3YooDt5wx7zzygxiAWZLYp2+V+Df6rlfLduVGGjjSm VailktGIRsH2Eqh3eGeV6RxV4fzA4dwMMg/Y7LH2W8B2ZmVyiMzb2bCYH3/YD4B+xx6cEy1Cjuh/ 4SvT6kyWgHZPj3ldi+j4WNV+wi+Ph5i24QzBDEGhsDbBDowxDFsyyD2R2/YNgP8AgOhtTrtbaLEa jTcyWQqlLr03xLQSdnYVsWUpyLaCGQmVW+GHBw4ejT6PPI5hGRrkV2ZZeLRCf7+/YEFg64xZVkaF fJd0NkN0y0WpGlr4epaHYYb4hNhSkbgIB2QPDDmLBZMIDh85bWdr7mebNVccQT+P37pZw74wqM4+ nzRZLkiM2YXcXDt/jYr3U9N4rlibsapOUdImeRBIRcb4YEvC1i5EyoNXp5eGzoI2HUZAyr5OVmgS WdYKTyyQNyQ/+o3xWhbITfmWQyw0/AH4FHZGas2j7OCCbJ+n0Hz/ALnk1bsRoqNbgPmdUqJWieFE yKrWx8RblJve4pMT3AxM09sjeQZHhDYJ7xVayzPmO5gwn3g+A8B9g60mChB3tAPXMWt5Om98PVdE aIedYBaYeKFmiVMIMj4+zTK0vhzkBPbZzITJi0N6WfCBPZ+58g4bAA6nrEugWZsGvMqoNPdXaezK 3UrC0WrXzxYXKQJa5KbcGEPDcFtkZCDhB7XW0c4yTaBb0TRzbtsfAX7+vt/fowYMSRmkFCJNncxj IBWJWzFydpwWvU55XDkYFBGAZU+pdoJ3kbFNtMfWmajUEeR3Y678k71x5UrQQW3yZbUtjuwaenoa TEthwviQ2ODkUa9+Q19bmLbJVcMcyQZ9gKX0blCGzDKruwIEBn/AYYIJ/wBySHSenNcsV2sEFqWJ Idl6eyTDdHbG+F4OUAtkqua3X4ZhkmbOnh/n88gshMYh7nUDw7JPn/v3gP0c1lunf23LC1SngLa+ z743Wr9RQ2n1OyFcC7gYq2QquGHMLcxgDqvH1FVWxm6CxjNve98+APz8A4CfwPocfU+Yrh1Vpn6e yTJAtpA7T0PYVPy8a5PCZUV8TzEPCGZmcw4GQ7VTLMWShSoFk5+UQdRH+Anz/IMOmjcjXcCvHIEY xo6ETrHGUxjEF92ORBbcX4GPQoyyPS2NtEDs026jSc5SO+CbOdDFcXuj3dvNutREyGLsx2cr4tpS zu1cntPMQ9N7ZuiakIbRDr8xW/Z+yIdfvnPGCf3IZhnF2as3h27XWofwt0AAQPvwCt+nNksDSrbk OAx3NJG5VAjROpBwloEuHQ/eOILDD1sPagdkuAeyUDZdwAUd8GDCiHxn/RMG/bD9gw3/AK46vT6b SAV/HqVuCiqTiXA7MNfWEh1eJmK7RU8VXmU8+IQeyFu7F9ktTj885/QaujewQIbR/wAu8+39+QUG XdO39l5Cqpz9K6SZgVvaFrmLsuan7jL2g0MIGIt4mENlWg5gcyBD9IPs5bWXjniMtfdklHPcBPr5 9+xAAKliSVFSR0KDyEOd2EDWe3G42kQVZ7y32U1whoyJIUQuKJLyFNuMY5uBg2dWLHb/AKm66jrg ZB6lYB4C+W02w3xwNiU/+JZHti1HJXsIpbVqML5T74tzDA5kqvtdAVWV5ZqvQ0ZZw3tJB7AfPn37 n3TOV3hPDJxLUEhquktqKDNPCRX7sNR2Ha7apECLQiH8Qm8MjJR4euHxPsyuQ6yzPiGsjLUdtPFo vH6AP9/Hw8oYrOql8O+Rc6nBuU1IEQheWcj1OyNAGnLaKGHCZDTnyG+EG9HQx9aPCG8rP8RlZrOD skm3jYH7gJ/+oAkfDbKpzHZSXHyQBrncncfNJUfLmWNKYZT4HT7sD6teN2oAhnAI+y4LIMrMpVyy jI9XO1oo4AAAP7/+/wAJcqioPYiqT+axAP68Hjni+elIFCu7i0XHI37bPHHzdV/2+enwvhw9QVWN /hy+PYWVnNlxq2TnD2xwVwRapQKenmafcENwshgMA55BtR/vNXq9ZjNkScDngF9BP/Qajre0C7Qb fhWXKAEsZ4eN3AQ69YC0woAXijkHT/sYeHyBkgz6/fAQcZ9oRsN8N/8ATDEAf2AA8dOanXaYUMV8 pE7ISdSLtZDDT4Fwsj5ttSlMDF4/s6fQ+ntbIMk4CwPlcviNjqLFvJM5dnNjh8/UR8+AwPn+kEuO ifFHtQEC7Sluy1tt4O7VK4d4KRA1Pciu+L6f8y1IbIOsgGfTwKoH3MWLszYzfe1Hvw+ggAHAQCC/ RxWTASB2xaNHTDOPwrhsmq+bFGuBZvi1X2ESbema8WxzxrC+LW7sfI4Hzd9EiWUsBIKOytXOd8OB qKq6Yr3nXgd389tbRt6GyB9ncPhtR6wJ+zLLy+K4z25sk7AAAYsGPgD7CqcolLiuqytUum/vwBmV K2VfQ9SoHD4tX2FYwswwOHL3xkcCHgbBUge5/Q3n+idj5B+uwdQLpbDgx6hENjyiRsMZZAneBkGB 5lP7DWVci1tfW+Np9kBuSHLar7s6tvNmY7mMBu2ynH4AvoPPt/A9ZIT1dj3gUUPDOW/JYXlPsKr0 fi/c0ohuLAHhzA5gwQh2MpD+KB1l55QzDPCb5sHtsG/9DGGeOEzLsu6afUlPfjll2ZUl1/ixHz28 dNm21mmWF96p3hjOOG4YggLe5sbzHHdX5qyE/pvKWJYKmt1KeatgXA4SWvnocjjcXTnp7aU1wr9D Q7gsjeCBiCPr88qmCbMUKYoxw2EduAn9/AAN/AAHZHFjuNjSmVZ1gctAqUQfZC3YAmnxcpsiyoY+ HW+GnuZVfJGo9R6kq2R3ftGr/BhEl2w8AggN/PgD6ZtmRXbQYDz4thSVtjSVKInuCTILGFcXXu67 fChw5sPmBg42p++cZ++POxhAlo8B2DBBx/f7UOPyEPR2eVzOCBQJkOpCdTGkVVcF6IetCWLKQ2AM tw63+Gvvhyyx7bPhs3KFcmsgwgT6CAP/AL/hh0yaCdtp4dLCsM8zQkqtSfZvMkv2btx2MTWC8kHp UcscSMjO5miQvKUbDKihUEd9eGo2eSeDfR5orr+9L4YLCzTIcbWKa1EkhorFUz2FPPRbCV9QMMgZ 8wYsghDeG2wHuctrDNQ7S8oyPV3gwADHYD76AAdJ9wU47OQMZp6jQiHcGTwjblu+N4cpUSLSK38O JyRkMJ7JXPMUOAno1Z4i3nY0k3SZwAgn0Hf/AL8g1XT6zF1nmKvcGGbT4thjV6v2TOpct/8Aea0+ lFtfZTCfDW2UgYqs8Q+dMswYhvjyMePuwNBAYgAHgen9Iug2kMfctNGoBjKzgjbX+NV2BbDI5Jol yV7IIJ8NbmUnDHrc5Sq+fOh1AzCijOzHAmN2I/AefbBv4DoYjqYmldVtJnV9O8BzkSAxxROA1LgZ xEhBo0VqjVk3wdVhKvA/OQdfFlCObF+D+KsfnrzA1h3rq3arkzpj2KVqfNxVkDkYV7pFU6Oi1eCj TvTKPer1FVKXYMorXlhE55mcVc0o3jFLwZ03JKTBw3Ex6IEfOvaFV16hkuU5ZogjateZDm4znnMr ahr6ryp6wr/0mxQaONWl5IvJKZ7BHejYhwkznSpk+KHKZhfcl0QICyYcDJzrUo0yKiDTf2lSIijO aXOlVR3ZFjkaN2xNnya6Xvany2r0ztwWdXQKx4JICxKoBrgAAUTx0j2FfXqtrunrfUgQyJYzZkao M+A1evJzPSZTCFM+un3ZfKAiUPNhkGGaZmOBpbYe58qwonprnOyqvWoq3XuX6lr13s0w6eq11Rf8 UzUJp/twGIkI6gw6jUKRJRE2uajOOmQsVdUB4OwuubVKUmhyZ3Ei4TsT8YeFEqrtFgC4L2sM0PLm 5M/Os65esdxHI4dg6pCFcMQwFvwGuwP0DXQxACRaAF6qzXFn8n9/vrzyvhnKaX6t0v2TSPpGKViX F/wvgF82E5zgohyLn23VCzuKxcILNyXmEyCMhCMAFRXFhE7IF5YxSjgB/rWcBcj5WdJt/d2k+kj9 64WvgqRg7A0NLUcPChUUVmKcpg9T3lB5h4euGRheCslCZ+PCsMjnKeALLkOo+Hj6cnLVMv1KuZnW daoif/UylnB9LqQ632uLg4ZfDDk8EEcnrY6I39jSsyqzRzaXbYqC0eWeWBItcqGWNXQvwOqfZyoh tWkt2a8a9TV0kng4rOnYqYzPB5ieZbxgUkX9amVyZuYxLYf1lAogp6FIMahJ2ZOGw8yYvy/RkenL wGq0gt9v/wDEAtWgsy4LlrGs/Tp5q5rnAaWsApWcUy9+hyW3dasAqPB+jALnN9fO5z1tVdkI4mLG UJ4oAOFwctdCwQmXnWdGpO2OTxHKw58MuGLD/MtnE+RZo9YSAPAA4XwK+B1fgOjZmQm/8WDLeXFu uxh0Xy78tehnS8M1dsg8uvsQs5IzUdmjC656UidjZQ9eAlnUflqMQZlMoUQbTISfJGQMI9YdMF/t hmo6jes8MtQzuoFmLKbziI5QIiQUkSxXOlZlfpuQPaI/qUa7L5HrzjJZAEZuSn5xHPzBkQLCTsfQ rejOs6W7u0+pyZmqd6yYmrq6smvA/wCnWuNVWNMVC3d4gC+U8158n/qevxBQhObQFm5/pnHIosCe QJkJZhEvVCXvQ81pZNe1SBtuPGjZWXND2yRVfVn5TY6rxANObsZxEcwZc5cITAWcwUitFlut21Mo n6jXwmTTrZRX1wMTxUlkCCBBUFqo7MFSD8kwR9cNWgl2qYtBDE4sAiFWqXNnCiOK1X2Wm51nTfEU jj3Lhi33LY5o+RdC6PPz1U/8h/2//Drj08V2GubT/dToyyiAj0q4TT1AHJyl6BIJCzo1yKLu9nvQ RWPQKkR5vqA+mcTUFPMzM7D1jVWfh65/qLNYhdaQyTsQzl1ppfTrcEAlsoZd1cA3yFw6Fi56YDLG CVTJhT0gwo7a874BAVYXr9c+AcIG48/OUFCPO9MkTkHxjDnWdU5P0+q5P8x/8gf+Olp7l/2/8J16 drS7AxbLKFBc0ip+iCna+myNmrJObCjeg5WitWTgif8AMuys6cn+tdWHe4XZ5FoXqXMa9yHHPEsG CpjPBCs2NTfPi41T/wAB/SjrNX55whaLw42wWz1phY2AnVKv62jItLJOREWv/QTijlDJn5dcruTn Sg+fkF8YGYbD7nsjAXGy86zpEABkjsX6qHn8i6P+o/PVt7JP3GwP7Bqwf0fkdVcql6MO/qxRhnp9 FaAIFNaVLBXcK1IMAcoqtFyUbW1OXJ6wxs0aYS8hctCvHYmvsSEfmG6/FRoIbBKVlT0j8PTm2cpU PM1FBKJsC5nGyHM1n1/X1lzvTjZDsu+kmyWRDMOLj6yRVSOAGeZlzmlZiHQ8zNP4m0sjKlZyKXWf 8AVgMzrOtOpASKB1AVtpUyXhsHYZJYo4tQyW6ahYNDpOmJMmpsk+t8m/ON+fz89UytHLJrr7bGny OyMefWkbIR5ceD6SOAQ5kyy9QuV7ZEnLaVPIXWHD1hHpRAYjfRiQxyJIUdFFsGUc9MaJnR7o6m9Y lx3jSw+zpfqUa2f7XXrlrV7c6rVYIBxMqanpSwsTCD6XQ162VwgciK6bkcSz+keeixiKyZdwcePB jsXp9UDOs6VIB9XEa5F0fkfxeD8dPj50Oqvmtpx+nUPiw/DLZxbyLNEdJj/hxMbrq10o3ERebEsZ IYtOtbW4IrZrqB6ZUJijxSxChcsjkGZkcjPjlhRYfYrCNalPNiZSRYHpywxixlluZwg09HbGdX8q ihutYnXz87xi2ka1rAyq/IG+HMnpacmY1aZsj/mscMaT5i2fKwO/Tlmg2oQFXXFezBqfgBYh2StQ 8r151nStP36PU59/r/f3ebvzfmhf5rpuoJjnUxkxk3eHb4269tfk9b82dbbDYo/OZ9QluNExqqSq vQwzj2XV86SePRR+ql5HuTNh20y47kzwSxtrh+rMdY7EGLhWsiMYwprKEqHqWrGaSaaVtRGqiw65 sLPlxhKyW01egUXRxKZXzPFFamVRjzGZWgGk9UEZoFIr9cToNfVCjrGUDU0ivirKs7OUjsBLNzs6 zqRABYgAAO7xx8p0pv8AinPycbPyeekJOqZUOimCnSvpmy1OvILq9jf1gZGcXmvgErqAnAjwuKPy FTPUoNhLeMr1Lw1bFQ3CKaJZlnc8MwlkwvQFZUKvjNJGl2ZNanNmL3Doh1328wH2nPVy5wMV0ak7 ISqdX1cj6lXJzBwOOGOZXqIlpmBOwR80LBkpDwnbm15bJnWdaGJyXk8SykfosYsiPwTQs/NC+lx+ 50+xkgDJ9jBdzEMvghbOIIIFmvJ6M12vjmm3UPXUSmrmulJw1FjoHptiSIbx8Gean0eASTK0eDzo QCLKTGNi9fqMjbAOJuaBIuYZsaxhXP8AVHM52Ho/cKp14dqHuNe9JA9NOk9Jz/Zti2UUmxCVhW61 W1odzdUbsQfyUsfmA8onOuBe9RqC1Iq8kvAaAXliRTTEih07BXzrOssYB1IcgF3giLuR3MVyxLN5 Yrk2JJNWaqz04E/T6Hk8GQD9BtnID8BqF15oX46SOqK0PSQS7/PjK3qZS9FIaXdPN8V8IVkiNBiD n6QeupTm4Sy8yWRcJyqXiAs0yypmcz4LDe5MLG7tww62To5iFEUssEa+0Q6V9YCQ7Na5c03UDbq3 kyo+UokFgeNkaIy1zTsrIWDioVHEMkhLnm6+mDT+BkL66wPEFvLF5U7IEmxmdZ1usnT6ZiSWbPJi bZqaKrJ5NWas8Wfz1kcAzoSBZu/37fP56YFZ+gZcFHWtcjGK2tlY3ILRzSPV2F1DhGWn7I0zVhbL bXZT04tEo3krpUk0T1Wd6BJwZOKI8YcDNTikiLiSzFZYzW0riTR9vjWZgz2I5Is2lo4VkMkHlGW1 8ZZRpLAmFlLe5DKBHmF8LDieoYLkRJqH6yeXnFiaWRIESsifnWdZk92m/USgfoApQH4A/HU1juul 1GLMtyMTixFm15NEWf2eeoW4dZ1zhE+6a+F+tUHgytE6fXw9IGANnLHCSAsNqeMDyCAaaP8AUKUi I2yyecWV1jLAiPkCRuQIjiBRNzGNd1aJUIl3UlpjlHzLUuErW0y1Nftjz1JmL5GW4t5DXkCjkxZo CxSWRTkLRGSkqhORG9C/lGsuaEi5UM7FG5kofIzrOsWpJTVRRoSkazR4opKotizSilFnk0Oeugiq wkyUNUMlZAGrVLq78/PVoNEv/Dg08anKU7kv3pYxx30OTMB9OUuwa3zMrNhxcyIU9GcQKttdtjWb m4SjEvIjSDrGTxEA8gOpgfSJUl1eBC86zrOu3HLKFUCSSuPvb8p++uPJHGXclEJLMSSqkk35Jr9D /p1//9k= " />
+    </pattern>
+    <linearGradient
+       id="linearGradient6545">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6547" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6549" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient6538">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop6540" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6542" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient6545-3">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6547-7" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6549-2" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient6538-0">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop6540-1" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6542-6" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(0.67894695,0,0,0.67894695,-132.5412,834.53756)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient6545-5"
+       id="linearGradient5172"
+       y2="139.51218"
+       x2="289.52884"
+       y1="139.51218"
+       x1="211.48451" />
+    <linearGradient
+       id="linearGradient6545-5">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6547-75" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6549-4" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(0.67894695,0,0,0.67894695,-168.35757,834.53756)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient6538-1"
+       id="linearGradient4372"
+       y2="139.51155"
+       x2="490.24442"
+       y1="139.51155"
+       x1="412.14142" />
+    <linearGradient
+       id="linearGradient6538-1">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop6540-2" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6542-0" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(0.49804243,0,0,0.49804243,-78.106449,768.45912)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4487-2"
+       id="linearGradient4012"
+       y2="401.69296"
+       x2="315.60474"
+       y1="401.69296"
+       x1="223.24297" />
+    <linearGradient
+       id="linearGradient4487-2">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(0.49804243,0,0,0.49804243,-78.106449,768.45912)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4479-83"
+       id="linearGradient4009"
+       y2="401.69296"
+       x2="439.60474"
+       y1="401.69296"
+       x1="347.35028" />
+    <linearGradient
+       id="linearGradient4479-83">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop4481-8" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4483-5" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="translate(0,881.19552)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4487-2-1"
+       id="linearGradient4030"
+       y2="55.286293"
+       x2="121.55995"
+       y1="55.286293"
+       x1="55.648441" />
+    <linearGradient
+       id="linearGradient4487-2-1">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-4" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-6" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="translate(0,881.19552)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient6545-0"
+       id="linearGradient4032"
+       y2="121.94369"
+       x2="121.56413"
+       y1="121.94369"
+       x1="55.648441" />
+    <linearGradient
+       id="linearGradient6545-0">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6547-71" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6549-7" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(0.49804243,0,0,0.49804243,-78.106449,768.45912)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4487-2-3"
+       id="linearGradient3314"
+       y2="401.69296"
+       x2="315.60474"
+       y1="401.69296"
+       x1="223.24297" />
+    <linearGradient
+       id="linearGradient4487-2-3">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-8" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-0" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(0.49804243,0,0,0.49804243,-78.106449,768.45912)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4479-83-1"
+       id="linearGradient3316"
+       y2="401.69296"
+       x2="439.60474"
+       y1="401.69296"
+       x1="347.35028" />
+    <linearGradient
+       id="linearGradient4479-83-1">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop4481-8-2" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4483-5-5" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4487-3"
+       id="linearGradient4345"
+       y2="956.05841"
+       x2="71.789589"
+       y1="956.05841"
+       x1="62.679543" />
+    <linearGradient
+       id="linearGradient4487-3">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-1" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-6" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient6078"
+       id="linearGradient4353"
+       y2="981.64661"
+       x2="102.05502"
+       y1="981.64661"
+       x1="92.944977" />
+    <linearGradient
+       id="linearGradient6078">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6080" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6082" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient6078"
+       id="linearGradient4272"
+       y2="27.31698"
+       x2="70.705658"
+       y1="27.31698"
+       x1="22.183777" />
+    <linearGradient
+       id="linearGradient3086">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop3088" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop3090" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="translate(0,879.19552)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4487-3"
+       id="linearGradient4282"
+       y2="103.86177"
+       x2="154.61449"
+       y1="103.86177"
+       x1="106.01667" />
+    <linearGradient
+       id="linearGradient3093">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop3095" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop3097" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4487-3-3"
+       id="linearGradient3922"
+       y2="135.66661"
+       x2="88.674927"
+       y1="135.66661"
+       x1="16.449018" />
+    <linearGradient
+       id="linearGradient4487-3-3">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-1-8" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-6-3" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient6078-7"
+       id="linearGradient3932"
+       y2="49.941151"
+       x2="155.54698"
+       y1="49.941151"
+       x1="83.350334" />
+    <linearGradient
+       id="linearGradient6078-7">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6080-1" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6082-0" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4487-3-8"
+       id="linearGradient4095"
+       y2="52.473763"
+       x2="134.20866"
+       y1="52.473763"
+       x1="43.760551" />
+    <linearGradient
+       id="linearGradient4487-3-8">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-1-2" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-6-4" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4479-83-9"
+       id="linearGradient4097"
+       y2="133.38464"
+       x2="134.20866"
+       y1="133.38464"
+       x1="43.862331" />
+    <linearGradient
+       id="linearGradient4479-83-9">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop4481-8-4" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4483-5-8" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(0.70651779,0,0,0.88283587,1.859904,877.81349)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4487-3-8-3"
+       id="linearGradient3967"
+       y2="52.463245"
+       x2="134.31081"
+       y1="52.463245"
+       x1="43.787216" />
+    <linearGradient
+       id="linearGradient4487-3-8-3">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-1-2-4" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-6-4-8" />
+    </linearGradient>
+    <linearGradient
+       gradientTransform="matrix(0.70651779,0,0,0.88283587,50.134786,964.85367)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient6169"
+       id="linearGradient3958"
+       y2="52.463245"
+       x2="134.31081"
+       y1="52.463245"
+       x1="43.787216" />
+    <linearGradient
+       id="linearGradient6169">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6171" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6173" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4487-2-17">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9" />
+    </linearGradient>
+    <linearGradient
+       id="linearGradient4479-83-4">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop4481-8-8" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4483-5-82" />
+    </linearGradient>
+    <radialGradient
+       gradientTransform="matrix(1.5673273,-0.25384922,0.13252016,0.81821157,-664.8311,27.187906)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210"
+       id="radialGradient4264"
+       fy="411.26151"
+       fx="402.6611"
+       r="129.67412"
+       cy="411.26151"
+       cx="402.6611" />
+    <radialGradient
+       gradientTransform="matrix(1,0,0,0.54123709,0,26.485054)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-0"
+       id="radialGradient4274-0"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <linearGradient
+       id="linearGradient4210-0">
+      <stop
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4212-7" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0"
+         id="stop4214-2" />
+    </linearGradient>
+    <radialGradient
+       gradientTransform="matrix(0.64494713,-0.10070217,0.16513894,0.56100761,-16.040927,23.498059)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-0"
+       id="radialGradient4340"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <radialGradient
+       gradientTransform="matrix(1,0,0,0.54123709,0,26.485054)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2"
+       id="radialGradient4274-5"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <linearGradient
+       id="linearGradient4210-2">
+      <stop
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4212-1" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0"
+         id="stop4214-4" />
+    </linearGradient>
+    <radialGradient
+       gradientTransform="matrix(1,0,0,0.54123709,0,26.485054)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2"
+       id="radialGradient4340-8"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <radialGradient
+       gradientTransform="matrix(1,0,0,0.54123709,0,26.485054)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2-4"
+       id="radialGradient4340-8-6"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <linearGradient
+       id="linearGradient4210-2-4">
+      <stop
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4212-1-6" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0"
+         id="stop4214-4-8" />
+    </linearGradient>
+    <radialGradient
+       gradientTransform="matrix(1,0,0,0.54123709,0,26.485054)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2-4"
+       id="radialGradient4415"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <radialGradient
+       gradientTransform="matrix(1,0,0,0.54123709,0,26.485054)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2-3"
+       id="radialGradient4340-8-8"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <linearGradient
+       id="linearGradient4210-2-3">
+      <stop
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4212-1-5" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0"
+         id="stop4214-4-5" />
+    </linearGradient>
+    <radialGradient
+       gradientTransform="matrix(1,0,0,0.54123709,0,26.485054)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2-3"
+       id="radialGradient4415-1"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <radialGradient
+       gradientTransform="matrix(1,0,0,0.54123709,0,26.485054)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2-0"
+       id="radialGradient4340-8-84"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <linearGradient
+       id="linearGradient4210-2-0">
+      <stop
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4212-1-54" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0"
+         id="stop4214-4-7" />
+    </linearGradient>
+    <radialGradient
+       gradientTransform="matrix(1,0,0,0.54123709,0,26.485054)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2-3-9"
+       id="radialGradient4415-1-4"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <linearGradient
+       id="linearGradient4210-2-3-9">
+      <stop
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4212-1-5-9" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:0"
+         id="stop4214-4-5-0" />
+    </linearGradient>
+    <radialGradient
+       gradientTransform="matrix(0.65151222,0.04277634,0.03936026,0.47213658,-8.6592181,31.25831)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2-3"
+       id="radialGradient6618"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <radialGradient
+       spreadMethod="pad"
+       gradientTransform="matrix(1.2952826,-0.73392069,1.5862587,2.799558,-218.16556,-67.610244)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient6610"
+       id="radialGradient6622"
+       fy="80.847961"
+       fx="124.29823"
+       r="150.92255"
+       cy="80.847961"
+       cx="124.29823" />
+    <radialGradient
+       gradientTransform="matrix(0.65151222,0.04277634,0.03936026,0.47213658,-8.6592181,31.25831)"
+       gradientUnits="userSpaceOnUse"
+       xlink:href="#linearGradient4210-2-3"
+       id="radialGradient6678"
+       fy="57.731464"
+       fx="-18.32745"
+       r="59.258755"
+       cy="57.731464"
+       cx="-18.32745" />
+    <radialGradient
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(1.8102804,0.70679848,-0.55095767,1.4111345,-47.516314,102.16427)"
+       r="229.28766"
+       fy="-69.930733"
+       fx="14.18369"
+       cy="-69.930733"
+       cx="14.18369"
+       id="radialGradient4149-6"
+       xlink:href="#linearGradient4133-6" />
+    <linearGradient
+       id="linearGradient4133-6">
+      <stop
+         id="stop4135-6"
+         offset="0"
+         style="stop-color:#009dd4;stop-opacity:1;" />
+      <stop
+         id="stop4137-2"
+         offset="1"
+         style="stop-color:#042531;stop-opacity:1;" />
+    </linearGradient>
+    <radialGradient
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="matrix(0.2679519,-1.0643832,1.6216596,0.52032408,94.223231,452.24627)"
+       r="201.43971"
+       fy="70.297905"
+       fx="348.28326"
+       cy="70.297905"
+       cx="348.28326"
+       id="radialGradient4148-0"
+       xlink:href="#linearGradient4131-5" />
+    <linearGradient
+       id="linearGradient4131-5">
+      <stop
+         id="stop4133-5"
+         offset="0"
+         style="stop-color:#ffffff;stop-opacity:1;" />
+      <stop
+         id="stop4136-2"
+         offset="1"
+         style="stop-color:#cfcfcf;stop-opacity:1;" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-0.58782423"
+       x2="25.171864"
+       y1="67.22374"
+       x1="55.58728"
+       id="linearGradient5041"
+       xlink:href="#linearGradient4487-2-17" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-37.236683"
+       x2="63.488171"
+       y1="97.311302"
+       x1="146.35838"
+       id="linearGradient5057"
+       xlink:href="#linearGradient6078-7" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-0.58782423"
+       x2="25.171864"
+       y1="67.22374"
+       x1="55.58728"
+       id="linearGradient5041-0"
+       xlink:href="#linearGradient4487-2-17-0" />
+    <linearGradient
+       id="linearGradient4487-2-17-0">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40-0" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9-7" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-37.236683"
+       x2="63.488171"
+       y1="97.311302"
+       x1="146.35838"
+       id="linearGradient5057-2"
+       xlink:href="#linearGradient6078-7-5"
+       gradientTransform="translate(139.99999,6.5396972e-6)" />
+    <linearGradient
+       id="linearGradient6078-7-5">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6080-1-5" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6082-0-2" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-0"
+       id="linearGradient5079"
+       gradientUnits="userSpaceOnUse"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423"
+       gradientTransform="translate(139.99999,-1.0896973e-6)" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-0.58782423"
+       x2="25.171864"
+       y1="67.22374"
+       x1="55.58728"
+       id="linearGradient5041-8"
+       xlink:href="#linearGradient4487-2-17-6" />
+    <linearGradient
+       id="linearGradient4487-2-17-6">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40-4" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9-6" />
+    </linearGradient>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-37.236683"
+       x2="63.488171"
+       y1="97.311302"
+       x1="146.35838"
+       id="linearGradient5057-8"
+       xlink:href="#linearGradient6078-7-9"
+       gradientTransform="translate(280.00002,4.5805664e-7)" />
+    <linearGradient
+       id="linearGradient6078-7-9">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6080-1-8" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6082-0-3" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-6"
+       id="linearGradient5079-5"
+       gradientUnits="userSpaceOnUse"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423"
+       gradientTransform="translate(280.00002,4.5805664e-7)" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-37.236683"
+       x2="63.488171"
+       y1="97.311302"
+       x1="146.35838"
+       id="linearGradient5057-5"
+       xlink:href="#linearGradient6078-7-58" />
+    <linearGradient
+       id="linearGradient6078-7-58">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6080-1-4" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6082-0-0" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient6078-7-58"
+       id="linearGradient5150"
+       gradientUnits="userSpaceOnUse"
+       x1="146.35838"
+       y1="97.311302"
+       x2="63.488171"
+       y2="-37.236683"
+       gradientTransform="translate(-69.999989,70.000003)" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-0.58782423"
+       x2="25.171864"
+       y1="67.22374"
+       x1="55.58728"
+       id="linearGradient5041-4"
+       xlink:href="#linearGradient4487-2-17-7" />
+    <linearGradient
+       id="linearGradient4487-2-17-7">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40-2" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9-1" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-7"
+       id="linearGradient5184"
+       gradientUnits="userSpaceOnUse"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423"
+       gradientTransform="translate(69.999997,70.000001)" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-0.58782423"
+       x2="25.171864"
+       y1="67.22374"
+       x1="55.58728"
+       id="linearGradient5041-9"
+       xlink:href="#linearGradient4487-2-17-9"
+       gradientTransform="translate(-3.0646973e-6,140.00001)" />
+    <linearGradient
+       id="linearGradient4487-2-17-9">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40-03" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9-0" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient6078-7-58-5"
+       id="linearGradient5150-3"
+       gradientUnits="userSpaceOnUse"
+       x1="146.35838"
+       y1="97.311302"
+       x2="63.488171"
+       y2="-37.236683"
+       gradientTransform="translate(-69.999989,70.000003)" />
+    <linearGradient
+       id="linearGradient6078-7-58-5">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6080-1-4-0" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6082-0-0-7" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient6078-7-58-5"
+       id="linearGradient5223"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(-69.999992,210.00001)"
+       x1="146.35838"
+       y1="97.311302"
+       x2="63.488171"
+       y2="-37.236683" />
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-7-3"
+       id="linearGradient5184-8"
+       gradientUnits="userSpaceOnUse"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423"
+       gradientTransform="translate(69.999997,70.000001)" />
+    <linearGradient
+       id="linearGradient4487-2-17-7-3">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40-2-6" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9-1-4" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-7-3"
+       id="linearGradient5267"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(69.999992,210)"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423" />
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-7-9"
+       id="linearGradient5184-1"
+       gradientUnits="userSpaceOnUse"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423"
+       gradientTransform="translate(69.999997,70.000001)" />
+    <linearGradient
+       id="linearGradient4487-2-17-7-9">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40-2-5" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9-1-5" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-7-9"
+       id="linearGradient5267-7"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(209.99999,210.00002)"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-37.236683"
+       x2="63.488171"
+       y1="97.311302"
+       x1="146.35838"
+       id="linearGradient5057-3"
+       xlink:href="#linearGradient6078-7-4" />
+    <linearGradient
+       id="linearGradient6078-7-4">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6080-1-0" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6082-0-8" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient6078-7-4"
+       id="linearGradient5318"
+       gradientUnits="userSpaceOnUse"
+       x1="146.35838"
+       y1="97.311302"
+       x2="63.488171"
+       y2="-37.236683"
+       gradientTransform="translate(70.000007,210.00001)" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-37.236683"
+       x2="63.488171"
+       y1="97.311302"
+       x1="146.35838"
+       id="linearGradient5057-1"
+       xlink:href="#linearGradient6078-7-52" />
+    <linearGradient
+       id="linearGradient6078-7-52">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6080-1-3" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6082-0-24" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient6078-7-52"
+       id="linearGradient5318-6"
+       gradientUnits="userSpaceOnUse"
+       x1="146.35838"
+       y1="97.311302"
+       x2="63.488171"
+       y2="-37.236683"
+       gradientTransform="translate(210.00001,210.00003)" />
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-7-2"
+       id="linearGradient5184-6"
+       gradientUnits="userSpaceOnUse"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423"
+       gradientTransform="translate(69.999997,70.000001)" />
+    <linearGradient
+       id="linearGradient4487-2-17-7-2">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40-2-9" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9-1-0" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-7-2"
+       id="linearGradient5369"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(350.00001,69.999997)"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423" />
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-7-1"
+       id="linearGradient5184-3"
+       gradientUnits="userSpaceOnUse"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423"
+       gradientTransform="translate(69.999997,70.000001)" />
+    <linearGradient
+       id="linearGradient4487-2-17-7-1">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40-2-1" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9-1-9" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-7-1"
+       id="linearGradient5369-9"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(349.99998,210.00001)"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423" />
+    <linearGradient
+       xlink:href="#linearGradient6078-7-52-5"
+       id="linearGradient5318-6-5"
+       gradientUnits="userSpaceOnUse"
+       x1="146.35838"
+       y1="97.311302"
+       x2="63.488171"
+       y2="-37.236683"
+       gradientTransform="translate(210.00001,210.00003)" />
+    <linearGradient
+       id="linearGradient6078-7-52-5">
+      <stop
+         offset="0"
+         style="stop-color:#98bf0c;stop-opacity:1"
+         id="stop6080-1-3-6" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop6082-0-24-0" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient6078-7-52-5"
+       id="linearGradient5420"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(280.00001,140.00004)"
+       x1="146.35838"
+       y1="97.311302"
+       x2="63.488171"
+       y2="-37.236683" />
+    <linearGradient
+       gradientTransform="translate(4.1204272e-6,0)"
+       gradientUnits="userSpaceOnUse"
+       y2="2.6277814"
+       x2="282.51758"
+       y1="189.24405"
+       x1="306.31415"
+       id="linearGradient5457"
+       xlink:href="#linearGradient6078-7-52-5" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="73.530258"
+       x2="335.16684"
+       y1="203.12489"
+       x1="336.48462"
+       id="linearGradient5465"
+       xlink:href="#linearGradient4487-2-17-7-1" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="91.254097"
+       x2="243.81149"
+       y1="155.18745"
+       x1="238.62624"
+       id="linearGradient5473"
+       xlink:href="#linearGradient5467" />
+    <filter
+       height="1.0369459"
+       y="-0.018472944"
+       width="1.2401636"
+       x="-0.12008178"
+       id="filter5514">
+      <feGaussianBlur
+         id="feGaussianBlur5516"
+         stdDeviation="1.3162602" />
+    </filter>
+    <filter
+       height="1.5779421"
+       y="-0.28897107"
+       width="1.0211442"
+       x="-0.010572113"
+       id="filter5526">
+      <feGaussianBlur
+         id="feGaussianBlur5528"
+         stdDeviation="1.5446967" />
+    </filter>
+    <filter
+       height="1.6021358"
+       y="-0.30106789"
+       width="1.0220294"
+       x="-0.01101468"
+       id="filter5534">
+      <feGaussianBlur
+         id="feGaussianBlur5536"
+         stdDeviation="1.6093603" />
+    </filter>
+    <filter
+       height="1.0369459"
+       y="-0.018472943"
+       width="1.2401636"
+       x="-0.12008178"
+       id="filter5514-1"
+       color-interpolation-filters="sRGB">
+      <feGaussianBlur
+         id="feGaussianBlur5516-8"
+         stdDeviation="1.3162602" />
+    </filter>
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="-0.58782423"
+       x2="25.171864"
+       y1="67.22374"
+       x1="55.58728"
+       id="linearGradient5041-9-1"
+       xlink:href="#linearGradient4487-2-17-9-7"
+       gradientTransform="translate(-3.0646973e-6,140.00001)" />
+    <linearGradient
+       id="linearGradient4487-2-17-9-7">
+      <stop
+         offset="0"
+         style="stop-color:#009bba;stop-opacity:1"
+         id="stop4489-8-40-03-4" />
+      <stop
+         offset="1"
+         style="stop-color:#ffffff;stop-opacity:1"
+         id="stop4491-2-9-0-0" />
+    </linearGradient>
+    <linearGradient
+       xlink:href="#linearGradient4487-2-17-9-7"
+       id="linearGradient3311"
+       gradientUnits="userSpaceOnUse"
+       gradientTransform="translate(248.09874,144.2953)"
+       x1="55.58728"
+       y1="67.22374"
+       x2="25.171864"
+       y2="-0.58782423" />
+    <linearGradient
+       y2="2.6277814"
+       x2="282.51758"
+       y1="189.24405"
+       x1="306.31415"
+       gradientTransform="translate(4.1204272e-6,0)"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3336"
+       xlink:href="#linearGradient6078-7-52-5" />
+    <linearGradient
+       y2="73.530258"
+       x2="335.16684"
+       y1="203.12489"
+       x1="336.48462"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3338"
+       xlink:href="#linearGradient4487-2-17-7-1" />
+    <linearGradient
+       y2="91.254097"
+       x2="243.81149"
+       y1="155.18745"
+       x1="238.62624"
+       gradientUnits="userSpaceOnUse"
+       id="linearGradient3340"
+       xlink:href="#linearGradient5467" />
+    <linearGradient
+       gradientUnits="userSpaceOnUse"
+       y2="153.68796"
+       x2="63.857231"
+       y1="237.49248"
+       x1="282.03552"
+       id="linearGradient4184"
+       xlink:href="#linearGradient4178" />
+  </defs>
+  <metadata
+     id="metadata7">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <rect
+     ry="0"
+     y="0.5"
+     x="0.5"
+     height="349"
+     width="459"
+     id="rect4140-7-0"
+     style="fill:#ffffff;fill-opacity:1;stroke:#7b888c;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+  <path
+     transform="matrix(0,0.76112637,-1.5607472,0,504.55256,-0.76375969)"
+     d="m 406.25845,311.81781 a 175.3326,6.4146075 0 1 1 -350.665188,0 175.3326,6.4146075 0 1 1 350.665188,0 z"
+     id="path4559-0-7-8-6"
+     style="fill:#bcbcbc;fill-opacity:1;stroke:none;filter:url(#filter5514-1)" />
+  <path
+     transform="matrix(0,0.76112637,-1.5607472,0,926.1545,-0.76375969)"
+     d="m 406.25845,311.81781 a 175.3326,6.4146075 0 1 1 -350.665188,0 175.3326,6.4146075 0 1 1 350.665188,0 z"
+     id="path4559-0-7-8"
+     style="fill:#bcbcbc;fill-opacity:1;stroke:none;filter:url(#filter5514)" />
+  <path
+     transform="matrix(1.0942363,0,0,1.5607472,-25.732135,-457.31158)"
+     d="m 406.25845,311.81781 a 175.3326,6.4146075 0 1 1 -350.665188,0 175.3326,6.4146075 0 1 1 350.665188,0 z"
+     id="path4559-0-7"
+     style="fill:#bcbcbc;fill-opacity:1;stroke:none;filter:url(#filter5526)" />
+  <path
+     transform="matrix(1.0942363,0,0,1.4255153,-21.867108,-120.90925)"
+     d="m 406.25845,311.81781 a 175.3326,6.4146075 0 1 1 -350.665188,0 175.3326,6.4146075 0 1 1 350.665188,0 z"
+     id="path4559-0"
+     style="fill:#bcbcbc;fill-opacity:1;stroke:none;filter:url(#filter5534)" />
+  <rect
+     ry="0"
+     y="23.750427"
+     x="10.402513"
+     height="302.49915"
+     width="435.71756"
+     id="rect4140-7"
+     style="fill:#ffffff;fill-opacity:1;stroke:#7b888c;stroke-width:1;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0" />
+  <rect
+     ry="14.117647"
+     y="110.27831"
+     x="373.2088"
+     height="60"
+     width="60"
+     id="rect4061-1-4-49"
+     style="fill:url(#linearGradient5369);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="250.27832"
+     x="373.2088"
+     height="60"
+     width="60"
+     id="rect4061-1-4-5"
+     style="fill:url(#linearGradient5369-9);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="180.27832"
+     x="373.2088"
+     height="60"
+     width="60"
+     id="rect4061-1-9-6-5"
+     style="fill:url(#linearGradient5420);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="250.27832"
+     x="93.208786"
+     height="60"
+     width="60"
+     id="rect4061-1-4-4"
+     style="fill:url(#linearGradient5267);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="250.27832"
+     x="233.20879"
+     height="60"
+     width="60"
+     id="rect4061-1-4-47"
+     style="fill:url(#linearGradient5267-7);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="250.27832"
+     x="163.20879"
+     height="60"
+     width="60"
+     id="rect4061-1-9-8"
+     style="fill:url(#linearGradient5318);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="250.27832"
+     x="303.2088"
+     height="60"
+     width="60"
+     id="rect4061-1-9-6"
+     style="fill:url(#linearGradient5318-6);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="250.27832"
+     x="23.208786"
+     height="60"
+     width="60"
+     id="rect4061-1-9-5-6"
+     style="fill:url(#linearGradient5223);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="180.27832"
+     x="23.208786"
+     height="60"
+     width="60"
+     id="rect4061-1-7"
+     style="fill:url(#linearGradient5041-9);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="110.27831"
+     x="93.208786"
+     height="60"
+     width="60"
+     id="rect4061-1-4"
+     style="fill:url(#linearGradient5184);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="110.27831"
+     x="23.208786"
+     height="60"
+     width="60"
+     id="rect4061-1-9-5"
+     style="fill:url(#linearGradient5150);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="40.278313"
+     x="163.20879"
+     height="60"
+     width="60"
+     id="rect4061-1-1"
+     style="fill:url(#linearGradient5079);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="40.27832"
+     x="233.20879"
+     height="60"
+     width="60"
+     id="rect4061-1-9-4"
+     style="fill:url(#linearGradient5057-2);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="40.278313"
+     x="303.2088"
+     height="60"
+     width="60"
+     id="rect4061-1-5"
+     style="fill:url(#linearGradient5079-5);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="40.278313"
+     x="373.2088"
+     height="60"
+     width="60"
+     id="rect4061-1-9-1"
+     style="fill:url(#linearGradient5057-8);fill-opacity:1;stroke:none" />
+  <g
+     id="layer1"
+     transform="translate(0,-702.3608)" />
+  <g
+     style="display:inline"
+     id="layer2"
+     transform="translate(0,-702.3608)" />
+  <g
+     style="font-size:20px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#009ec0;fill-opacity:1;stroke:none;font-family:Sans"
+     id="flowRoot3968-7-0"
+     transform="matrix(0.67199261,0,0,0.67199261,96.12914,-16.0749)" />
+  <g
+     transform="translate(0,0.28967969)"
+     id="g3330">
+    <path
+       d="m 270.89196,239.20545 c -0.0639,-23.05204 9.54676,-45.04298 22.20054,-63.9186 3.59244,-6.13412 9.69281,-10.90495 11.21058,-18.11335 1.54544,-5.54285 -3.40626,-8.00556 -9.11895,-8.40739 -7.40037,-0.85781 -16.43064,-3.22597 -19.45355,-10.86571 -2.28339,-7.8022 2.84949,-16.02668 9.31952,-20.1318 7.20667,-4.59838 15.83114,-6.35644 24.2564,-6.89417 1.79208,-0.10323 2.13258,-0.19906 6.32105,0.0572 8.04141,0.33614 15.60142,5.83362 17.70242,13.71499 3.06535,10.66315 0.94049,22.19706 -3.08034,32.32141 -4.93188,11.91304 -12.37332,22.60843 -20.70789,32.3728 -9.62248,12.82801 -13.20778,29.36859 -11.94533,45.1779 -9.0432,2.67056 -22.24637,4.79479 -26.70445,4.68676 z"
+       id="path3031-7-5"
+       style="fill:url(#linearGradient3336);fill-opacity:1;stroke:none" />
+    <path
+       d="m 299.59461,233.85281 c -1.51577,-17.75955 3.5576,-36.48042 15.92624,-49.6506 9.03515,-11.5824 17.18928,-24.53651 20.13917,-39.11991 1.75417,-9.45871 1.98141,-20.58939 -4.75007,-28.25267 -1.21904,-1.45794 -6.64925,-4.35874 -1.94535,-2.66896 4.83272,1.3475 7.42599,4.27586 9.95344,7.78211 13.39279,17.26054 18.06599,41.04441 11.34875,61.92978 -7.28568,23.73809 -27.46701,42.14487 -50.67218,49.98025 z"
+       id="path3029-6-0"
+       style="fill:url(#linearGradient3338);fill-opacity:1;stroke:none" />
+    <path
+       d="m 198.02,194.91263 c 0.67464,-21.64902 11.89634,-42.85087 29.95998,-54.97968 14.33302,-9.85537 31.65018,-14.40823 48.80126,-15.96996 -2.94507,4.63376 -4.77207,10.93406 -2.06506,16.17765 1.55527,3.54954 6.32701,5.32428 5.76859,5.63436 -24.65703,0.0217 -50.10988,8.73105 -67.19398,27.01274 -6.38079,6.74189 -11.41439,14.6824 -15.22417,23.12777 -0.0552,-0.3311 -0.0409,-0.6683 -0.0467,-1.00288 z"
+       id="path3045-1-9"
+       style="fill:url(#linearGradient3340);fill-opacity:1;stroke:none" />
+    <path
+       d="m 304.16742,128.54496 c -1.39382,-0.15525 -2.51112,-0.51301 -3.30602,-1.05858 -0.35423,-0.24314 -0.74399,-0.67034 -0.90944,-0.99686 -0.13752,-0.27136 -0.15275,-0.35006 -0.15275,-0.78957 0,-0.4316 0.0167,-0.5224 0.1451,-0.78362 0.75916,-1.54581 3.62169,-2.5717 6.41463,-2.2989 1.61568,0.15781 2.8959,0.65051 3.67013,1.4125 0.51727,0.5091 0.66497,0.82865 0.66497,1.43878 0,0.61455 -0.14546,0.92433 -0.68967,1.46883 -1.0165,1.01703 -2.94915,1.65247 -4.9633,1.63193 -0.39571,-0.004 -0.78885,-0.015 -0.87365,-0.0246 z"
+       id="path3027-4-0"
+       style="fill:#1f211c;fill-opacity:1;stroke:none" />
+  </g>
+  <g
+     id="text3289"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.88242245px;line-height:0%;font-family:'Indie Flower';-inkscape-font-specification:'Indie Flower';letter-spacing:0px;word-spacing:0px;fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
+     aria-label="Papyrus">
+    <path
+       id="path4836"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:46.47959137px;line-height:1.25;font-family:'Indie Flower';-inkscape-font-specification:'Indie Flower';fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
+       d="m 112.59412,222.20099 q -0.63546,-1.13476 -1.08937,-2.90498 -0.40851,-1.8156 -0.72624,-3.76738 -0.27234,-1.95178 -0.4539,-3.67661 -0.18156,-1.72483 -0.36312,-2.72342 v -7.80712 q 0,-0.49929 0.40851,-0.9078 0.40851,-0.4539 0.9078,-0.4539 0.0908,0 0.22695,0 0.13617,0 0.18156,0 0.18157,1.22553 0.27235,2.54185 0.0908,1.27093 0.13617,2.54185 0.0908,1.27093 0.31773,2.54186 0.18156,1.27092 0.59007,2.45107 0.72624,0.18156 1.58866,0.27234 0.81702,0 1.90639,0.0908 1.18014,0 2.54185,-0.36312 1.4071,-0.40851 2.58724,-1.13476 1.18015,-0.72624 1.95178,-1.77022 0.81703,-1.08936 0.81703,-2.40568 0,-1.45249 -0.9532,-2.54185 -0.95319,-1.13476 -2.45107,-1.99717 -1.49788,-0.86242 -3.31349,-1.49788 -1.8156,-0.63546 -3.58582,-0.99858 -1.72483,-0.40852 -3.22271,-0.59008 -1.49788,-0.18156 -2.3149,-0.18156 -0.27234,0 -0.99859,-0.0454 -0.72624,-0.0454 -1.63404,0 -0.86242,0 -1.67944,0.0908 -0.81703,0.0908 -1.27093,0.36312 -0.40851,0.22696 -0.77163,0.81703 -0.31773,0.59007 -0.63547,1.22554 -0.31773,0.59007 -0.68085,1.04397 -0.31773,0.4539 -0.72624,0.4539 h -0.0908 q -0.0454,0 -0.136174,-0.0454 -0.09078,-0.0454 -0.13617,-0.13617 -0.04539,-0.0908 -0.136171,-0.4539 -0.04539,-0.36312 -0.09078,-1.04398 -0.04539,-0.68085 -0.04539,-1.861 0,-0.49929 0.453903,-0.9078 0.499293,-0.4539 1.270923,-0.77163 0.81703,-0.31773 1.72483,-0.54469 0.90781,-0.27234 1.72483,-0.40851 0.86241,-0.18156 1.49788,-0.27234 0.68085,-0.0908 0.9078,-0.0908 1.54327,0 3.58583,0.18156 2.08795,0.18156 4.26668,0.68085 2.22412,0.45391 4.35746,1.27093 2.17873,0.77163 3.85817,1.95178 1.67944,1.13476 2.76881,2.7688 1.04397,1.58866 1.04397,3.76739 0.22695,1.54327 -0.54468,2.85959 -0.77164,1.27092 -2.13334,2.3149 -1.31632,0.99858 -2.99576,1.77022 -1.67944,0.72624 -3.26809,1.18014 -1.58866,0.40852 -2.85959,0.54469 -1.27092,0.0908 -1.77022,-0.13617 v 0.40851 q 0,1.58866 0.27234,3.13192 0.27235,1.54327 0.27235,3.13193 0,0.18156 -0.0454,0.59007 -0.0454,0.36312 -0.22696,0.72625 -0.13617,0.36312 -0.40851,0.59007 -0.22695,0.22695 -0.68085,0.13617 z" />
+    <path
+       id="path4838"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:46.47959137px;line-height:1.25;font-family:'Indie Flower';-inkscape-font-specification:'Indie Flower';fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
+       d="m 128.70765,214.53004 q 0.0454,-0.77163 0.4539,-1.77022 0.40851,-0.99858 1.27093,-1.95178 0.86241,-0.95319 2.17873,-1.67944 1.31632,-0.77163 3.08653,-1.08936 1.81561,-0.31773 4.08513,-0.0454 2.3149,0.27234 5.12909,1.3617 0,-0.0454 0,-0.4539 l -0.0454,-0.40851 q 0,-1.18015 -0.68085,-2.40568 -0.68086,-1.22554 -1.77022,-2.17873 -1.04398,-0.99859 -2.26951,-1.58866 -1.22554,-0.63546 -2.36029,-0.63546 -0.45391,0 -0.81703,0.13617 -0.31773,0.13617 -0.63546,0.36312 -0.31773,0.18156 -0.63547,0.36312 -0.27234,0.13617 -0.68085,0.13617 -0.0908,0 -0.0908,-0.0454 -0.0454,-0.0454 -0.0908,-0.0908 -0.0908,-0.0908 -0.27234,-0.22695 -0.13617,-0.13617 -0.13617,-0.18156 0,-0.81703 0.27234,-1.4071 0.31773,-0.59007 0.81702,-0.95319 0.54469,-0.36312 1.18015,-0.54469 0.68085,-0.22695 1.4071,-0.22695 1.81561,0.18156 3.44965,1.13476 1.67944,0.9078 3.04115,2.3149 1.4071,1.4071 2.45107,3.2681 1.04398,1.81561 1.72483,3.81278 0.72624,1.95178 0.95319,3.94895 0.27235,2.08795 0.0454,3.90355 -0.0454,0 -0.27234,0 -0.22695,-0.0454 -0.49929,-0.0454 -0.27234,-0.0454 -0.4539,-0.0908 l -0.22695,-0.0454 q -0.9532,-2.13334 -2.13334,-3.44965 -1.18015,-1.31632 -2.36029,-2.04256 -1.13476,-0.77164 -2.13335,-1.04398 -0.99858,-0.31773 -1.63404,-0.4539 -0.68086,0 -1.63405,0.0908 -0.90781,0.0908 -1.90639,0.31773 -0.99859,0.22695 -2.04256,0.63546 -0.99859,0.36313 -1.81561,0.90781 -0.77163,0.54468 -1.27093,1.31632 -0.4539,0.72624 -0.4539,1.72482 0,1.08937 0.86242,1.861 0.86241,0.72625 2.08795,1.22554 1.22553,0.4539 2.49646,0.63546 1.27092,0.18156 2.04256,0.18156 1.27092,0 2.49646,-0.13617 1.22554,-0.13617 2.40568,-0.31773 1.22554,-0.18156 2.40568,-0.31773 1.18015,-0.13617 2.3603,-0.13617 0.0908,0 0.31773,0 0.22695,0 0.4539,0.0454 0.27234,0 0.4539,0 0.22695,0 0.31773,0 0.36313,0.13617 0.40852,0.40851 0.0454,0.27234 0.0454,0.54468 0,0.27235 -0.59008,0.59008 -0.54468,0.31773 -1.45248,0.63546 -0.90781,0.31773 -2.04256,0.68085 -1.08937,0.31773 -2.13334,0.54469 -0.99859,0.22695 -1.90639,0.40851 -0.86242,0.13617 -1.22554,0.13617 -1.90639,0 -4.03973,-0.31773 -2.13334,-0.31773 -3.90356,-1.13476 -1.77022,-0.86241 -2.95036,-2.36029 -1.13476,-1.49788 -1.13476,-3.85817 z" />
+    <path
+       id="path4840"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:46.47959137px;line-height:1.25;font-family:'Indie Flower';-inkscape-font-specification:'Indie Flower';fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
+       d="m 152.21979,216.25487 q 0,-2.85959 0.99858,-4.81136 0.99859,-1.95178 2.63263,-3.13193 1.67944,-1.18015 3.85817,-1.72483 2.22412,-0.54468 4.62981,-0.54468 1.95178,0 3.76739,0.63546 1.86099,0.63546 3.31348,1.77022 1.45249,1.13476 2.3149,2.7688 0.86242,1.63405 0.86242,3.722 0,1.81561 -0.68086,2.99576 -0.68085,1.13475 -1.86099,1.81561 -1.18015,0.63546 -2.63264,0.9078 -1.40709,0.27234 -2.90497,0.27234 -1.45249,0 -2.99576,-0.13617 -1.49787,-0.13617 -2.7688,-0.63546 -1.27093,-0.49929 -2.08795,-1.49788 -0.81703,-0.99858 -0.81703,-2.81419 0.9532,0 1.81561,0.40851 0.90781,0.36312 1.81561,0.81702 0.90781,0.40852 1.81561,0.77164 0.86242,0.40851 1.861,0.40851 0.72624,0 1.90639,-0.13617 1.22554,-0.13617 2.26951,-0.49929 1.08937,-0.40852 1.861,-1.08937 0.77163,-0.68085 0.77163,-1.72483 0,-1.54327 -0.68085,-2.67802 -0.68085,-1.13476 -1.77022,-1.861 -1.08936,-0.77163 -2.45107,-1.18015 -1.36171,-0.40851 -2.72341,-0.40851 -0.18156,0 -0.90781,0.0908 -0.68085,0.0908 -1.58866,0.31773 -0.9078,0.18156 -1.90639,0.4993 -0.99858,0.27234 -1.86099,0.72624 -0.81703,0.40851 -1.36171,0.95319 -0.54468,0.54469 -0.54468,1.22554 v 0.54468 q 0.0454,0.4993 0.0908,1.36171 0.0908,0.81702 0.13617,1.67944 0.0454,0.81702 0.13617,1.45249 0.0908,0.63546 0.0908,0.72624 0.0908,0.72624 0.31773,2.26951 0.22695,1.49788 0.49929,3.35888 0.27234,1.90639 0.59008,3.99434 0.36312,2.08795 0.68085,3.94895 0.31773,1.90639 0.54468,3.40426 0.27234,1.49788 0.40851,2.17873 0,0.0908 0,0.13618 0.0454,0.0908 0.0454,0.13617 0,0.0454 0,0.0454 l -0.0454,0.0908 v 0.0908 q -0.0908,0.13617 -0.40851,0.4539 -0.36312,0.27234 -0.4539,0.36312 h -0.27234 q -0.4539,0 -0.9532,-0.86241 -0.49929,-0.81703 -1.04397,-2.26951 -0.49929,-1.4071 -1.04398,-3.2681 -0.49929,-1.861 -0.99858,-3.85817 -0.49929,-1.99717 -0.90781,-3.94895 -0.40851,-1.95178 -0.72624,-3.63122 -0.31773,-1.67944 -0.49929,-2.90497 -0.13617,-1.22554 -0.13617,-1.72483 z" />
+    <path
+       id="path4842"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:46.47959137px;line-height:1.25;font-family:'Indie Flower';-inkscape-font-specification:'Indie Flower';fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
+       d="m 177.68371,236.36274 q 0,-0.31773 0,-0.63546 0,-0.27235 0.0908,-0.4993 0.0908,-0.18156 0.27234,-0.31773 0.27234,-0.0908 0.63546,-0.0908 0.68086,0.77164 1.72483,1.95178 1.08937,1.22554 2.45107,2.36029 1.36171,1.13476 2.85959,1.99717 1.49787,0.86242 3.04114,0.86242 1.27093,-0.0454 2.17873,-0.68086 0.90781,-0.59007 1.54327,-1.58865 0.63546,-0.99859 1.04398,-2.26952 0.40851,-1.27092 0.63546,-2.58724 0.27234,-1.31631 0.36312,-2.54185 0.13617,-1.22554 0.27234,-2.13334 0.0908,-0.4539 0.18156,-1.54327 0.13617,-1.04397 0.22695,-2.36029 0.13617,-1.27093 0.18157,-2.67802 0.0908,-1.4071 0,-2.54186 -0.0908,-1.18014 -0.36313,-1.90639 -0.27234,-0.77163 -0.81702,-0.77163 -0.77163,0 -1.63405,0.4539 -0.86241,0.4539 -1.81561,1.04398 -0.9078,0.54468 -1.861,0.99858 -0.95319,0.4539 -1.861,0.4539 -1.72483,0 -3.17731,-0.68085 -1.4071,-0.72624 -2.58725,-1.861 -1.18014,-1.13475 -2.08795,-2.63263 -0.9078,-1.54327 -1.54326,-3.17732 -0.59008,-1.63405 -0.90781,-3.26809 -0.27234,-1.63405 -0.27234,-3.08654 0,-0.31773 -0.0908,-1.04397 -0.0454,-0.72625 0.0454,-1.49788 0.0908,-0.77164 0.40851,-1.36171 0.31773,-0.59007 0.99859,-0.59007 0.18156,0 0.27234,0.72624 0.13617,0.72625 0.27234,1.90639 0.18156,1.13476 0.40851,2.63264 0.27234,1.49787 0.68086,3.04114 0.40851,1.54327 0.99858,3.04115 0.59007,1.49787 1.45249,2.67802 0.86241,1.13475 2.04256,1.861 1.22553,0.72624 2.7688,0.72624 0.99859,0 2.08795,-0.40851 1.08937,-0.4539 2.04256,-1.13476 0.99859,-0.68085 1.81561,-1.54326 0.81703,-0.90781 1.27093,-1.77022 0,-0.18156 -0.0454,-0.86242 -0.0454,-0.68085 -0.0908,-1.54326 -0.0454,-0.90781 -0.0908,-1.95178 -0.0454,-1.04398 -0.0908,-1.95178 -0.0454,-0.9532 -0.0908,-1.63405 0,-0.68086 0,-0.86242 0.0908,-2.7688 0.40851,-3.35887 0.31773,-0.63547 0.77163,0.36312 0.4539,0.99858 0.9532,3.35888 0.49929,2.36029 0.9078,5.5376 0.4539,3.13193 0.68085,6.85393 0.27235,3.722 0.22696,7.44399 -0.0454,3.76739 -0.4993,7.26244 -0.40851,3.49505 -1.3617,6.17307 -0.9532,2.72341 -2.49647,4.40285 -1.54326,1.67944 -3.81278,1.77022 -0.9078,0 -2.17873,-0.36312 -1.22553,-0.31773 -2.49646,-0.9078 -1.27092,-0.59008 -2.54185,-1.4071 -1.22554,-0.81703 -2.22412,-1.77022 -0.9532,-0.9532 -1.58866,-1.99717 -0.59007,-1.04398 -0.59007,-2.08795 z" />
+    <path
+       id="path4844"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:46.47959137px;line-height:1.25;font-family:'Indie Flower';-inkscape-font-specification:'Indie Flower';fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
+       d="m 203.28379,222.20099 q -0.99859,-1.81561 -1.72483,-3.94895 -0.72624,-2.13334 -1.22554,-4.31207 -0.49929,-2.17873 -0.81702,-4.22129 -0.27234,-2.08795 -0.36312,-3.76739 0,-0.31773 -0.0454,-0.68086 -0.0454,-0.40851 -0.0454,-0.81702 0.0454,-0.40851 0.13617,-0.77163 0.13617,-0.36313 0.40851,-0.63547 h 0.0908 q 0.0454,0 0.0454,0 0,-0.0454 0.0454,-0.0454 0.0454,0 0.0454,0.0454 0,0 0.0908,0 h 0.0908 q 0.0908,0.0454 0.4539,0.18156 0.36313,0.13618 0.45391,0.22696 0.81702,-0.27235 1.67943,-0.63547 0.86242,-0.40851 1.72483,-0.72624 0.90781,-0.36312 1.81561,-0.59007 0.90781,-0.22696 1.77022,-0.22696 0.63546,0 1.08937,0.0454 0.49929,0.0454 0.95319,0.18157 0.49929,0.0908 1.04398,0.27234 0.54468,0.13617 1.27092,0.36312 0.36312,0.27234 0.63547,0.54468 0.31773,0.22695 0.54468,0.54468 0.27234,0.31774 0.40851,0.77164 0.13617,0.4539 0.13617,1.18014 -0.72624,0.0908 -1.72483,-0.0908 -0.95319,-0.22695 -2.04256,-0.54468 -1.04397,-0.31773 -2.17873,-0.54468 -1.13475,-0.22695 -2.17873,-0.18156 -1.04397,0.0454 -1.95178,0.59007 -0.95319,0.4539 -1.67944,1.63405 -0.31773,1.31631 -0.27234,2.58724 0.0454,1.27093 0.31773,2.49646 0.27234,1.18015 0.68086,2.40569 0.4539,1.18014 0.81702,2.40568 0.40851,1.18014 0.72624,2.36029 0.31774,1.18015 0.40852,2.40568 0,0.4539 -0.4993,0.99859 -0.49929,0.49929 -1.13475,0.49929 z" />
+    <path
+       id="path4846"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:46.47959137px;line-height:1.25;font-family:'Indie Flower';-inkscape-font-specification:'Indie Flower';fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
+       d="m 231.87963,215.61941 q -1.04398,0.59007 -1.81561,1.45248 -0.72624,0.81703 -1.49788,1.58866 -0.77163,0.72624 -1.72482,1.27093 -0.90781,0.54468 -2.3603,0.54468 -1.63404,0 -2.95036,-0.68085 -1.31632,-0.72625 -2.36029,-1.90639 -0.99859,-1.22554 -1.77022,-2.72342 -0.72625,-1.54326 -1.22554,-3.13192 -0.4539,-1.63405 -0.72624,-3.17732 -0.22695,-1.58866 -0.22695,-2.85958 -0.36312,-2.45107 0.13617,-3.81278 0.49929,-1.4071 1.18014,-1.77022 0.72625,-0.40851 1.22554,0.18156 0.49929,0.54468 0.13617,1.95178 -0.0908,0.18156 -0.13617,0.59007 -0.0454,0.36313 -0.0908,0.77164 -0.0454,0.40851 -0.0908,0.77163 -0.0454,0.36312 -0.0454,0.49929 0,0.9532 0.18156,2.26952 0.18156,1.27092 0.54468,2.67802 0.40851,1.4071 0.99859,2.81419 0.59007,1.36171 1.40709,2.45107 0.81703,1.08937 1.861,1.77022 1.08937,0.68086 2.3603,0.68086 0.81702,0 1.86099,-0.77164 1.04398,-0.81702 1.95178,-1.90639 0.9532,-1.13475 1.58866,-2.3149 0.68086,-1.18014 0.68086,-1.99717 0,-0.4539 0,-1.49788 0.0454,-1.04397 0.0454,-2.22412 0,-1.18014 -0.0454,-2.22412 0,-1.04397 0,-1.45248 0.27234,-0.45391 0.59007,-0.68086 0.31773,-0.27234 0.77163,-0.27234 0.54469,0 0.90781,0.72624 0.36312,0.72625 0.59007,1.861 0.22695,1.13476 0.31773,2.45108 0.0908,1.31631 0.13617,2.54185 0.0454,1.22553 0.0908,2.17873 0.0454,0.9078 0.13617,1.22554 0.22695,0.9078 0.63547,2.04256 0.4539,1.13475 0.86241,2.22412 0.40851,1.04397 0.72624,1.95178 0.31774,0.86241 0.31774,1.31631 0,0.68086 -0.40852,0.81703 -0.36312,0.13617 -0.95319,0.13617 -0.72624,0 -1.08937,-0.36312 -0.31773,-0.36313 -0.49929,-0.90781 -0.13617,-0.59007 -0.22695,-1.27093 -0.0908,-0.68085 -0.31773,-1.40709 -0.18156,-0.72625 -0.59007,-1.36171 -0.36313,-0.63546 -1.08937,-1.04397 z" />
+    <path
+       id="path4848"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:46.47959137px;line-height:1.25;font-family:'Indie Flower';-inkscape-font-specification:'Indie Flower';fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
+       d="m 238.55199,216.70877 q 0.36312,-0.27234 0.63546,-0.31773 0.31774,-0.0908 0.68086,-0.0908 0.40851,0 0.81702,0.22695 0.40851,0.18156 0.72625,0.49929 0.36312,0.27234 0.72624,0.54469 0.36312,0.27234 0.77163,0.4539 1.18015,0.49929 1.861,0.81702 0.72625,0.31773 1.31632,0.49929 0.59007,0.18157 1.36171,0.22696 0.77163,0.0454 1.99717,0.0454 0.95319,0 2.3149,0.0454 1.3617,0 2.58724,-0.22696 1.22554,-0.27234 2.08795,-0.9078 0.86241,-0.68085 0.86241,-2.04256 0.0454,-1.31632 -0.72624,-2.04256 -0.72624,-0.77163 -1.99717,-1.18015 -1.27093,-0.40851 -2.85958,-0.54468 -1.58866,-0.18156 -3.2681,-0.36312 -1.67944,-0.18156 -3.31349,-0.49929 -1.58865,-0.36312 -2.85958,-1.08937 -1.27093,-0.72624 -2.04256,-1.99717 -0.77163,-1.27092 -0.81702,-3.26809 0.27234,-1.45249 1.40709,-2.40569 1.18015,-0.99858 2.76881,-1.49787 1.63404,-0.54469 3.44965,-0.54469 1.81561,-0.0454 3.31349,0.45391 1.54327,0.4539 2.54185,1.49787 1.04398,1.04398 1.08937,2.58725 0.0908,0.9078 -0.13617,1.49787 -0.22695,0.59008 -0.63547,0.90781 -0.36312,0.27234 -0.77163,0.27234 -0.40851,-0.0454 -0.63546,-0.31773 -0.22695,-0.31773 -0.22695,-0.86242 0.0454,-0.59007 0.54468,-1.45248 -0.18156,-0.86242 -1.04398,-1.36171 -0.86241,-0.49929 -1.99717,-0.68085 -1.13475,-0.22695 -2.45107,-0.0908 -1.27092,0.0908 -2.36029,0.4539 -1.04398,0.36312 -1.72483,0.95319 -0.63546,0.59008 -0.54468,1.36171 0,1.36171 0.77163,2.13334 0.81703,0.72624 2.08795,1.13476 1.27093,0.40851 2.90498,0.59007 1.67944,0.18156 3.40426,0.36312 1.77022,0.13617 3.40427,0.4539 1.63405,0.27234 2.95037,0.9532 1.31631,0.68085 2.08795,1.861 0.77163,1.13475 0.77163,2.99575 0,1.4071 -0.72624,2.45107 -0.72625,0.99859 -1.861,1.67944 -1.08937,0.68086 -2.40568,0.99859 -1.31632,0.31773 -2.49647,0.31773 -1.18014,0 -2.54185,0 -1.31632,-0.0454 -2.72341,-0.18156 -1.36171,-0.13617 -2.76881,-0.40851 -1.40709,-0.31774 -2.63263,-0.90781 -1.18015,-0.63546 -2.13334,-1.58866 -0.9532,-0.95319 -1.54327,-2.40568 z" />
+  </g>
+  <rect
+     ry="14.117647"
+     y="40.278313"
+     x="23.208786"
+     height="60"
+     width="60"
+     id="rect4061-1"
+     style="fill:url(#linearGradient5041);fill-opacity:1;stroke:none" />
+  <rect
+     ry="14.117647"
+     y="40.278313"
+     x="93.208786"
+     height="60"
+     width="60"
+     id="rect4061-1-9"
+     style="fill:url(#linearGradient5057);fill-opacity:1;stroke:none" />
+  <path
+     id="path4325"
+     d="m 37.785122,86.076798 c -1.380272,-1.380272 0.04883,-2.80937 1.477925,-4.238469 0.04883,-2.809372 -4.189641,-1.331446 -4.140817,-4.140817 0.04883,-2.809372 5.618746,-0.09766 8.428118,-0.146483 2.907031,-5.667574 2.907031,-5.667574 5.765229,-8.525774 -1.331446,-4.189644 -11.091004,-8.232804 -13.851548,-10.993348 -2.760545,-2.760545 0.09766,-5.618744 4.287301,-4.287301 4.189644,1.331444 11.13983,5.423432 16.709747,8.135149 4.287302,-4.2873 10.003701,-10.003699 12.813072,-10.052526 2.809376,-0.04883 2.809376,-0.04883 2.760544,2.760544 -0.04883,2.809372 -5.765226,8.525771 -10.052527,12.813071 2.711717,5.569916 6.803708,12.520106 8.135149,16.709749 1.331441,4.189643 -2.907029,5.667572 -5.667571,2.90703 -2.760547,-2.760548 -5.423434,-11.139834 -9.613078,-12.471279 -2.858199,2.8582 -2.858199,2.8582 -8.525773,5.765229 -0.04883,2.809372 2.662887,8.37929 -0.146485,8.428117 -2.809372,0.04883 -1.331444,-4.189644 -4.140816,-4.140817 -1.429098,1.429099 -2.858197,2.858197 -4.23847,1.477925 z"
+     style="fill:#ffffff;fill-opacity:1" />
+  <path
+     id="path4325-1"
+     d="m 247.78512,86.076801 c -1.38027,-1.380275 0.0488,-2.809373 1.47792,-4.238472 0.0488,-2.809372 -4.18964,-1.331446 -4.14081,-4.140817 0.0488,-2.809372 5.61874,-0.09766 8.42811,-0.146483 2.90704,-5.667574 2.90704,-5.667574 5.76523,-8.525774 -1.33144,-4.189644 -11.091,-8.232804 -13.85154,-10.993348 -2.76055,-2.760545 0.0977,-5.618744 4.2873,-4.287301 4.18964,1.331444 11.13983,5.423432 16.70974,8.135149 4.28731,-4.2873 10.00371,-10.003699 12.81308,-10.052526 2.80937,-0.04883 2.80937,-0.04883 2.76054,2.760544 -0.0488,2.809372 -5.76523,8.525771 -10.05253,12.813071 2.71172,5.569916 6.80371,12.520106 8.13515,16.709749 1.33144,4.189648 -2.90703,5.667568 -5.66757,2.907028 -2.76055,-2.760546 -5.42343,-11.139832 -9.61308,-12.471277 -2.8582,2.8582 -2.8582,2.8582 -8.52577,5.765229 -0.0488,2.809372 2.66289,8.379288 -0.14648,8.428118 -2.80938,0.0488 -1.33145,-4.189645 -4.14082,-4.140818 -1.4291,1.429098 -2.8582,2.858198 -4.23847,1.477928 z"
+     style="fill:#ffffff;fill-opacity:1" />
+  <path
+     id="path4325-8"
+     d="m 247.78512,296.07681 c -1.38027,-1.38028 0.0488,-2.80937 1.47792,-4.23847 0.0488,-2.80938 -4.18964,-1.33145 -4.14081,-4.14082 0.0488,-2.80937 5.61874,-0.0977 8.42811,-0.14648 2.90703,-5.66758 2.90703,-5.66758 5.76523,-8.52578 -1.33144,-4.18964 -11.091,-8.2328 -13.85155,-10.99335 -2.76054,-2.76054 0.0977,-5.61874 4.28731,-4.2873 4.18964,1.33145 11.13983,5.42344 16.70974,8.13515 4.2873,-4.2873 10.0037,-10.0037 12.81307,-10.05253 2.80938,-0.0488 2.80938,-0.0488 2.76055,2.76055 -0.0488,2.80937 -5.76523,8.52577 -10.05253,12.81307 2.71172,5.56992 6.80371,12.52011 8.13515,16.70975 1.33144,4.18964 -2.90703,5.66757 -5.66757,2.90703 -2.76055,-2.76055 -5.42343,-11.13983 -9.61308,-12.47128 -2.8582,2.8582 -2.8582,2.8582 -8.52577,5.76523 -0.0488,2.80937 2.66289,8.37929 -0.14649,8.42812 -2.80937,0.0488 -1.33144,-4.18965 -4.14081,-4.14082 -1.4291,1.4291 -2.8582,2.8582 -4.23847,1.47793 z"
+     style="fill:#ffffff;fill-opacity:1" />
+  <g
+     transform="matrix(0.5091023,0,0,0.5091023,144.46381,139.41678)"
+     style="fill:#ffffff;fill-opacity:1;stroke:none"
+     id="g4481">
+    <path
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       id="path4355"
+       d="M -39.70244,-3.5799496 A 17.028822,13.710845 0 0 1 -56.698004,10.130869 17.028822,13.710845 0 0 1 -73.759954,-3.5263945 17.028822,13.710845 0 0 1 -56.831035,-17.290559 17.028822,13.710845 0 0 1 -39.70296,-3.6870591"
+       transform="matrix(1.1684606,0,0,1.4393417,24.555104,1.2273496)" />
+    <rect
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       id="rect4357"
+       width="9.9273682"
+       height="42.61132"
+       x="-46.696823"
+       y="7.4294286"
+       ry="5.7463398" />
+    <path
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2.22394896;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m -41.71875,-31.65625 c -14.88593,0 -27.3125,12.165728 -27.3125,27.71875 0,5.8895956 1.78644,11.271257 4.8125,15.71875 L -61.625,9.1875 c -2.588692,-3.7868125 -4.09375,-8.31513642 -4.09375,-13.125 0,-12.762065 10.570844,-23.5625 24,-23.5625 13.429157,0 23.9375,10.800435 23.9375,23.5625 0,4.80094155 -1.490947,9.3111849 -4.0625,13.09375 l 2.625,2.625 c 3.016999,-4.4471812 4.78125,-9.8298816 4.78125,-15.71875 0,-15.553022 -12.395319,-27.71875 -27.28125,-27.71875 z"
+       id="path4355-2" />
+    <path
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.72055769;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m -41.71875,-39.15625 c -19.028066,0 -34.84375,15.492342 -34.84375,35.1875 0,7.9698277 2.593401,15.295179 6.9375,21.15625 L -67,14.5625 c -0.0049,-0.0065 0.0049,-0.02476 0,-0.03125 -3.90741,-5.206001 -6.21875,-11.6326688 -6.21875,-18.5 0,-16.904199 13.928709,-31.03125 31.5,-31.03125 17.571291,0 31.4375,14.127051 31.4375,31.03125 0,6.8673312 -2.292007,13.293999 -6.1875,18.5 l 2.625,2.625 c 4.3235528,-5.857746 6.90625,-13.1640124 6.90625,-21.125 0,-19.695158 -15.753184,-35.1875 -34.78125,-35.1875 z"
+       id="path4355-2-9" />
+    <path
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.40299034;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m -41.71875,-46.65625 c -23.170201,0 -42.34375,18.850205 -42.34375,42.6875 0,10.0528755 3.409492,19.240224 9.09375,26.5 L -72.3125,19.875 c -5.250508,-6.605445 -8.375,-14.9056629 -8.375,-23.84375 0,-21.046336 17.255323,-38.53125 38.96875,-38.53125 21.713427,0 38.9375,17.484914 38.9375,38.53125 0,8.9380871 -3.1087171,17.238305 -8.34375,23.84375 l 2.625,2.65625 c 5.6724567,-7.260957 9.0625,-16.443642 9.0625,-26.5 0,-23.837295 -19.111048,-42.6875 -42.28125,-42.6875 z"
+       id="path4355-2-9-5" />
+  </g>
+  <g
+     transform="matrix(0.5091023,0,0,0.5091023,424.46382,69.416785)"
+     style="fill:#ffffff;fill-opacity:1;stroke:none"
+     id="g4481-4">
+    <path
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       id="path4355-3"
+       d="M -39.70244,-3.5799496 A 17.028822,13.710845 0 0 1 -56.698004,10.130869 17.028822,13.710845 0 0 1 -73.759954,-3.5263945 17.028822,13.710845 0 0 1 -56.831035,-17.290559 17.028822,13.710845 0 0 1 -39.70296,-3.6870591"
+       transform="matrix(1.1684606,0,0,1.4393417,24.555104,1.2273496)" />
+    <rect
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       id="rect4357-1"
+       width="9.9273682"
+       height="42.61132"
+       x="-46.696823"
+       y="7.4294286"
+       ry="5.7463398" />
+    <path
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2.22394896;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m -41.71875,-31.65625 c -14.88593,0 -27.3125,12.165728 -27.3125,27.71875 0,5.8895956 1.78644,11.271257 4.8125,15.71875 L -61.625,9.1875 c -2.588692,-3.7868125 -4.09375,-8.31513642 -4.09375,-13.125 0,-12.762065 10.570844,-23.5625 24,-23.5625 13.429157,0 23.9375,10.800435 23.9375,23.5625 0,4.80094155 -1.490947,9.3111849 -4.0625,13.09375 l 2.625,2.625 c 3.016999,-4.4471812 4.78125,-9.8298816 4.78125,-15.71875 0,-15.553022 -12.395319,-27.71875 -27.28125,-27.71875 z"
+       id="path4355-2-2" />
+    <path
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.72055769;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m -41.71875,-39.15625 c -19.028066,0 -34.84375,15.492342 -34.84375,35.1875 0,7.9698277 2.593401,15.295179 6.9375,21.15625 L -67,14.5625 c -0.0049,-0.0065 0.0049,-0.02476 0,-0.03125 -3.90741,-5.206001 -6.21875,-11.6326688 -6.21875,-18.5 0,-16.904199 13.928709,-31.03125 31.5,-31.03125 17.571291,0 31.4375,14.127051 31.4375,31.03125 0,6.8673312 -2.292007,13.293999 -6.1875,18.5 l 2.625,2.625 c 4.3235528,-5.857746 6.90625,-13.1640124 6.90625,-21.125 0,-19.695158 -15.753184,-35.1875 -34.78125,-35.1875 z"
+       id="path4355-2-9-3" />
+    <path
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.40299034;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m -41.71875,-46.65625 c -23.170201,0 -42.34375,18.850205 -42.34375,42.6875 0,10.0528755 3.409492,19.240224 9.09375,26.5 L -72.3125,19.875 c -5.250508,-6.605445 -8.375,-14.9056629 -8.375,-23.84375 0,-21.046336 17.255323,-38.53125 38.96875,-38.53125 21.713427,0 38.9375,17.484914 38.9375,38.53125 0,8.9380871 -3.1087171,17.238305 -8.34375,23.84375 l 2.625,2.65625 c 5.6724567,-7.260957 9.0625,-16.443642 9.0625,-26.5 0,-23.837295 -19.111048,-42.6875 -42.28125,-42.6875 z"
+       id="path4355-2-9-5-3" />
+  </g>
+  <g
+     transform="matrix(0.5091023,0,0,0.5091023,354.46382,279.41679)"
+     style="fill:#ffffff;fill-opacity:1;stroke:none"
+     id="g4481-41">
+    <path
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       id="path4355-1"
+       d="M -39.70244,-3.5799496 A 17.028822,13.710845 0 0 1 -56.698004,10.130869 17.028822,13.710845 0 0 1 -73.759954,-3.5263945 17.028822,13.710845 0 0 1 -56.831035,-17.290559 17.028822,13.710845 0 0 1 -39.70296,-3.6870591"
+       transform="matrix(1.1684606,0,0,1.4393417,24.555104,1.2273496)" />
+    <rect
+       style="fill:#ffffff;fill-opacity:1;stroke:none"
+       id="rect4357-3"
+       width="9.9273682"
+       height="42.61132"
+       x="-46.696823"
+       y="7.4294286"
+       ry="5.7463398" />
+    <path
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:2.22394896;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m -41.71875,-31.65625 c -14.88593,0 -27.3125,12.165728 -27.3125,27.71875 0,5.8895956 1.78644,11.271257 4.8125,15.71875 L -61.625,9.1875 c -2.588692,-3.7868125 -4.09375,-8.31513642 -4.09375,-13.125 0,-12.762065 10.570844,-23.5625 24,-23.5625 13.429157,0 23.9375,10.800435 23.9375,23.5625 0,4.80094155 -1.490947,9.3111849 -4.0625,13.09375 l 2.625,2.625 c 3.016999,-4.4471812 4.78125,-9.8298816 4.78125,-15.71875 0,-15.553022 -12.395319,-27.71875 -27.28125,-27.71875 z"
+       id="path4355-2-8" />
+    <path
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.72055769;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m -41.71875,-39.15625 c -19.028066,0 -34.84375,15.492342 -34.84375,35.1875 0,7.9698277 2.593401,15.295179 6.9375,21.15625 L -67,14.5625 c -0.0049,-0.0065 0.0049,-0.02476 0,-0.03125 -3.90741,-5.206001 -6.21875,-11.6326688 -6.21875,-18.5 0,-16.904199 13.928709,-31.03125 31.5,-31.03125 17.571291,0 31.4375,14.127051 31.4375,31.03125 0,6.8673312 -2.292007,13.293999 -6.1875,18.5 l 2.625,2.625 c 4.3235528,-5.857746 6.90625,-13.1640124 6.90625,-21.125 0,-19.695158 -15.753184,-35.1875 -34.78125,-35.1875 z"
+       id="path4355-2-9-7" />
+    <path
+       style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.40299034;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans"
+       d="m -41.71875,-46.65625 c -23.170201,0 -42.34375,18.850205 -42.34375,42.6875 0,10.0528755 3.409492,19.240224 9.09375,26.5 L -72.3125,19.875 c -5.250508,-6.605445 -8.375,-14.9056629 -8.375,-23.84375 0,-21.046336 17.255323,-38.53125 38.96875,-38.53125 21.713427,0 38.9375,17.484914 38.9375,38.53125 0,8.9380871 -3.1087171,17.238305 -8.34375,23.84375 l 2.625,2.65625 c 5.6724567,-7.260957 9.0625,-16.443642 9.0625,-26.5 0,-23.837295 -19.111048,-42.6875 -42.28125,-42.6875 z"
+       id="path4355-2-9-5-4" />
+  </g>
+  <path
+     id="path317"
+     d="m 114.72165,54.749909 c -2.71162,0.04016 -5.25081,0.532636 -7.46641,1.488911 -3.54496,1.530038 -6.27862,4.407841 -7.02384,8.288724 -1.338092,6.9685 0.31832,12.527778 2.49428,15.962763 a 1.8360513,1.8360513 0 0 0 1.50803,0.852368 l 1.74572,0.04098 c 0.83517,2.568777 3.24766,4.425751 6.09496,4.425751 2.74062,0 5.07769,-1.719296 5.99389,-4.138893 l 7.19868,0.169376 c 0.95936,2.330202 3.24931,3.969517 5.9256,3.969517 2.56834,0 4.78295,-1.509509 5.80539,-3.690858 l 1.85498,0.0437 a 1.8360513,1.8360513 0 0 0 0.34695,-0.02461 c 1.84293,-0.310863 3.89623,-1.028335 5.46389,-2.61994 1.56768,-1.591605 2.41234,-4.137718 1.80583,-7.100324 -0.41708,-2.037247 -1.85181,-3.635726 -3.71818,-5.351885 -1.86637,-1.71616 -4.25956,-3.446204 -6.88724,-5.065029 -5.25532,-3.237646 -11.35424,-6.018283 -16.10755,-6.838061 -1.71938,-0.296532 -3.408,-0.436621 -5.03498,-0.412523 z m 0.5819,3.677199 c 1.22633,0.0098 2.50961,0.125138 3.82747,0.35242 3.84801,0.663646 9.85442,3.295096 14.80715,6.346312 2.47635,1.52561 4.71144,3.158609 6.32718,4.644309 1.61574,1.485703 2.51494,2.925457 2.60901,3.384883 0.41573,2.030726 -0.0435,2.990151 -0.82777,3.786476 -0.75888,0.770449 -2.04524,1.306594 -3.32752,1.54355 l -1.18567,-0.02732 c -0.45703,-3.094263 -3.12446,-5.463887 -6.34084,-5.463887 -3.1144,0 -5.70763,2.221293 -6.28621,5.166108 l -6.57853,-0.155721 c -0.63828,-2.869351 -3.19611,-5.010387 -6.25343,-5.010387 -2.95458,0 -5.44086,1.998527 -6.18239,4.718066 l -0.53546,-0.01366 c -1.45608,-2.719076 -2.57401,-6.996578 -1.52169,-12.476798 0.5058,-2.63416 2.17641,-4.447201 4.87379,-5.611419 1.68586,-0.727634 3.769,-1.14222 6.07311,-1.180199 0.17281,-0.0028 0.34662,-0.0041 0.5218,-0.0026 z"
+     style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1" />
+  <path
+     d="m 44.721651,194.74989 c -2.71162,0.0402 -5.25081,0.53263 -7.46641,1.48891 -3.54496,1.53004 -6.27862,4.40784 -7.02384,8.28872 -1.33809,6.9685 0.31832,12.52778 2.49428,15.96277 a 1.8360513,1.8360513 0 0 0 1.50803,0.85236 l 1.74572,0.041 c 0.83517,2.56878 3.24766,4.42576 6.09496,4.42576 2.74062,0 5.07769,-1.7193 5.99389,-4.1389 l 7.19868,0.16938 c 0.95936,2.3302 3.24931,3.96952 5.9256,3.96952 2.56834,0 4.78295,-1.50951 5.80539,-3.69086 l 1.85498,0.0437 a 1.8360513,1.8360513 0 0 0 0.34695,-0.0246 c 1.84293,-0.31087 3.89623,-1.02834 5.46389,-2.61994 1.56768,-1.59161 2.41234,-4.13772 1.80583,-7.10033 -0.41708,-2.03724 -1.85181,-3.63572 -3.71818,-5.35188 -1.86637,-1.71616 -4.25956,-3.44621 -6.88724,-5.06503 -5.25532,-3.23765 -11.35424,-6.01828 -16.10755,-6.83806 -1.71938,-0.29653 -3.408,-0.43662 -5.03498,-0.41252 z m 0.5819,3.6772 c 1.22633,0.01 2.50961,0.12514 3.82747,0.35242 3.84801,0.66364 9.85442,3.29509 14.80715,6.34631 2.47635,1.52561 4.71144,3.15861 6.32718,4.64431 1.61574,1.4857 2.51494,2.92546 2.60901,3.38488 0.41573,2.03073 -0.0435,2.99015 -0.82777,3.78648 -0.75888,0.77045 -2.04524,1.30659 -3.32752,1.54355 l -1.18567,-0.0273 c -0.45703,-3.09427 -3.12446,-5.46389 -6.34084,-5.46389 -3.1144,0 -5.70763,2.22129 -6.28621,5.16611 l -6.57853,-0.15572 c -0.63828,-2.86935 -3.19611,-5.01039 -6.25343,-5.01039 -2.95458,0 -5.44086,1.99853 -6.18239,4.71807 l -0.53546,-0.0137 c -1.45608,-2.71908 -2.57401,-6.99658 -1.52169,-12.4768 0.5058,-2.63416 2.17641,-4.4472 4.87379,-5.61142 1.68586,-0.72763 3.769,-1.14222 6.07311,-1.1802 0.17281,-0.003 0.34662,-0.004 0.5218,-0.003 z"
+     style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
+     id="path4601" />
+  <path
+     d="m 394.72167,194.74989 c -2.71162,0.0402 -5.25081,0.53264 -7.46641,1.48891 -3.54496,1.53004 -6.27862,4.40784 -7.02384,8.28873 -1.33809,6.9685 0.31832,12.52777 2.49428,15.96276 a 1.8360513,1.8360513 0 0 0 1.50803,0.85237 l 1.74572,0.041 c 0.83517,2.56877 3.24766,4.42575 6.09496,4.42575 2.74062,0 5.07769,-1.7193 5.99389,-4.13889 l 7.19868,0.16937 c 0.95936,2.3302 3.24931,3.96952 5.9256,3.96952 2.56834,0 4.78295,-1.50951 5.80539,-3.69086 l 1.85498,0.0437 a 1.8360513,1.8360513 0 0 0 0.34695,-0.0246 c 1.84293,-0.31086 3.89623,-1.02833 5.46389,-2.61994 1.56768,-1.5916 2.41234,-4.13772 1.80583,-7.10032 -0.41708,-2.03725 -1.85181,-3.63573 -3.71818,-5.35189 -1.86637,-1.71616 -4.25956,-3.4462 -6.88724,-5.06503 -5.25532,-3.23764 -11.35424,-6.01828 -16.10755,-6.83806 -1.71938,-0.29653 -3.408,-0.43662 -5.03498,-0.41252 z m 0.5819,3.6772 c 1.22633,0.01 2.50961,0.12514 3.82747,0.35242 3.84801,0.66365 9.85442,3.2951 14.80715,6.34631 2.47635,1.52561 4.71144,3.15861 6.32718,4.64431 1.61574,1.4857 2.51494,2.92546 2.60901,3.38488 0.41573,2.03073 -0.0435,2.99016 -0.82777,3.78648 -0.75888,0.77045 -2.04524,1.30659 -3.32752,1.54355 l -1.18567,-0.0273 c -0.45703,-3.09426 -3.12446,-5.46389 -6.34084,-5.46389 -3.1144,0 -5.70763,2.2213 -6.28621,5.16611 l -6.57853,-0.15572 c -0.63828,-2.86935 -3.19611,-5.01039 -6.25343,-5.01039 -2.95458,0 -5.44086,1.99853 -6.18239,4.71807 l -0.53546,-0.0137 c -1.45608,-2.71908 -2.57401,-6.99658 -1.52169,-12.4768 0.5058,-2.63416 2.17641,-4.4472 4.87379,-5.61142 1.68586,-0.72763 3.769,-1.14222 6.07311,-1.1802 0.17281,-0.003 0.34662,-0.004 0.5218,-0.003 z"
+     style="fill:#ffffff;fill-opacity:1;stroke:#ffffff;stroke-opacity:1"
+     id="path4601-7" />
+  <path
+     id="rect2024"
+     d="m 43.810045,117.23326 c -1.206858,0 -2.176032,0.49074 -2.176032,1.09417 l 0,0.209 -5.274114,0 c -1.20667,0 -2.176033,0.96936 -2.176033,2.17603 l 0,34.82882 c 0,1.20667 0.969363,2.17603 2.176033,2.17603 l 5.052822,0 -6.970682,5.60605 8.679544,0 3.356254,-5.60605 13.449605,0 3.356253,5.60605 8.691838,0 -6.970682,-5.60605 5.040528,0 c 1.206671,0 2.188327,-0.96936 2.188327,-2.17603 l 0,-34.82882 c 0,-1.20667 -0.981656,-2.17603 -2.188327,-2.17603 l -5.274113,0 0,-0.209 c 0,-0.60343 -0.969175,-1.09417 -2.176033,-1.09417 l -18.785188,0 z m -4.352065,6.45434 27.489319,0 c 0.297719,0 0.540934,0.24321 0.540934,0.54094 l 0,12.19561 c 0,0.29771 -0.243215,0.54093 -0.540934,0.54093 l -27.489319,0 c -0.297719,0 -0.540935,-0.24322 -0.540935,-0.54093 l 0,-12.19561 c 0,-0.29773 0.243216,-0.54094 0.540935,-0.54094 z m 4.11848,19.59659 c 2.123482,0 3.843717,1.71229 3.860307,3.83572 l 0,0.0246 c 0,2.13526 -1.725039,3.87261 -3.860307,3.87261 -2.135268,0 -3.872601,-1.73735 -3.872601,-3.87261 0,-2.13527 1.737333,-3.8603 3.872601,-3.8603 z m 19.252359,0 c 2.123482,0 3.856011,1.71229 3.872601,3.83572 l 0,0.0246 c 0,2.13526 -1.737333,3.87261 -3.872601,3.87261 -2.135269,0 -3.860308,-1.73735 -3.860308,-3.87261 0,-2.13527 1.725039,-3.8603 3.860308,-3.8603 z"
+     style="font-size:12px;fill:#ffffff;fill-opacity:1;stroke:none" />
+  <path
+     id="rect2024-9"
+     d="m 113.81005,257.23327 c -1.20686,0 -2.17604,0.49074 -2.17604,1.09417 l 0,0.209 -5.27411,0 c -1.20667,0 -2.17603,0.96936 -2.17603,2.17603 l 0,34.82882 c 0,1.20667 0.96936,2.17603 2.17603,2.17603 l 5.05282,0 -6.97068,5.60605 8.67954,0 3.35626,-5.60605 13.4496,0 3.35626,5.60605 8.69183,0 -6.97068,-5.60605 5.04053,0 c 1.20667,0 2.18833,-0.96936 2.18833,-2.17603 l 0,-34.82882 c 0,-1.20667 -0.98166,-2.17603 -2.18833,-2.17603 l -5.27411,0 0,-0.209 c 0,-0.60343 -0.96918,-1.09417 -2.17604,-1.09417 l -18.78518,0 z m -4.35207,6.45434 27.48932,0 c 0.29772,0 0.54093,0.24321 0.54093,0.54094 l 0,12.19561 c 0,0.29771 -0.24321,0.54093 -0.54093,0.54093 l -27.48932,0 c -0.29772,0 -0.54093,-0.24322 -0.54093,-0.54093 l 0,-12.19561 c 0,-0.29773 0.24321,-0.54094 0.54093,-0.54094 z m 4.11848,19.59659 c 2.12348,0 3.84372,1.71229 3.86031,3.83572 l 0,0.0246 c 0,2.13526 -1.72504,3.87261 -3.86031,3.87261 -2.13527,0 -3.8726,-1.73735 -3.8726,-3.87261 0,-2.13527 1.73733,-3.8603 3.8726,-3.8603 z m 19.25236,0 c 2.12348,0 3.85601,1.71229 3.8726,3.83572 l 0,0.0246 c 0,2.13526 -1.73733,3.87261 -3.8726,3.87261 -2.13527,0 -3.86031,-1.73735 -3.86031,-3.87261 0,-2.13527 1.72504,-3.8603 3.86031,-3.8603 z"
+     style="font-size:12px;fill:#ffffff;fill-opacity:1;stroke:none" />
+  <path
+     id="rect2024-9-9"
+     d="m 393.81006,117.23326 c -1.20686,0 -2.17604,0.49074 -2.17604,1.09417 l 0,0.209 -5.27411,0 c -1.20667,0 -2.17603,0.96936 -2.17603,2.17603 l 0,34.82882 c 0,1.20667 0.96936,2.17603 2.17603,2.17603 l 5.05282,0 -6.97068,5.60605 8.67954,0 3.35626,-5.60605 13.4496,0 3.35626,5.60605 8.69183,0 -6.97068,-5.60605 5.04053,0 c 1.20667,0 2.18833,-0.96936 2.18833,-2.17603 l 0,-34.82882 c 0,-1.20667 -0.98166,-2.17603 -2.18833,-2.17603 l -5.27411,0 0,-0.209 c 0,-0.60343 -0.96918,-1.09417 -2.17604,-1.09417 l -18.78518,0 z m -4.35207,6.45434 27.48932,0 c 0.29772,0 0.54093,0.24321 0.54093,0.54094 l 0,12.19561 c 0,0.29771 -0.24321,0.54093 -0.54093,0.54093 l -27.48932,0 c -0.29772,0 -0.54093,-0.24322 -0.54093,-0.54093 l 0,-12.19561 c 0,-0.29773 0.24321,-0.54094 0.54093,-0.54094 z m 4.11848,19.59659 c 2.12348,0 3.84372,1.71229 3.86031,3.83572 l 0,0.0246 c 0,2.13526 -1.72504,3.87261 -3.86031,3.87261 -2.13527,0 -3.8726,-1.73735 -3.8726,-3.87261 0,-2.13527 1.73733,-3.8603 3.8726,-3.8603 z m 19.25236,0 c 2.12348,0 3.85601,1.71229 3.8726,3.83572 l 0,0.0246 c 0,2.13526 -1.73733,3.87261 -3.8726,3.87261 -2.13527,0 -3.86031,-1.73735 -3.86031,-3.87261 0,-2.13527 1.72504,-3.8603 3.86031,-3.8603 z"
+     style="font-size:12px;fill:#ffffff;fill-opacity:1;stroke:none" />
+  <path
+     id="path4801"
+     d="m 209.6441,46.78695 c -1.2569,-1.256906 -2.59387,0.08215 -4.59962,2.087883 l -6.45201,6.452032 -2.43326,-2.433254 c -7.53521,7.535213 -15.07042,15.07042 -12.55868,22.605633 l 1.17737,1.177383 c -0.95477,0.843518 -1.73875,1.928926 -2.49602,3.061167 -1.38182,2.06599 -2.55837,4.448308 -3.42225,6.373538 -0.51172,1.140434 -1.69767,2.820255 -3.06118,3.626317 -1.36351,0.806082 -2.73606,1.107745 -5.07057,-0.392457 l -2.15068,3.343744 c 3.3598,2.159073 6.85084,1.871414 9.24633,0.455252 2.39549,-1.416147 3.87928,-3.619968 4.67812,-5.400225 0.81065,-1.806592 1.90725,-4.028253 3.07688,-5.777005 0.74583,-1.115098 1.55141,-1.899257 2.11928,-2.370437 l 0.9262,0.926199 c 7.5352,2.511734 15.07041,-5.023476 22.60562,-12.558689 l -2.41753,-2.417535 6.45201,-6.452032 c 2.00574,-2.005744 3.34489,-3.342605 2.08788,-4.599626 -1.25691,-1.256909 -2.59387,0.08214 -4.59962,2.087882 l -6.45202,6.452028 -5.19615,-5.196147 6.45201,-6.452023 c 2.00575,-2.005751 3.3449,-3.34261 2.08789,-4.599628 z"
+     style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.5999999;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+  <path
+     id="path4801-0"
+     d="m 419.64411,256.78696 c -1.2569,-1.25691 -2.59387,0.0821 -4.59962,2.08788 l -6.45201,6.45204 -2.43326,-2.43326 c -7.53521,7.53522 -15.07042,15.07042 -12.55868,22.60564 l 1.17737,1.17738 c -0.95477,0.84352 -1.73875,1.92892 -2.49602,3.06117 -1.38182,2.06599 -2.55837,4.4483 -3.42225,6.37353 -0.51172,1.14044 -1.69767,2.82026 -3.06118,3.62632 -1.36351,0.80608 -2.73606,1.10775 -5.07057,-0.39246 l -2.15068,3.34375 c 3.3598,2.15907 6.85084,1.87141 9.24633,0.45525 2.39549,-1.41615 3.87928,-3.61997 4.67812,-5.40023 0.81065,-1.80659 1.90725,-4.02825 3.07688,-5.777 0.74583,-1.1151 1.55141,-1.89926 2.11928,-2.37044 l 0.9262,0.9262 c 7.5352,2.51174 15.07041,-5.02347 22.60562,-12.55869 l -2.41753,-2.41753 6.45201,-6.45203 c 2.00574,-2.00575 3.34489,-3.34261 2.08788,-4.59963 -1.25691,-1.25691 -2.59387,0.0821 -4.59962,2.08788 l -6.45202,6.45203 -5.19615,-5.19615 6.45201,-6.45202 c 2.00575,-2.00575 3.3449,-3.34261 2.08789,-4.59963 z"
+     style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.5999999;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+  <path
+     id="path4801-2"
+     d="m 209.6441,256.78695 c -1.2569,-1.25691 -2.59387,0.0822 -4.59962,2.08788 l -6.45201,6.45203 -2.43326,-2.43325 c -7.53521,7.53521 -15.07042,15.07042 -12.55868,22.60563 l 1.17737,1.17739 c -0.95477,0.84351 -1.73875,1.92892 -2.49602,3.06116 -1.38182,2.06599 -2.55837,4.44831 -3.42225,6.37354 -0.51172,1.14043 -1.69767,2.82026 -3.06118,3.62632 -1.36351,0.80608 -2.73606,1.10774 -5.07057,-0.39246 l -2.15068,3.34374 c 3.3598,2.15908 6.85084,1.87142 9.24633,0.45526 2.39549,-1.41615 3.87928,-3.61997 4.67812,-5.40023 0.81065,-1.80659 1.90725,-4.02825 3.07688,-5.777 0.74583,-1.1151 1.55141,-1.89926 2.11928,-2.37044 l 0.9262,0.9262 c 7.5352,2.51173 15.07041,-5.02348 22.60562,-12.55869 l -2.41753,-2.41754 6.45201,-6.45203 c 2.00574,-2.00574 3.34489,-3.3426 2.08788,-4.59962 -1.25691,-1.25691 -2.59387,0.0821 -4.59962,2.08788 l -6.45202,6.45203 -5.19615,-5.19615 6.45201,-6.45202 c 2.00575,-2.00576 3.3449,-3.34261 2.08789,-4.59963 z"
+     style="font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;text-indent:0;text-align:start;text-decoration:none;line-height:normal;letter-spacing:normal;word-spacing:normal;text-transform:none;direction:ltr;block-progression:tb;writing-mode:lr-tb;text-anchor:start;baseline-shift:baseline;color:#000000;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:5.5999999;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate;font-family:Sans;-inkscape-font-specification:Sans" />
+  <path
+     id="rect4833"
+     d="m 38.226706,296.88159 c 0.166338,0.16634 0.43793,0.16428 0.600023,-0.007 l 2.097004,-2.20834 6.68072,6.68072 c 1.509736,-2.32284 0.278163,-6.61573 -2.956849,-10.41698 0.0076,-0.007 0.01768,-0.006 0.02475,-0.0124 l 1.670185,-1.67018 3.272305,3.2723 c 0.548322,0.54833 1.431157,0.54834 1.97947,3e-5 l 3.068185,-3.06818 1.212424,1.21241 -3.272305,3.27231 9.37774,9.37775 14.264584,-14.26457 -9.377755,-9.37775 -2.245459,2.24547 -1.212431,-1.21243 2.041322,-2.04132 c 0.548322,-0.54832 0.548327,-1.43117 5e-6,-1.97947 l -2.004216,-2.00424 0.915506,-0.91549 1.144388,1.14439 c 0.271963,0.27196 0.705396,0.27195 0.977358,-10e-6 l 6.872488,-6.87247 c 0.271953,-0.27198 0.278154,-0.71159 0.0061,-0.98356 l -1.237171,-1.23718 c 0.447603,-1.38148 0.17905,-2.87674 -0.828907,-3.8847 -1.007951,-1.00797 -2.497021,-1.27034 -3.878524,-0.82273 l -1.243357,-1.24335 c -0.271963,-0.27197 -0.711592,-0.26578 -0.983555,0.007 l -6.872475,6.87247 c -0.271958,0.27196 -0.271972,0.70541 -9e-6,0.97737 l 1.144387,1.14438 -0.915509,0.91551 -2.004214,-2.00421 c -0.548318,-0.54832 -1.431158,-0.54832 -1.979471,-10e-6 l -2.041329,2.04133 -0.952625,-0.95262 2.24547,-2.24546 -9.377751,-9.37776 -14.264578,14.26458 9.377751,9.37774 3.27232,-3.27229 0.952615,0.95261 -3.068176,3.06818 c -0.548317,0.54831 -0.548322,1.43116 0,1.97948 l 3.27232,3.2723 -1.670189,1.67019 c -0.007,0.007 -0.0062,0.0173 -0.01235,0.0246 -3.801255,-3.235 -8.094141,-4.46658 -10.416979,-2.95683 l 6.680725,6.68073 -2.097008,2.20832 c -0.162088,0.17048 -0.160146,0.44607 0.0061,0.61241 l 1.756778,1.75679 z m 19.374084,-7.94263 -1.212428,-1.21243 5.4188,-5.41881 1.212428,1.21244 -5.4188,5.4188 z m -12.099531,-12.09952 -0.952619,-0.95263 5.418794,-5.4188 0.952625,0.95263 -5.4188,5.4188 z"
+     style="fill:#ffffff;fill-opacity:1;stroke:none" />
+  <path
+     id="rect4833-0"
+     d="m 318.22682,86.881578 c 0.16634,0.16634 0.43793,0.16428 0.60003,-0.007 l 2.097,-2.20834 6.68072,6.68072 c 1.50974,-2.32284 0.27816,-6.61573 -2.95685,-10.41698 0.008,-0.007 0.0177,-0.006 0.0247,-0.0124 l 1.67019,-1.67018 3.2723,3.2723 c 0.54832,0.54833 1.43116,0.54834 1.97947,3e-5 l 3.06819,-3.06818 1.21242,1.21241 -3.27231,3.27231 9.37774,9.37775 14.26459,-14.26457 -9.37776,-9.37775 -2.24546,2.24547 -1.21243,-1.21243 2.04133,-2.04132 c 0.54832,-0.54832 0.54832,-1.43117 0,-1.97947 l -2.00422,-2.00424 0.91551,-0.91549 1.14439,1.14439 c 0.27196,0.27196 0.70539,0.27195 0.97736,-1e-5 l 6.87249,-6.87247 c 0.27195,-0.27198 0.27815,-0.71159 0.006,-0.98356 l -1.23717,-1.23718 c 0.4476,-1.38148 0.17905,-2.87674 -0.82891,-3.8847 -1.00795,-1.00797 -2.49702,-1.27034 -3.87853,-0.82273 l -1.24335,-1.24335 c -0.27197,-0.27197 -0.7116,-0.26578 -0.98356,0.007 l -6.87247,6.87247 c -0.27196,0.27196 -0.27198,0.70541 -1e-5,0.97737 l 1.14438,1.14438 -0.91551,0.91551 -2.00421,-2.00421 c -0.54832,-0.54832 -1.43116,-0.54832 -1.97947,-10e-6 l -2.04133,2.04133 -0.95262,-0.95262 2.24547,-2.24546 -9.37776,-9.37776 -14.26457,14.26458 9.37775,9.37774 3.27232,-3.27229 0.95261,0.95261 -3.06817,3.06818 c -0.54832,0.54831 -0.54833,1.43116 0,1.97948 l 3.27232,3.2723 -1.67019,1.67019 c -0.007,0.007 -0.006,0.0173 -0.0124,0.0246 -3.80126,-3.235 -8.09414,-4.46658 -10.41698,-2.95683 l 6.68072,6.68073 -2.097,2.20832 c -0.16209,0.17048 -0.16015,0.44607 0.006,0.61241 l 1.75677,1.75679 z m 19.37409,-7.94263 -1.21243,-1.21243 5.4188,-5.41881 1.21243,1.21244 -5.4188,5.4188 z m -12.09953,-12.09952 -0.95262,-0.95263 5.41879,-5.4188 0.95263,0.95263 -5.4188,5.4188 z"
+     style="fill:#ffffff;fill-opacity:1;stroke:none" />
+  <text
+     xml:space="preserve"
+     style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:3.86258364px;line-height:0%;font-family:'Indie Flower';-inkscape-font-specification:'Indie Flower';letter-spacing:0px;word-spacing:0px;fill:#0099ba;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1"
+     x="197.48167"
+     y="240.93285"
+     id="text4834"><tspan
+       id="tspan4832"
+       x="197.48167"
+       y="240.93285"
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:16.49736595px;line-height:1.25;font-family:'Open Sans';-inkscape-font-specification:'Open Sans';fill:#333333;fill-opacity:1;stroke:none;stroke-width:1;stroke-opacity:1">2019-12N</tspan></text>
+</svg>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/plugin.properties b/rcp/org.eclipse.papyrus.aas.rcp/plugin.properties
new file mode 100755
index 0000000..b2da781
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/plugin.properties
@@ -0,0 +1,16 @@
+###############################################################################
+# Copyright (c) 2020 CEA LIST, and others.
+#
+# All rights reserved. This program and the accompanying materials
+# are made available under the terms of the Eclipse Public License 2.0
+# which accompanies this distribution, and is available at
+# https://www.eclipse.org/legal/epl-2.0/
+#
+# SPDX-License-Identifier: EPL-2.0
+#
+# Contributors:
+#
+###############################################################################
+
+pluginName=CanvAAS RCP
+providerName=CanvAAS project 
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/plugin.xml b/rcp/org.eclipse.papyrus.aas.rcp/plugin.xml
new file mode 100755
index 0000000..fdf5ee3
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/plugin.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<?eclipse version="3.3"?>
+<plugin>
+   <extension
+         id="product"
+         point="org.eclipse.core.runtime.products">
+      <product
+            application="org.eclipse.ui.ide.workbench"
+            description="CanvAAS&#x0D;&#x0A;&#x0D;&#x0A;Version: {1}&#x0D;&#x0A;&#x0D;&#x0A;(c) Copyright Eclipse contributors and others 2020.  All rights reserved.&#x0D;&#x0A;Visit http://www.eclipse.org/platform&#x0D;&#x0A;&#x0D;&#x0A;This product includes software developed by the&#x0D;&#x0A;Apache Software Foundation http://www.apache.org/"
+            name="CanvAAS">
+         <property name="windowImages" value="icons/papyrus16.png,icons/papyrus32.png,icons/papyrus48.png,icons/papyrus64.png,icons/papyrus128.png"/> 
+         <property name="aboutImage" value="icons/papyrus_lg.png"/>
+         <property
+               name="appName"
+               value="CanvAAS">
+         </property>
+         <property
+              name="introBrandingImage"
+              value="product:icons/intro-papyrus.png"/>
+         <property
+               name="introTitle"
+               value="Welcome to CanvAAS">
+         </property>
+         <property
+               name="introBrandingImageText"
+               value="CanvAAS">
+         </property>
+         <property
+               name="startupForegroundColor"
+               value="9C9E9F">
+         </property>
+         <property
+               name="startupMessageRect"
+               value="7,4,445,16">
+         </property>
+         <property
+               name="startupProgressRect"
+               value="0,330,460,20">
+         </property>
+         <property
+				name="cssTheme"
+				value="org.eclipse.e4.ui.css.theme.e4_default">
+		  </property>
+		  <property
+				name="applicationCSSResources"
+          value="platform:/plugin/org.eclipse.platform/images/">
+		  </property>
+    <property
+          name="aboutText"
+          value="CanvAAS&#x0A;&#x0A;Version: {1}&#x0A;Build id: {0}&#x0A;&#x0A;Copyright CEA LIST and others 2020. http://www.eclipse.org/papyrus&#x0A;&#x0A;(c) Copyright Eclipse contributors and others 2020.  All rights reserved. Eclipse and the Eclipse logo are trademarks of the Eclipse Foundation, Inc., https://www.eclipse.org/. The Eclipse logo cannot be altered without Eclipse's permission. Eclipse logos are provided for use under the Eclipse logo and trademark guidelines, https://www.eclipse.org/logotm/. Oracle and Java are trademarks or registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.&#x0A;&#x0A;This product includes software developed by other open source projects including the Apache Software Foundation, https://www.apache.org/.&#x0A;">
+    </property>
+    <property
+          name="preferenceCustomization"
+          value="plugin_customization.ini">
+    </property>
+      </product>
+   </extension>
+</plugin>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/plugin_customization.ini b/rcp/org.eclipse.papyrus.aas.rcp/plugin_customization.ini
new file mode 100755
index 0000000..7af7778
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/plugin_customization.ini
@@ -0,0 +1,27 @@
+# customization.ini 
+# sets default values for plug-in-specific preferences
+# keys are qualified by plug-in id
+# e.g., com.example.acmeplugin/myproperty=myvalue
+# java.io.Properties file (ISO 8859-1 with "\" escapes)
+# "%key" are externalized strings defined in plugin_customization.properties
+# This file does not need to be translated.
+
+# Property "org.eclipse.ui/defaultPerspectiveId" controls the 
+# perspective that the workbench opens initially
+org.eclipse.ui/defaultPerspectiveId=org.eclipse.papyrus.infra.core.perspective
+
+# new-style tabs by default
+org.eclipse.ui/SHOW_TRADITIONAL_STYLE_TABS=false
+
+# put the perspective switcher on the top right
+org.eclipse.ui/DOCK_PERSPECTIVE_BAR=topRight
+
+# show progress on startup
+org.eclipse.ui/SHOW_PROGRESS_ON_STARTUP=true
+
+# Configure Papyrus Compare preferences
+org.eclipse.emf.compare.ide.ui/org.eclipse.emf.compare.ide.ui.preference.preMergeOnConflict=true
+org.eclipse.emf.compare.ide.ui/org.eclipse.emf.compare.ide.ui.preference.resolutionScope=WORKSPACE
+org.eclipse.emf.compare.rcp/org.eclipse.emf.compare.preference.conflict.detector=org.eclipse.emf.compare.rcp.fast.conflictDetector
+org.eclipse.egit.ui/enable_logical_model=true
+org.eclipse.egit.core/core_preferredMergeStrategy=model recursive
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/pom.xml b/rcp/org.eclipse.papyrus.aas.rcp/pom.xml
new file mode 100755
index 0000000..e36e348
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/pom.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-rcp</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.rcp</artifactId>
+	<packaging>eclipse-plugin</packaging>
+
+</project>
diff --git a/rcp/org.eclipse.papyrus.aas.rcp/splash.bmp b/rcp/org.eclipse.papyrus.aas.rcp/splash.bmp
new file mode 100755
index 0000000..5f93932
--- /dev/null
+++ b/rcp/org.eclipse.papyrus.aas.rcp/splash.bmp
Binary files differ
diff --git a/rcp/pom.xml b/rcp/pom.xml
new file mode 100755
index 0000000..5c64e62
--- /dev/null
+++ b/rcp/pom.xml
@@ -0,0 +1,144 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas.root</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas-rcp</artifactId>
+	<version>0.0.1-SNAPSHOT</version>
+	<packaging>pom</packaging>
+
+	<modules>
+		<module>org.eclipse.papyrus.aas.rcp</module>
+		<module>org.eclipse.papyrus.aas.rcp.feature</module>
+		<module>org.eclipse.papyrus.aas.rcp.product</module>
+		<module>targetPlatform</module>
+	</modules>
+
+	<properties>
+		<eclipse.simultaneous.release.build>${maven.build.timestamp}</eclipse.simultaneous.release.build>
+		<eclipse.simultaneous.release.name>2020-06 (4.16)</eclipse.simultaneous.release.name>
+		<target.platform>org.eclipse.papyrus.aas.rcp.target</target.platform>
+	</properties>
+
+	<build>
+		<plugins>
+			<!-- local plugins -->
+			<plugin>
+				<!-- enable tycho build extension -->
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-maven-plugin</artifactId>
+			</plugin>
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-versions-plugin</artifactId>
+			</plugin>
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>target-platform-configuration</artifactId>
+			</plugin>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-resources-plugin</artifactId>
+			</plugin>
+
+			<!-- Sources -->
+			<!-- enable source bundle generation -->
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>tycho-source-plugin</artifactId>
+				<version>${tycho-version}</version>
+				<executions>
+					<execution>
+						<id>plugin-source</id>
+						<goals>
+							<goal>plugin-source</goal>
+						</goals>
+					</execution>
+				</executions>
+			</plugin>
+			<plugin>
+				<groupId>org.eclipse.tycho.extras</groupId>
+				<artifactId>tycho-source-feature-plugin</artifactId>
+				<version>${tychoExtrasVersion}</version>
+				<executions>
+					<execution>
+						<id>source-feature</id>
+						<phase>package</phase>
+						<goals>
+							<goal>source-feature</goal>
+						</goals>
+						<configuration>
+							<excludes>
+								<plugin id="org.eclipse.papyrus.aas.rcp" />
+							</excludes>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+
+		</plugins>
+	</build>
+
+	<profiles>
+		<profile>
+			<id>update-branding-plugins-about.mappings</id>
+			<activation>
+				<file>
+					<exists>${basedir}/about.mappings</exists>
+				</file>
+			</activation>
+			<build>
+				<plugins>
+					<plugin>
+						<groupId>org.apache.maven.plugins</groupId>
+						<artifactId>maven-resources-plugin</artifactId>
+						<executions>
+							<execution>
+								<id>process-about.mappings</id>
+								<phase>prepare-package</phase>
+								<configuration>
+									<outputDirectory>${project.build.directory}</outputDirectory>
+									<overwrite>true</overwrite>
+									<resources>
+										<resource>
+											<directory>${basedir}</directory>
+											<includes>
+												<include>about.mappings</include>
+											</includes>
+											<filtering>true</filtering>
+										</resource>
+									</resources>
+								</configuration>
+								<goals>
+									<goal>copy-resources</goal>
+								</goals>
+							</execution>
+						</executions>
+					</plugin>
+					<plugin>
+						<groupId>org.eclipse.tycho</groupId>
+						<artifactId>tycho-packaging-plugin</artifactId>
+						<version>${tycho-version}</version>
+						<configuration>
+							<additionalFileSets>
+								<fileSet>
+									<directory>${project.build.directory}</directory>
+									<includes>
+										<include>about.mappings</include>
+									</includes>
+								</fileSet>
+							</additionalFileSets>
+						</configuration>
+					</plugin>
+				</plugins>
+			</build>
+		</profile>
+	</profiles>
+</project>
diff --git a/rcp/targetPlatform/.settings/org.eclipse.core.resources.prefs b/rcp/targetPlatform/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/rcp/targetPlatform/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/rcp/targetPlatform/org.eclipse.papyrus.aas.rcp.target.target b/rcp/targetPlatform/org.eclipse.papyrus.aas.rcp.target.target
new file mode 100755
index 0000000..6bcbc70
--- /dev/null
+++ b/rcp/targetPlatform/org.eclipse.papyrus.aas.rcp.target.target
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde?>
+<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
+<target name="CanvAAS RCP" sequenceNumber="1606237364">
+  <locations>
+    <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+      <unit id="org.eclipse.papyrus.sdk.feature.feature.group" version="0.0.0"/>
+      <repository id="papyrus_nightly" location="https://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/master"/>
+    </location>
+    <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+      <unit id="org.eclipse.help.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.gef.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.emf.transaction.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.gmf.runtime.sdk.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.egit.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.equinox.p2.user.ui.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.core.resources" version="0.0.0"/>
+      <unit id="org.eclipse.ui.ide" version="0.0.0"/>
+      <unit id="org.eclipse.ui" version="0.0.0"/>
+      <unit id="org.eclipse.jst.server_adapters.feature.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.m2e.sdk.feature.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.uml2.sdk.feature.group" version="0.0.0"/>
+      <repository id="eclipse" location="https://download.eclipse.org/releases/2020-12"/>
+    </location>
+    <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+      <unit id="org.eclipse.e4.core.tools.feature.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.rcp.configuration.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.equinox.executable.feature.group" version="0.0.0"/>
+      <repository id="platform" location="https://download.eclipse.org/eclipse/updates/4.18-I-builds/I20201028-1800"/>
+    </location>
+  </locations>
+</target>
diff --git a/rcp/targetPlatform/org.eclipse.papyrus.aas.rcp.target.tpd b/rcp/targetPlatform/org.eclipse.papyrus.aas.rcp.target.tpd
new file mode 100644
index 0000000..ed16a93
--- /dev/null
+++ b/rcp/targetPlatform/org.eclipse.papyrus.aas.rcp.target.tpd
@@ -0,0 +1,26 @@
+target "CanvAAS RCP" with requirements source
+
+include "../../releng/targetPlatform/org.eclipse.papyrus.aas.target.tpd"
+
+/*** Manual Updates ***/
+
+location eclipse "https://download.eclipse.org/releases/2020-12" {
+	org.eclipse.help.feature.group lazy
+	org.eclipse.sdk.feature.group lazy	
+	org.eclipse.emf.sdk.feature.group lazy
+	org.eclipse.gef.sdk.feature.group lazy
+	org.eclipse.emf.transaction.sdk.feature.group lazy
+	org.eclipse.gmf.runtime.sdk.feature.group lazy 
+	org.eclipse.egit.feature.group lazy
+}
+
+
+/*** Updates from the Simrel repository ***/
+
+//updateFrom("Eclipse",0)
+
+location platform "https://download.eclipse.org/eclipse/updates/4.18-I-builds/I20201028-1800" {
+	org.eclipse.e4.core.tools.feature.feature.group lazy 
+	org.eclipse.rcp.configuration.feature.group lazy
+	org.eclipse.equinox.executable.feature.group lazy
+}
diff --git a/rcp/targetPlatform/pom.xml b/rcp/targetPlatform/pom.xml
new file mode 100755
index 0000000..e116500
--- /dev/null
+++ b/rcp/targetPlatform/pom.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-rcp</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.rcp.target</artifactId>
+	<packaging>eclipse-target-definition</packaging>
+</project>
diff --git a/releng/pom.xml b/releng/pom.xml
new file mode 100755
index 0000000..49e35c9
--- /dev/null
+++ b/releng/pom.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas.root</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas-releng</artifactId>
+	<packaging>pom</packaging>
+
+	<modules>
+		<module>targetPlatform</module>
+		<module>site</module>
+	</modules>
+
+</project>
\ No newline at end of file
diff --git a/releng/site/.settings/org.eclipse.core.resources.prefs b/releng/site/.settings/org.eclipse.core.resources.prefs
new file mode 100644
index 0000000..99f26c0
--- /dev/null
+++ b/releng/site/.settings/org.eclipse.core.resources.prefs
@@ -0,0 +1,2 @@
+eclipse.preferences.version=1
+encoding/<project>=UTF-8
diff --git a/releng/site/category.xml b/releng/site/category.xml
new file mode 100755
index 0000000..d73abbf
--- /dev/null
+++ b/releng/site/category.xml
@@ -0,0 +1,14 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<site>
+   <feature url="features/org.eclipse.papyrus.aas.feature_0.7.0.qualifier.jar" id="org.eclipse.papyrus.aas.feature" version="0.7.0.qualifier">
+      <category name="org.eclipse.papyrus.aas.category"/>
+   </feature>
+   <feature url="features/org.eclipse.papyrus.aas.feature.source_0.7.0.qualifier.jar" id="org.eclipse.papyrus.aas.feature.source" version="0.7.0.qualifier">
+      <category name="org.eclipse.papyrus.aas.category"/>
+   </feature>
+   <category-def name="org.eclipse.papyrus.aas.category" label="CanvAAS">
+      <description>
+         CanvAAS
+      </description>
+   </category-def>
+</site>
diff --git a/releng/site/pom.xml b/releng/site/pom.xml
new file mode 100755
index 0000000..5c28d02
--- /dev/null
+++ b/releng/site/pom.xml
@@ -0,0 +1,61 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-releng</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.p2</artifactId>
+	<version>0.0.1-SNAPSHOT</version>
+	<packaging>eclipse-repository</packaging>
+
+	<pluginRepositories>
+		<pluginRepository>
+			<id>org.jboss.tools.tycho-plugins</id>
+			<url>https://repository.jboss.org/</url>
+		</pluginRepository>
+	</pluginRepositories>
+
+	<build>
+		<plugins>
+			<plugin>
+				<groupId>org.eclipse.tycho</groupId>
+				<artifactId>target-platform-configuration</artifactId>
+				<version>${tycho-version}</version>
+				<configuration>
+					<includePackedArtifacts>true</includePackedArtifacts>
+				</configuration>
+			</plugin>
+
+			<!-- workaround https://bugs.eclipse.org/bugs/show_bug.cgi?id=453708 -->
+			<plugin>
+				<groupId>org.jboss.tools.tycho-plugins</groupId>
+				<artifactId>repository-utils</artifactId>
+				<version>${jboss.utils.version}</version>
+				<executions>
+					<execution>
+						<phase>package</phase>
+						<goals>
+							<goal>generate-repository-facade</goal>
+						</goals>
+						<configuration>
+							<!-- do not generate the pesky web folder and index.html -->
+							<skipWebContentGeneration>true</skipWebContentGeneration>
+							<!-- p2 update site transitive dependencies repositories -->
+							<associateSites>
+								<site>https://download.eclipse.org/technology/m2e/releases/</site>
+								<site>http://download.eclipse.org/releases/2020-06/</site>
+							</associateSites>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+
+</project>
diff --git a/releng/targetPlatform/org.eclipse.papyrus.aas.target.target b/releng/targetPlatform/org.eclipse.papyrus.aas.target.target
new file mode 100755
index 0000000..5abb1db
--- /dev/null
+++ b/releng/targetPlatform/org.eclipse.papyrus.aas.target.target
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde?>
+<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
+<target name="CanvAAS" sequenceNumber="1606237353">
+  <locations>
+    <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+      <unit id="org.eclipse.equinox.p2.user.ui.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.core.resources" version="0.0.0"/>
+      <unit id="org.eclipse.ui.ide" version="0.0.0"/>
+      <unit id="org.eclipse.ui" version="0.0.0"/>
+      <unit id="org.eclipse.jst.server_adapters.feature.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.m2e.sdk.feature.feature.group" version="0.0.0"/>
+      <unit id="org.eclipse.uml2.sdk.feature.group" version="0.0.0"/>
+      <repository id="eclipse" location="https://download.eclipse.org/releases/2020-12"/>
+    </location>
+    <location includeMode="planner" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="false" type="InstallableUnit">
+      <unit id="org.eclipse.papyrus.sdk.feature.feature.group" version="0.0.0"/>
+      <repository id="papyrus_nightly" location="https://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/master"/>
+    </location>
+  </locations>
+</target>
diff --git a/releng/targetPlatform/org.eclipse.papyrus.aas.target.tpd b/releng/targetPlatform/org.eclipse.papyrus.aas.target.tpd
new file mode 100644
index 0000000..8fa668c
--- /dev/null
+++ b/releng/targetPlatform/org.eclipse.papyrus.aas.target.tpd
@@ -0,0 +1,17 @@
+target "CanvAAS" with requirements source
+
+/*** Manual Updates ***/
+
+location eclipse "https://download.eclipse.org/releases/2020-12" {
+	org.eclipse.equinox.p2.user.ui.feature.group lazy
+	org.eclipse.core.resources lazy
+	org.eclipse.ui.ide lazy
+	org.eclipse.ui lazy
+	org.eclipse.jst.server_adapters.feature.feature.group lazy
+	org.eclipse.m2e.sdk.feature.feature.group lazy
+	org.eclipse.uml2.sdk.feature.group lazy
+}
+
+location papyrus_nightly "https://download.eclipse.org/modeling/mdt/papyrus/updates/nightly/master" {
+	org.eclipse.papyrus.sdk.feature.feature.group lazy
+}
diff --git a/releng/targetPlatform/pom.xml b/releng/targetPlatform/pom.xml
new file mode 100755
index 0000000..1f57b35
--- /dev/null
+++ b/releng/targetPlatform/pom.xml
@@ -0,0 +1,15 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.eclipse.papyrus.aas</groupId>
+		<artifactId>org.eclipse.papyrus.aas-releng</artifactId>
+		<version>0.0.1-SNAPSHOT</version>
+	</parent>
+
+	<artifactId>org.eclipse.papyrus.aas.target</artifactId>
+	<packaging>eclipse-target-definition</packaging>
+</project>